Main Page | Compound List | File List | Compound Members | File Members | Related Pages

liblogging.h

Go to the documentation of this file.
00001 
00042 #ifndef __LIB3195_LIBLOGGING_H_INCLUDED__
00043 #define __LIB3195_LIBLOGGING_H_INCLUDED__ 1
00044 #include <stdio.h> /* debug only */
00045 
00046 #include "config.h"
00047 #ifdef __cplusplus
00048 extern "C" {
00049 #endif
00050 
00054 #define LIBLOGGING_VERSION_MAJOR 0
00055 #define LIBLOGGING_VERSION_MINOR 6
00056 #define LIBLOGGING_VERSION_SUBMINOR 0
00057 
00058 
00059 enum srRetVal_                          
00060 {
00061         SR_RET_ERR = -1,                
00062         SR_RET_REMAIN_WIN_TOO_SMALL = -2,       
00063         SR_RET_INVALID_HANDLE = -3,     
00068         SR_RET_INVALID_DESTRUCTOR = -4, 
00069         SR_RET_NOT_FOUND = - 5,         
00071     SR_RET_OUT_OF_MEMORY = -6,  
00072     SR_RET_XML_INVALID_PARAMTAG = -7,   
00073     SR_RET_XML_INVALID_TERMINATOR = -8, 
00074         SR_RET_XML_MALFORMED = -9,      
00075         SR_RET_MISSING_CLOSE_BRACE = -10,       
00076         SR_RET_XML_MISSING_CLOSETAG = -11,      
00077         SR_RET_XML_MISSING_OPENTAG = -12,       
00078         SR_RET_XML_TAG_MISMATCH = -13,  
00079         SR_RET_XML_INVALID_CDATA_HDR = -14, 
00080         SR_RET_XML_INVALID_CDATA_TRAIL = -14, 
00081         SR_RET_PEER_NONOK_RESPONSE = -15, 
00082         SR_RET_PEER_INVALID_PROFILE = -16, 
00083         SR_RET_PEER_NO_URI = -17,       
00084         SR_RET_PEER_NO_PROFILE = -18,
00085         SR_RET_PEER_NO_GREETING = -19, 
00086         SR_RET_PEER_DOESNT_SUPPORT_PROFILE = -20, 
00087         SR_RET_INVALID_FRAME_STATE = -21,       
00088         SR_RET_PROFILE_ALREADY_SET = -22,       
00089         SR_RET_INVALID_CHAN_STATE = -23,        
00090         SR_RET_INVALID_GREETING = -24,          
00091         SR_RET_INVALID_CHAN0_MESG = -25,        
00092         SR_RET_START_MISSING_NUMBER = -26,      
00093         SR_RET_START_INVALID_NUMBER = -27,      
00094         SR_RET_START_EXISTING_NUMBER = -28,     
00095         SR_RET_NO_VALUE = -29,                          
00096         SR_RET_START_EVEN_NUMBER = -30,         
00097         SR_RET_NO_PROFILE_RQSTD = -31,          
00098         SR_RET_WARNING_START_NO_PROFMATCH = -32,
00099         SR_RET_ERR_EVENT_HANDLER_MISSING = -33,
00100         SR_RET_ACKNO_ZERO = -34,                        
00101         SR_RET_CHAN_DOESNT_EXIST = -35,         
00102         SR_RET_ALREADY_LISTENING = -36,         
00103         SR_RET_INVALID_OPTVAL = -37,            
00104         SR_RET_INVALID_LIB_OPTION = -38,        
00105         SR_RET_NULL_POINTER_PROVIDED = -39,     
00106         SR_RET_PROPERTY_NOT_AVAILABLE = -40,
00107         SR_RET_UNSUPPORTED_FORMAT = -41,        
00108         SR_RET_UNALLOCATABLE_BUFFER = -42,      
00109         SR_RET_PRIO_OUT_OF_RANGE = -43,         
00110         SR_RET_FACIL_OUT_OF_RANGE = -44,        
00111         SR_RET_INVALID_TAG = -45,                       
00112         SR_RET_NULL_MSG_PROVIDED = -46,         
00113         SR_RET_ERR_RECEIVE = -47,                       
00114         SR_RET_UNEXPECTED_HDRCMD = -48,         
00115         SR_RET_PEER_INDICATED_ERROR = -49,      
00116         SR_RET_PROVIDED_BUFFER_TOO_SMALL = -50,
00117         SR_RET_INVALID_PARAM = -51,                     
00119         /* socket error codes */
00120         SR_RET_SOCKET_ERR = -1001,                      
00121         SR_RET_CANT_BIND_SOCKET = -1002,        
00122         SR_RET_INVALID_SOCKET = -1003,          
00123         SR_RET_CONNECTION_CLOSED = -1004,       
00124         SR_RET_INVALID_OS_SOCKETS_VERSION = -1005,
00125         SR_RET_CAN_NOT_INIT_SOCKET = -1006,     
00126         SR_RET_UXDOMSOCK_CHMOD_ERR = -1007,     
00128         /* BEEP frame format & other errors */
00129         SR_RET_INVALID_HDRCMD = -2001,                  
00130         SR_RET_INVALID_WAITING_SP_CHAN = -2002, 
00131         SR_RET_INVALID_CHANNO = -2003,                  
00132         SR_RET_INVALID_WAITING_SP_MSGNO = -2004,
00133         SR_RET_INVALID_IN_MSGNO = -2005,                
00134         SR_RET_INVALID_WAITING_SP_MORE = -2006, 
00135         SR_RET_INVALID_IN_MORE = -2007,                 
00136         SR_RET_INVALID_WAITING_SP_SEQNO = -2008,
00137         SR_RET_INVALID_IN_SEQNO = -2009,                
00138         SR_RET_INVALID_WAITING_SP_SIZE = -2010, 
00139         SR_RET_INVALID_IN_SIZE = -2011,                 
00140         SR_RET_INVALID_WAITING_SP_ANSNO = -2012,
00141         SR_RET_INVALID_IN_ANSNO = -2013,                
00142         SR_RET_INVALID_WAITING_HDRCR = -2014,   
00143         SR_RET_INVALID_WAITING_HDRLF = -2015,   
00144         SR_RET_INVALID_IN_PAYLOAD = -2016,              
00145         SR_RET_INVALID_WAITING_END1 = -2017,    
00146         SR_RET_INVALID_WAITING_END2 = -2018,    
00147         SR_RET_INVALID_WAITING_END3 = -2019,    
00148         SR_RET_INVALID_WAITING_END4 = -2020,    
00149         SR_RET_INVALID_WAITING_END5 = -2021,    
00150         SR_RET_INVALID_WAITING_SP_ACKNO = -2022,
00151         SR_RET_INVALID_WAITING_SP_WINDOW = -2023,
00152         SR_RET_INAPROPRIATE_HDRCMD = -2024,             
00153         SR_RET_OVERSIZED_FRAME = -2025,                 
00155         /* and finally the OK state... */
00156         SR_RET_OK = 0                   
00157 };
00159 typedef enum srRetVal_ srRetVal;
00160 
00161 
00162 typedef unsigned SBchannel; 
00163 typedef unsigned SBseqno; 
00164 typedef unsigned SBansno; 
00165 typedef unsigned SBsize; 
00166 typedef unsigned SBmsgno; 
00167 typedef unsigned SBackno; 
00168 typedef unsigned SBwindow; 
00178 enum srObjectID
00179 {
00180         OID_Freed = -1,         
00184         OID_Invalid = 0,        
00185         /* The 0xCDAB is a debug aid. It helps us find object IDs in memory
00186          * dumps (on X86, this is ABCD in the dump ;)
00187          * If you are on an embedded device and you would like to save space
00188          * make them 1 byte only.
00189          */
00190         OIDsbFram = 0xCDAB0001,
00191         OIDsbChan = 0xCDAB0002,
00192         OIDsbMesg = 0xCDAB0003,
00193         OIDsbSess = 0xCDAB0004,
00194         OIDsbSock = 0xCDAB0005,
00195         OIDsbProf = 0xCDAB0006,
00196         OIDsrAPI  = 0xCDAB0007,
00197         OIDsrSLMG = 0xCDAB0008,
00198         OIDsbNVTR = 0xCDAB0009,
00199         OIDsbNVTE = 0xCDAB000A,
00200         OIDsbStrB = 0xCDAB000B,
00201         OIDsbLstn = 0xCDAB000C,
00202         OIDsbPSSR = 0xCDAB000D,
00203         OIDsbPSRC = 0xCDAB000E
00204 };
00205 typedef enum srObjectID srObjID;
00206 
00207 
00212 enum srOPTION3195Profiles_
00213 {
00214         USE_3195_PROFILE_ANY = 1,
00215         USE_3195_PROFILE_RAW_ONLY = 2,
00216         USE_3195_PROFILE_COOKED_ONLY = 3
00217 };
00218 typedef enum srOPTION3195Profiles_ srOPTION3195Profiles;
00219 
00224 enum srOPTION
00225 {
00226         srOPTION_INVALID = 0,           
00237         srOPTION_CALL_OS_SOCKET_INITIALIZER = 1,
00245          srOPTION_3195_ALLOWED_CLIENT_PROFILES = 2,
00250          srOPTION_LISTEN_UDP = 3,
00255      srOPTION_UPD_LISTENPORT = 4,
00261      srOPTION_LISTEN_UXDOMSOCK = 5,
00266      srOPTION_UXDOMSOCK_LISTENAME = 6,
00272      srOPTION_LISTEN_BEEP = 7,
00277      srOPTION_BEEP_LISTENPORT = 8
00278 };
00279 typedef enum srOPTION SRoption;
00280 
00287 #if DEBUGLEVEL > 0
00288 #define SRFREEOBJ(x) {(x)->OID = OID_Freed; free(x);}
00289 #else
00290 #define SRFREEOBJ(x) free(x)
00291 #endif
00292 
00297 enum BEEPHdrID_ 
00298 {
00299         BEEPHDR_UNKNOWN = 0,
00300         BEEPHDR_ANS,
00301         BEEPHDR_ERR,
00302     BEEPHDR_MSG,
00303         BEEPHDR_NUL,
00304         BEEPHDR_RPY,
00305         BEEPHDR_SEQ
00306 };
00307 typedef enum BEEPHdrID_ BEEPHdrID;
00308 
00309 
00310 #define BEEP_DEFAULT_MIME_HDR "Content-type: application/beep+xml\r\n"
00311 
00312 #ifdef __cplusplus
00313 }
00314 #endif
00315 #include "srAPI.h"
00316 
00317 #endif

Generated on Mon Oct 3 12:29:55 2005 for liblogging by doxygen 1.3.2