ReactOS 0.4.15-dev-7961-gdcf9eb0
socket.c
Go to the documentation of this file.
1#include <rosdhcp.h>
2
4
5void SocketInit() {
7}
8
10 struct dhcp_packet *p,
11 size_t size,
12 struct in_addr addr,
13 struct sockaddr_in *broadcast,
14 struct hardware *hardware ) {
15 int result;
16
17 if (size > INT_MAX)
18 return WSAEMSGSIZE;
19
20 result =
21 sendto( ip->wfdesc, (char *)p, (int)size, 0,
22 (struct sockaddr *)broadcast, sizeof(*broadcast) );
23
24 if (result < 0) {
25 note ("send_packet: %x", result);
27 note ("send_packet: please consult README file%s",
28 " regarding broadcast address.");
29 }
30
31 return result;
32}
33
35 unsigned char *packet_data,
36 size_t packet_len,
37 struct sockaddr_in *dest,
38 struct hardware *hardware ) {
39 int recv_addr_size = sizeof(*dest);
40 int result;
41
42 if (packet_len > INT_MAX)
43 return WSAEMSGSIZE;
44
45 result =
46 recvfrom (ip -> rfdesc, (char *)packet_data, (int)packet_len, 0,
47 (struct sockaddr *)dest, &recv_addr_size );
48 return result;
49}
int note(char *format,...)
Definition: util.c:12
INT WSAAPI recvfrom(IN SOCKET s, OUT CHAR FAR *buf, IN INT len, IN INT flags, OUT LPSOCKADDR from, IN OUT INT FAR *fromlen)
Definition: recv.c:87
INT WSAAPI sendto(IN SOCKET s, IN CONST CHAR FAR *buf, IN INT len, IN INT flags, IN CONST struct sockaddr *to, IN INT tolen)
Definition: send.c:82
#define AF_INET
Definition: tcpip.h:117
GLsizeiptr size
Definition: glext.h:5919
GLenum const GLvoid * addr
Definition: glext.h:9621
GLfloat GLfloat p
Definition: glext.h:8902
GLuint64EXT * result
Definition: glext.h:11304
#define INT_MAX
Definition: limits.h:40
static char * dest
Definition: rtl.c:135
int ssize_t
Definition: rosdhcp.h:48
SOCKET ServerSocket
Definition: socket.c:3
void SocketInit()
Definition: socket.c:5
ssize_t receive_packet(struct interface_info *ip, unsigned char *packet_data, size_t packet_len, struct sockaddr_in *dest, struct hardware *hardware)
Definition: socket.c:34
ssize_t send_packet(struct interface_info *ip, struct dhcp_packet *p, size_t size, struct in_addr addr, struct sockaddr_in *broadcast, struct hardware *hardware)
Definition: socket.c:9
SOCKET WSAAPI socket(IN INT af, IN INT type, IN INT protocol)
Definition: socklife.c:143
Definition: tcpip.h:126
Definition: dhcpd.h:62
#define WSAEMSGSIZE
Definition: winerror.h:1953
#define WSAENETUNREACH
Definition: winerror.h:1964
#define SOCK_DGRAM
Definition: winsock.h:336
UINT_PTR SOCKET
Definition: winsock.h:47