2 * DiffServ classname <-> DiffServ codepoint mapping functions.
4 * The latest list of the mappings can be found at:
5 * <http://www.iana.org/assignments/dscp-registry>
7 * This code is released under the GNU GPL v2, 1991
14 #include <iptables_common.h>
18 static struct ds_class
51 class_to_dscp(const char *name)
55 for (i = 0; i < sizeof(ds_classes) / sizeof(struct ds_class); i++) {
56 if (!strncasecmp(name, ds_classes[i].name,
57 strlen(ds_classes[i].name)))
58 return ds_classes[i].dscp;
61 exit_error(PARAMETER_PROBLEM,
62 "Invalid DSCP value `%s'\n", name);
68 dscp_to_name(unsigned int dscp)
72 for (i = 0; i < sizeof(ds_classes) / sizeof(struct ds_class); i++) {
73 if (dscp == ds_classes[i].dscp)
74 return ds_classes[i].name;
78 exit_error(PARAMETER_PROBLEM,
79 "Invalid DSCP value `%d'\n", dscp);