23 #include <sys/varargs.h>
26 #if defined (__CYGWIN32__) || defined (__NetBSD__) || defined (WIN32) || defined (__GLIBC__)
31 # include <winsock2.h>
36 #if !defined ( _BSDTYPES_DEFINED )
43 #define _BSDTYPES_DEFINED
57 #define BAD_HANDLER INVALID_SOCKET
61 #define EINPROGRESS WSAEINPROGRESS
65 #define EWOULDBLOCK WSAEWOULDBLOCK
69 #define EISCONN WSAEISCONN
71 #define ENOTSOCK WSAENOTSOCK
73 #define ECONNREFUSED WSAECONNREFUSED
76 #define ETIMEDOUT WSAETIMEDOUT
81 #define BAD_HANDLER -1
119 myerrno = WSAGetLastError ();
131 WSASetLastError (new_errno_);
178 virtual int log_open (
const char* logfname_,
183 virtual int log_open (
const char* appname_,
184 const char* logfname_,
193 size_t indent_level_,
194 const string& func_name_,
200 size_t indent_level_,
201 const string& func_name_,
206 const string& funcname_,
207 size_t indent_level_,
#define BAD_HANDLER
Sort out WIN32/mingw oddities.
char * format_msg(size_t expected_sz_, const char *fmt_, va_list vap_, bool &release_)
Format and put the message in the buffer.
virtual u_short indent_func_name(ostream &sink_, const string &funcname_, size_t indent_level_, marker_t type_)
virtual int log_close(void)=0
bool group_enabled(Group g_) const
void enable_all_groups(void)
u_short m_indent_step
Indentation step.
int m_tz
Timezone: 0-GMT, 1-Local.
u_long m_groups
Enabled groups.
virtual void log_resync(void)
bool timestamp_enabled(void) const
void disable_all_groups(void)
string m_logfname
Log file name.
static char m_msgbuf[LOGGER_MAXLINE]
Static buffer for formatted message.
void set_indent_step(u_short step_)
void enable_timestamp(void)
virtual int log_msg(Group g_, size_t indent_level_, const string &func_name_, size_t expected_sz_, const char *fmt_, va_list)=0
void disable_groups(u_long g_)
u_short get_indent_step(void) const
void disable_timestamp(void)
void enable_group(Group g_)
static const unsigned int LOGGER_MAXLINE
Maximum length of the formatted message.
void set_timezone(int zone_)
virtual int log_open(u_long groups_)
Open StdErr Logger.
void disable_group(Group g_)
virtual int log_func(Group g_, size_t indent_level_, const string &func_name_, marker_t type_)=0
virtual u_short add_timestamp(ostream &sink_)
void enable_groups(u_long g_)
bool m_tmflg
Timestamp on/off flag.
void set_errno(int new_errno_)
Set error number in a portable way.
@ ALL
All messages: library + application
bool is_valid_handler(handler_t socket_)
Detect socket() error in a portable way.
void disable_handler(handler_t &socket_)
Set socket descriptor to invalid value in a portable way.
int get_errno()
Fetch error number in a portable way.