Annotation of mqtt/inc/rtlm.h, revision 1.5

1.4       misho       1: /*************************************************************************
                      2: * (C) 2011 AITNET ltd - Sofia/Bulgaria - <misho@aitbg.com>
                      3: *  by Michael Pounov <misho@openbsd-bg.org>
                      4: *
                      5: * $Author: misho $
1.5     ! misho       6: * $Id: rtlm.h,v 1.4.4.2 2017/10/08 22:48:43 misho Exp $
1.4       misho       7: *
                      8: **************************************************************************
                      9: The ELWIX and AITNET software is distributed under the following
                     10: terms:
                     11: 
                     12: All of the documentation and software included in the ELWIX and AITNET
                     13: Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
                     14: 
1.5     ! misho      15: Copyright 2004 - 2017
1.4       misho      16:        by Michael Pounov <misho@elwix.org>.  All rights reserved.
                     17: 
                     18: Redistribution and use in source and binary forms, with or without
                     19: modification, are permitted provided that the following conditions
                     20: are met:
                     21: 1. Redistributions of source code must retain the above copyright
                     22:    notice, this list of conditions and the following disclaimer.
                     23: 2. Redistributions in binary form must reproduce the above copyright
                     24:    notice, this list of conditions and the following disclaimer in the
                     25:    documentation and/or other materials provided with the distribution.
                     26: 3. All advertising materials mentioning features or use of this software
                     27:    must display the following acknowledgement:
                     28: This product includes software developed by Michael Pounov <misho@elwix.org>
                     29: ELWIX - Embedded LightWeight unIX and its contributors.
                     30: 4. Neither the name of AITNET nor the names of its contributors
                     31:    may be used to endorse or promote products derived from this software
                     32:    without specific prior written permission.
                     33: 
                     34: THIS SOFTWARE IS PROVIDED BY AITNET AND CONTRIBUTORS ``AS IS'' AND
                     35: ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     36: IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     37: ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     38: FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     39: DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     40: OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     41: HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     42: LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     43: OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     44: SUCH DAMAGE.
                     45: */
1.2       misho      46: #ifndef __RTLM_H
                     47: #define __RTLM_H
                     48: 
                     49: 
                     50: void mqttLog(const char *, ...);
                     51: 
1.3       misho      52: void *mqttLoadRTLM(cfg_root_t*, int);
                     53: void mqttUnloadRTLM(void*);
1.2       misho      54: 
1.5     ! misho      55: int mqttMkDir(cfg_root_t *);
1.2       misho      56: 
                     57: 
                     58: struct tagCallbacks {
                     59:        /* mqtt_acc.so */
1.3       misho      60:        void *(*OpenACC)(cfg_root_t *);
1.2       misho      61:        void (*CloseACC)(void *);
1.3       misho      62:        int (*LoginACC)(cfg_root_t *, void *, const char*, const char*);
1.2       misho      63: 
                     64:        /* mqtt_pub.so */
1.3       misho      65:        void *(*OpenPUB)(cfg_root_t *);
1.2       misho      66:        void (*ClosePUB)(void *);
1.5     ! misho      67:        int (*InitSessPUB)(cfg_root_t *, void *, const char*, const char*, const char*, int, ...);
1.3       misho      68:        int (*FiniSessPUB)(cfg_root_t *, void *, const char*, const char*, const char*);
                     69:        int (*ChkSessPUB)(cfg_root_t *, void *, const char*, const char*, const char*);
                     70: 
                     71:        int (*WritePUB_topic)(cfg_root_t *, void *, const char*, u_short, const char*, void *, int,  
                     72:                        const char*, const char*, char, char);
                     73:        mqtt_subscr_t *(*ReadPUB_topic)(cfg_root_t *, void *, const char*, const char*, char);
                     74:        int (*DeletePUB_topic)(cfg_root_t *, void *, const char*, u_short, const char*, const char*, const char*, char);
                     75:        int (*WipePUB_topic)(cfg_root_t *, void *, const char*, const char*, char);
                     76: 
                     77:        int (*WritePUB_subscribe)(cfg_root_t *, void *, const char*, u_short, const char*, const char*, const char*, char);
                     78:        mqtt_subscr_t *(*ReadPUB_subscribe)(cfg_root_t *, void *, const char*, const char*);
                     79:        int (*DeletePUB_subscribe)(cfg_root_t *, void *, const char*, const char*, const char*, const char*);
1.2       misho      80: 
                     81:        /* mqtt_log.so */
1.3       misho      82:        void *(*OpenLOG)(cfg_root_t *);
1.2       misho      83:        void (*CloseLOG)(void *);
                     84:        int (*LOG)(void *, const char *, ...);
                     85: };
                     86: 
                     87: 
                     88: #endif

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>