Rudiments
|
00001 // Copyright (c) 2002 David Muse 00002 // See the COPYING file for more information. 00003 00004 #ifndef RUDIMENTS_UNIXSERVERSOCKET_H 00005 #define RUDIMENTS_UNIXSERVERSOCKET_H 00006 00007 #include <rudiments/private/unixserversocketincludes.h> 00008 00009 #ifdef RUDIMENTS_NAMESPACE 00010 namespace rudiments { 00011 #endif 00012 00013 class unixserversocketprivate; 00014 00032 class RUDIMENTS_DLLSPEC unixserversocket : public serversocket, private unixsocketutil { 00033 public: 00034 00036 unixserversocket(); 00037 00040 unixserversocket(const unixserversocket &u); 00041 00044 unixserversocket &operator=(const unixserversocket &u); 00045 00047 virtual ~unixserversocket(); 00048 00060 bool listen(const char *filename, 00061 mode_t mask, 00062 int32_t backlog); 00063 00064 00065 00072 bool initialize(const char *filename, mode_t mask); 00073 00077 bool bind(); 00078 00084 bool listen(int32_t backlog); 00085 00086 00092 filedescriptor *accept(); 00093 00094 #include <rudiments/private/unixserversocket.h> 00095 }; 00096 00097 #ifdef RUDIMENTS_NAMESPACE 00098 } 00099 #endif 00100 00101 #endif