ns-3 Direct Code Execution
Home
Tutorials ▼
Docs ▼
Wiki
Manual
Develop ▼
API
Bugs
API
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
linux-socket-fd.h
Go to the documentation of this file.
1
#ifndef LINUX_SOCKET_FD_H
2
#define LINUX_SOCKET_FD_H
3
4
#include "
unix-fd.h
"
5
#include "ns3/ptr.h"
6
7
extern
"C"
{
8
struct
SimSocket;
9
}
10
11
namespace
ns3 {
12
13
class
LinuxSocketFdFactory;
14
15
class
Waiter;
16
17
class
LinuxSocketFd
:
public
UnixFd
18
{
19
public
:
20
LinuxSocketFd
(Ptr<LinuxSocketFdFactory> factory,
struct
SimSocket *socket);
21
virtual
~LinuxSocketFd
();
22
23
virtual
int
Close
(
void
);
24
virtual
ssize_t
Write
(
const
void
*buf,
size_t
count);
25
virtual
ssize_t
Read
(
void
*buf,
size_t
count);
26
virtual
ssize_t
Recvmsg
(
struct
msghdr *msg,
int
flags);
27
virtual
ssize_t
Sendmsg
(
const
struct
msghdr *msg,
int
flags);
28
virtual
bool
Isatty
(
void
)
const
;
29
virtual
int
Setsockopt
(
int
level,
int
optname,
30
const
void
*optval, socklen_t optlen);
31
virtual
int
Getsockopt
(
int
level,
int
optname,
32
void
*optval, socklen_t *optlen);
33
virtual
int
Getsockname
(
struct
sockaddr *name, socklen_t *namelen);
34
virtual
int
Getpeername
(
struct
sockaddr *name, socklen_t *namelen);
35
virtual
int
Ioctl
(
int
request,
char
*argp);
36
virtual
int
Bind
(
const
struct
sockaddr *my_addr, socklen_t addrlen);
37
virtual
int
Connect
(
const
struct
sockaddr *my_addr, socklen_t addrlen);
38
virtual
int
Listen
(
int
backlog);
39
virtual
int
Shutdown
(
int
how);
40
virtual
int
Accept
(
struct
sockaddr *my_addr, socklen_t *addrlen);
41
virtual
void
*
Mmap
(
void
*start,
size_t
length,
int
prot,
int
flags, off64_t offset);
42
virtual
off64_t
Lseek
(off64_t offset,
int
whence);
43
virtual
int
Fxstat
(
int
ver, struct ::stat *buf);
44
virtual
int
Fxstat64
(
int
ver, struct ::stat64 *buf);
45
virtual
int
Fcntl
(
int
cmd,
unsigned
long
arg);
46
virtual
int
Settime
(
int
flags,
47
const
struct
itimerspec *new_value,
48
struct
itimerspec *old_value);
49
virtual
int
Gettime
(
struct
itimerspec *cur_value)
const
;
50
51
virtual
bool
HangupReceived
(
void
)
const
;
52
53
virtual
int
Poll
(
PollTable
* ptable);
54
virtual
int
Ftruncate
(off_t length);
55
56
void
PollEvent
(
int
flag);
57
58
59
private
:
60
Ptr<LinuxSocketFdFactory>
m_factory
;
61
struct
SimSocket *
m_socket
;
62
int
m_statusFlags
;
63
void
*
m_kernelPollCtx
;
64
};
65
66
}
// namespace ns3
67
68
#endif
/* LINUX_SOCKET_FD_H */
model
linux-socket-fd.h
Generated on Fri Aug 30 2013 13:57:55 for ns-3-dce by
1.8.1.2