diff options
author | Mehak Mahajan <mmahajan@nicira.com> | 2012-03-10 15:58:10 -0800 |
---|---|---|
committer | Mehak Mahajan <mmahajan@nicira.com> | 2012-03-23 18:13:08 -0700 |
commit | f125905cdd3dc0339ad968c0a70128807884b400 (patch) | |
tree | ab389d41b625f2d9e5c820bdac80ec2df825ff8a /lib/socket-util.h | |
parent | 11460e2316b88f0bd0ea0005d94338d800ea16bd (diff) |
Allow configuring DSCP on controller and manager connections.
The changes allow the user to specify a separate dscp value for the
controller connection and the manager connection. The value will take
effect on resetting the connections. If no value is specified a default
value of 192 is chosen for each of the connections.
Feature #10074
Requested-by: Rajiv Ramanathan <rramanathan@nicira.com>
Signed-off-by: Mehak Mahajan <mmahajan@nicira.com>
Diffstat (limited to 'lib/socket-util.h')
-rw-r--r-- | lib/socket-util.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/socket-util.h b/lib/socket-util.h index 422cea9c..32c61e78 100644 --- a/lib/socket-util.h +++ b/lib/socket-util.h @@ -23,6 +23,7 @@ #include <netinet/in.h> #include <stdbool.h> #include "openvswitch/types.h" +#include <netinet/ip.h> int set_nonblocking(int fd); int get_max_fds(void); @@ -46,12 +47,12 @@ int get_null_fd(void); bool inet_parse_active(const char *target, uint16_t default_port, struct sockaddr_in *sinp); int inet_open_active(int style, const char *target, uint16_t default_port, - struct sockaddr_in *sinp, int *fdp); + struct sockaddr_in *sinp, int *fdp, uint8_t dscp); bool inet_parse_passive(const char *target, int default_port, struct sockaddr_in *sinp); int inet_open_passive(int style, const char *target, int default_port, - struct sockaddr_in *sinp); + struct sockaddr_in *sinp, uint8_t dscp); int read_fully(int fd, void *, size_t, size_t *bytes_read); int write_fully(int fd, const void *, size_t, size_t *bytes_written); @@ -63,4 +64,14 @@ void xpipe(int fds[2]); char *describe_fd(int fd); +/* Default value of dscp bits for connection between controller and manager. + * Value of IPTOS_PREC_INTERNETCONTROL = 0xc0 which is defined + * in <netinet/ip.h> is used. */ +#define DSCP_DEFAULT IPTOS_PREC_INTERNETCONTROL + +/* Invalid dscp value. If the dscp value will not be used, the dscp value + * passed must be invalid. Set to 0xFF as the TOS bits passed can only be + * 6 bits. */ +#define DSCP_INVALID 0xFF + #endif /* socket-util.h */ |