(file) Return to Socket.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

 1 karl  1.15 //%2006////////////////////////////////////////////////////////////////////////
 2 mike  1.2  //
 3 karl  1.10 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
 5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
 6 karl  1.9  // IBM Corp.; EMC Corporation, The Open Group.
 7 karl  1.10 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
 8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
 9 karl  1.11 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
11 karl  1.15 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12            // EMC Corporation; Symantec Corporation; The Open Group.
13 mike  1.2  //
14            // Permission is hereby granted, free of charge, to any person obtaining a copy
15 kumpf 1.4  // of this software and associated documentation files (the "Software"), to
16            // deal in the Software without restriction, including without limitation the
17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18 mike  1.2  // sell copies of the Software, and to permit persons to whom the Software is
19            // furnished to do so, subject to the following conditions:
20 karl  1.15 // 
21 kumpf 1.4  // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22 mike  1.2  // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24 kumpf 1.4  // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27 mike  1.2  // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29            //
30            //==============================================================================
31            //
32            //%/////////////////////////////////////////////////////////////////////////////
33            
34            #ifndef Pegasus_Socket_h
35            #define Pegasus_Socket_h
36            
37 mike  1.17 #include <cctype>
38 mike  1.18 #include <Pegasus/Common/Network.h>
39 mike  1.2  #include <Pegasus/Common/Config.h>
40 mike  1.17 #include <Pegasus/Common/Linkage.h>
41            
42            #ifdef PEGASUS_OS_OS400
43 mike  1.20 #   include <Pegasus/Common/EBCDIC_OS400.h>
44 mday  1.6  #endif
45 mike  1.17 
46 mday  1.6  #ifdef PEGASUS_OS_ZOS
47            #   include <string.h>  // added by rk for memcpy
48            #endif
49 mike  1.2  
50            PEGASUS_NAMESPACE_BEGIN
51            
52 mike  1.16 class Socket
53 mike  1.2  {
54 mike  1.17 public:
55 mike  1.2  
56 mike  1.17     static Sint32 read(SocketHandle socket, void* ptr, Uint32 size);
57 david.dillard 1.12 
58 mike          1.17     static Sint32 write(SocketHandle socket, const void* ptr, Uint32 size);
59 mike          1.2  
60 marek         1.19     static Sint32 timedWrite(SocketHandle socket,
61                                                 const void* ptr,
62                                                 Uint32 size,
63                                                 Uint32 socketWriteTimeout);
64                    
65 mike          1.17     static void close(SocketHandle socket);
66 mike          1.2  
67 mike          1.17     static void enableBlocking(SocketHandle socket);
68 mike          1.2  
69 mike          1.17     static void disableBlocking(SocketHandle socket);
70 mike          1.2  
71 mike          1.17     static void initializeInterface();
72 david.dillard 1.12 
73 mike          1.17     static void uninitializeInterface();
74 mike          1.2  
75 thilo.boehm   1.21     static SocketHandle createSocket(int domain, int type, int protocol);
76                    
77 mike          1.17 private:
78                        Socket();
79 mday          1.6  };
80 mike          1.2  
81                    PEGASUS_NAMESPACE_END
82                    
83                    #endif /* Pegasus_Socket_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2