My Project
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
socketops.h
Go to the documentation of this file.
1 /*
2 START OF LICENSE STUB
3  DeDOS: Declarative Dispersion-Oriented Software
4  Copyright (C) 2017 University of Pennsylvania, Georgetown University
5 
6  This program is free software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 END OF LICENSE STUB
19 */
20 #ifndef SOCKET_OPS_H_
21 #define SOCKET_OPS_H_
22 
23 struct sock_settings {
24  int port;
25  int domain;
26  int type;
27  int protocol;
28  unsigned long bind_ip;
31 };
32 
34 
35 int init_socket(struct sock_settings *settings);
36 int read_socket(int fd, char *buf, int *buf_size);
37 int write_socket(int fd, char *buf, int *buf_size);
38 #endif
int reuse_port
Definition: socketops.h:30
int reuse_addr
Definition: socketops.h:29
int init_socket(struct sock_settings *settings)
Definition: socketops.c:43
unsigned long bind_ip
Definition: socketops.h:28
struct sock_settings * webserver_sock_settings(int port)
Definition: socketops.c:36
int write_socket(int fd, char *buf, int *buf_size)
Definition: socketops.c:99
int read_socket(int fd, char *buf, int *buf_size)
Definition: socketops.c:84