Log message:
Added TOS twiddling to Kev's "feature" subsystem. It compiles, who knows
if it will run...
git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@346
c9e4aea6-c8fd-4c43-8297-
357d70d61c8c
+2000-12-17 Isomer <Isomer@coders.net>
+ * ircd/listener.c: added support for TOS twiddling as a 'feature'.
+
2000-12-17 Isomer <Isomer@coders.net>
* ircd/os_linux.c: add TOS stuffs
all: build
-.PHONY: server build depend install config update diff patch export
+.PHONY: server build depend install config update diff patch export update
# Some versions of make give a warning when this is empty:
.SUFFIXES: .dummy
@test "`indent --version`" = "GNU indent 2.1.0" || \
(echo "You need GNU indent 2.1.0; See doc/readme.indent" && exit -1);
VERSION_CONTROL=none indent include/*.h ircd/*.c
+
+# do a cvs update
+update:
+ cvs -z9 update
\ No newline at end of file
FEAT_SHOW_ALL_INVISIBLE_USERS,
FEAT_UNLIMIT_OPER_QUERY,
FEAT_LOCAL_KILL_ONLY,
+ FEAT_TOS_SERVER,
+ FEAT_TOS_CLIENT,
FEAT_CONFIG_OPERCMDS,
FEAT_OPER_KILL,
F_B(SHOW_ALL_INVISIBLE_USERS, 1),
F_B(UNLIMIT_OPER_QUERY, 0),
F_B(LOCAL_KILL_ONLY, 0),
+ F_B(TOS_SERVER,0x08),
+ F_B(TOS_CLIENT,0x08),
F_B(CONFIG_OPERCMDS, 1), /* XXX change default before release */
F_B(OPER_KILL, 1),
#include "client.h"
#include "ircd.h"
#include "ircd_alloc.h"
+#include "ircd_features.h"
#include "ircd_osdep.h"
#include "ircd_reply.h"
#include "ircd_string.h"
#define INADDR_NONE ((unsigned int) 0xffffffff)
#endif
-int tos_server = 0x08; // Low delay
-int tos_client = 0x08; // Low delay
-
struct Listener* ListenerPollList = 0;
static struct Listener* make_listener(int port, struct in_addr addr)
/*
* Set the TOS bits - this is nonfatal if it doesn't stick.
*/
- if (!os_set_tos(fd,(listener->server) ? tos_server : tos_client)) {
+ if (!os_set_tos(fd,feature_int((listener->server)?FEAT_TOS_SERVER : FEAT_TOS_CLIENT))) {
report_error(TOS_ERROR_MSG, get_listener_name(listener), errno);
}
listener->fd = fd;