version 1.1.1.1, 2021/03/17 00:36:46
|
version 1.1.1.2, 2023/09/27 11:14:54
|
Line 90 const char * iptos2str(int iptos);
|
Line 90 const char * iptos2str(int iptos);
|
#ifndef IPTOS_DSCP_EF |
#ifndef IPTOS_DSCP_EF |
# define IPTOS_DSCP_EF 0xb8 |
# define IPTOS_DSCP_EF 0xb8 |
#endif /* IPTOS_DSCP_EF */ |
#endif /* IPTOS_DSCP_EF */ |
|
#ifndef IPTOS_DSCP_VA |
|
# define IPTOS_DSCP_VA 0xb0 |
|
#endif /* IPTOS_DSCP_VA */ |
|
|
static const struct { |
static const struct { |
const char *name; |
const char *name; |
Line 116 static const struct {
|
Line 119 static const struct {
|
{ "cs6", IPTOS_DSCP_CS6 }, |
{ "cs6", IPTOS_DSCP_CS6 }, |
{ "cs7", IPTOS_DSCP_CS7 }, |
{ "cs7", IPTOS_DSCP_CS7 }, |
{ "ef", IPTOS_DSCP_EF }, |
{ "ef", IPTOS_DSCP_EF }, |
|
{ "va", IPTOS_DSCP_VA }, |
{ "lowdelay", IPTOS_LOWDELAY }, |
{ "lowdelay", IPTOS_LOWDELAY }, |
{ "throughput", IPTOS_THROUGHPUT }, |
{ "throughput", IPTOS_THROUGHPUT }, |
{ "reliability", IPTOS_RELIABILITY }, |
{ "reliability", IPTOS_RELIABILITY }, |
Line 136 parse_qos(const char *cp)
|
Line 140 parse_qos(const char *cp)
|
return ipqos[i].value; |
return ipqos[i].value; |
} |
} |
/* Try parsing as an integer */ |
/* Try parsing as an integer */ |
|
/* Max DSCP value is 2**6 - 1 */ |
val = strtol(cp, &ep, 0); |
val = strtol(cp, &ep, 0); |
if (*cp == '\0' || *ep != '\0' || val < 0 || val > 255) | if (*cp == '\0' || *ep != '\0' || val < 0 || val > 63) |
return -1; |
return -1; |
return val; | return val << 2; |
} |
} |
|
|
const char * |
const char * |