Rudiments: /home/dmuse/src/rudiments/include/rudiments/private/filedescriptor.h Source File

Rudiments

- Main Page
- Classes

filedescriptor.h
1 // Copyright (c) 2002 David Muse
2 // See the COPYING file for more information.
3
4 protected:
5
6 void filedescriptorInit();
7 void filedescriptorClone(const filedescriptor &f);
8
9 virtual ssize_t bufferedRead(void *buf, ssize_t count,
10 int32_t sec, int32_t usec) const;
11 virtual ssize_t bufferedWrite(const void *buf, ssize_t count,
12 int32_t sec, int32_t usec) const;
13 virtual ssize_t safeRead(void *buf, ssize_t count,
14 int32_t sec, int32_t usec) const;
15 virtual ssize_t safeWrite(const void *buf, ssize_t count,
16 int32_t sec, int32_t usec) const;
17 bool setNoDelay(int32_t onoff);
18
19 virtual void *newSSLBIO() const;
20
21 int32_t getSockOpt(int32_t level, int32_t optname,
22 void *optval, socklen_t *optlen);
23 int32_t setSockOpt(int32_t level, int32_t optname,
24 const void *optval, socklen_t optlen);
25
26 virtual ssize_t lowLevelRead(void *buf,
27 ssize_t count) const;
28 virtual ssize_t lowLevelWrite(const void *buf,
29 ssize_t count) const;
30 virtual int32_t lowLevelClose();
31
32 const char *type() const;
33 void type(const char *tp);
34
35 int32_t fd() const;
36 void fd(int32_t filedes);
37
38 void *ctx();
39 void *ssl();
40 int32_t sslresult();
41 void sslresult(int32_t sslrslt);
42
43 private:
44 filedescriptorprivate *pvt;
45
46 public:
47 filedescriptor(int32_t fd);
48 static void *getHandleFromFileDescriptor(int32_t fd);
filedescriptor
Definition: filedescriptor.h:14