]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
[MINOR] add an options field to the listeners
authorWilly Tarreau <w@1wt.eu>
Sun, 28 Oct 2007 16:02:33 +0000 (17:02 +0100)
committerWilly Tarreau <w@1wt.eu>
Sun, 4 Nov 2007 21:42:48 +0000 (22:42 +0100)
include/common/errors.h
include/types/protocols.h
src/dumpstats.c

index 48773109c530faa43b511c9851e2391a7780142b..449f2a873c6794817bebbdf7d8e24b4c9df93df7 100644 (file)
@@ -35,6 +35,7 @@
 #define ERR_WARN       0x08    /* a warning message has been returned */
 #define ERR_ALERT      0x10    /* an alert message has been returned */
 
+#define ERR_CODE       (ERR_RETRYABLE|ERR_FATAL|ERR_ABORT)     /* mask */
 
 #endif /* _COMMON_ERRORS_H */
 
index a2b522239deb46945e4ef095f482b62d4501e230..aef780527e8a21d47584d630b5ab297ba505a856 100644 (file)
 #define LI_READY       3       /* started, listening and enabled */
 #define LI_FULL                4       /* reached its connection limit */
 
+/* listener socket options */
+#define LI_O_NONE      0x0000
+#define LI_O_NOLINGER  0x0001  /* disable linger on this socket */
+
 /* The listener will be directly referenced by the fdtab[] which holds its
  * socket. The listener provides the protocol-specific accept() function to
  * the fdtab.
@@ -47,6 +51,7 @@
 struct listener {
        int fd;                         /* the listen socket */
        int state;                      /* state: NEW, INIT, LISTEN, READY, FULL */
+       int options;                    /* socket options : LI_O_* */
        struct sockaddr_storage addr;   /* the address we listen to */
        struct protocol *proto;         /* protocol this listener belongs to */
        int nbconn;                     /* current number of connections on this listener */
index 4d34c474a11f58d80580ad9fa5b86d25438c3ef1..7126de9c035fc41ed94ea88b2b63e5c2891d892a 100644 (file)
@@ -76,6 +76,7 @@ int stats_parse_global(const char **args, char *err, int errlen)
                memcpy(&global.stats_sock.addr, &su, sizeof(su)); // guaranteed to fit
 
                global.stats_sock.state = LI_INIT;
+               global.stats_sock.options = LI_O_NONE;
                global.stats_sock.accept = uxst_event_accept;
                global.stats_sock.handler = process_uxst_stats;
                global.stats_sock.private = NULL;