00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef ACE_LOCAL_SOCK_H
00015 #define ACE_LOCAL_SOCK_H
00016
00017 #include "ace/pre.h"
00018
00019 #include "ace/ACE_export.h"
00020
00021 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00022 # pragma once
00023 #endif
00024
00025 #if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS)
00026
00027 #include "ace/SOCK.h"
00028
00029 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00030
00031
00032
00033
00034
00035
00036
00037 class ACE_Export ACE_LSOCK
00038 {
00039 public:
00040 #if defined (ACE_HAS_MSG)
00041
00042 ssize_t send_handle (const ACE_HANDLE handle) const;
00043
00044
00045 ssize_t recv_handle (ACE_HANDLE &handles,
00046 char *pbuf = 0,
00047 ssize_t *len = 0) const;
00048 #endif
00049
00050
00051 void dump (void) const;
00052
00053
00054 ACE_ALLOC_HOOK_DECLARE;
00055
00056 protected:
00057
00058
00059
00060 ACE_LSOCK (void);
00061
00062
00063 ACE_LSOCK (ACE_HANDLE handle);
00064
00065
00066 ACE_HANDLE get_handle (void) const;
00067
00068
00069 void set_handle (ACE_HANDLE handle);
00070
00071 private:
00072
00073 ACE_HANDLE aux_handle_;
00074 };
00075
00076 ACE_END_VERSIONED_NAMESPACE_DECL
00077
00078 #if defined (__ACE_INLINE__)
00079 #include "ace/LSOCK.inl"
00080 #endif
00081
00082 #endif
00083 #include "ace/post.h"
00084 #endif