Wed, 08 Feb 2012 20:07:00 +0200
Update version, adapt patch, correct PID writing, correct build on newer
FreeBSD releases, and most importantly introduce new patch to try to
avoid segfault caused by multiple network interfaces with the same (or
no) address. This is common when configuring bridges and tunnels.
michael@541 | 1 | diff -Nau etc/c2s.xml.dist.in.orig etc/c2s.xml.dist.in |
michael@224 | 2 | Index: etc/c2s.xml.dist.in |
michael@541 | 3 | --- etc/c2s.xml.dist.in.orig 2012-05-22 22:27:51.000000000 +0200 |
michael@541 | 4 | +++ etc/c2s.xml.dist.in 2012-08-27 13:44:20.119445160 +0200 |
michael@541 | 5 | @@ -50,13 +50,13 @@ |
michael@224 | 6 | </router> |
michael@224 | 7 | |
michael@224 | 8 | <!-- Log configuration - type is "syslog", "file" or "stdout" --> |
michael@224 | 9 | - <log type='syslog'> |
michael@224 | 10 | + <log type='file'> |
michael@224 | 11 | <!-- If logging to syslog, this is the log ident --> |
michael@224 | 12 | - <ident>jabberd/c2s</ident> |
michael@224 | 13 | + <!-- <ident>jabberd/c2s</ident> --> |
michael@224 | 14 | |
michael@224 | 15 | <!-- If logging to syslog, this is the log facility |
michael@224 | 16 | (local0 - local7) [default: local3] --> |
michael@224 | 17 | - <facility>local3</facility> |
michael@224 | 18 | + <!-- <facility>local3</facility> --> |
michael@224 | 19 | |
michael@224 | 20 | <!-- If logging to file, this is the filename of the logfile --> |
michael@541 | 21 | <!-- |
michael@541 | 22 | @@ -154,7 +154,7 @@ |
michael@541 | 23 | <id password-change='mu' /> --> |
michael@224 | 24 | |
michael@224 | 25 | <!-- IP address to bind to (default: 0.0.0.0) --> |
michael@224 | 26 | - <ip>0.0.0.0</ip> |
michael@224 | 27 | + <ip>127.0.0.1</ip> |
michael@224 | 28 | |
michael@224 | 29 | <!-- Port to bind to, or 0 to disable unencrypted access to the |
michael@224 | 30 | server (default: 5222) --> |
michael@541 | 31 | @@ -370,7 +370,7 @@ |
michael@540 | 32 | <path>@pkglibdir@</path> |
michael@540 | 33 | |
michael@540 | 34 | <!-- Backend module to use --> |
michael@540 | 35 | - <module>sqlite</module> |
michael@540 | 36 | + <module>db</module> |
michael@540 | 37 | |
michael@540 | 38 | <!-- Available authentication mechanisms --> |
michael@540 | 39 | <mechanisms> |
michael@541 | 40 | diff -Nau etc/router.xml.dist.in.orig etc/router.xml.dist.in |
michael@224 | 41 | Index: etc/router.xml.dist.in |
michael@541 | 42 | --- etc/router.xml.dist.in.orig 2012-05-04 18:24:36.000000000 +0200 |
michael@541 | 43 | +++ etc/router.xml.dist.in 2012-08-27 13:47:20.357743449 +0200 |
michael@541 | 44 | @@ -8,13 +8,13 @@ |
michael@541 | 45 | <pidfile>@localstatedir@/@package@/pid/router.pid</pidfile> |
michael@224 | 46 | |
michael@224 | 47 | <!-- Log configuration - type is "syslog", "file" or "stdout" --> |
michael@224 | 48 | - <log type='syslog'> |
michael@224 | 49 | + <log type='file'> |
michael@224 | 50 | <!-- If logging to syslog, this is the log ident --> |
michael@224 | 51 | - <ident>jabberd/router</ident> |
michael@224 | 52 | + <!-- <ident>jabberd/router</ident> --> |
michael@224 | 53 | |
michael@224 | 54 | <!-- If logging to syslog, this is the log facility |
michael@224 | 55 | (local0 - local7) [default: local3] --> |
michael@224 | 56 | - <facility>local3</facility> |
michael@224 | 57 | + <!-- <facility>local3</facility> --> |
michael@224 | 58 | |
michael@224 | 59 | <!-- If logging to file, this is the filename of the logfile --> |
michael@541 | 60 | <!-- |
michael@541 | 61 | @@ -30,7 +30,7 @@ |
michael@224 | 62 | <!-- Local network configuration --> |
michael@224 | 63 | <local> |
michael@224 | 64 | <!-- IP address to bind to (default: 0.0.0.0) --> |
michael@224 | 65 | - <ip>0.0.0.0</ip> |
michael@224 | 66 | + <ip>127.0.0.1</ip> |
michael@224 | 67 | |
michael@224 | 68 | <!-- Port to bind to (default: 5347) --> |
michael@224 | 69 | <port>5347</port> |
michael@541 | 70 | diff -Nau etc/s2s.xml.dist.in.orig etc/s2s.xml.dist.in |
michael@224 | 71 | Index: etc/s2s.xml.dist.in |
michael@541 | 72 | --- etc/s2s.xml.dist.in.orig 2012-08-06 20:18:46.000000000 +0200 |
michael@541 | 73 | +++ etc/s2s.xml.dist.in 2012-08-27 13:45:50.771011934 +0200 |
michael@541 | 74 | @@ -60,13 +60,13 @@ |
michael@224 | 75 | </router> |
michael@224 | 76 | |
michael@224 | 77 | <!-- Log configuration - type is "syslog", "file" or "stdout" --> |
michael@224 | 78 | - <log type='syslog'> |
michael@224 | 79 | + <log type='file'> |
michael@224 | 80 | <!-- If logging to syslog, this is the log ident --> |
michael@224 | 81 | - <ident>jabberd/s2s</ident> |
michael@224 | 82 | + <!-- <ident>jabberd/s2s</ident> --> |
michael@224 | 83 | |
michael@224 | 84 | <!-- If logging to syslog, this is the log facility |
michael@224 | 85 | (local0 - local7) [default: local3] --> |
michael@224 | 86 | - <facility>local3</facility> |
michael@224 | 87 | + <!-- <facility>local3</facility> --> |
michael@224 | 88 | |
michael@224 | 89 | <!-- if logging to file, this is the filename of the logfile --> |
michael@541 | 90 | <!-- |
michael@541 | 91 | @@ -83,7 +83,7 @@ |
michael@224 | 92 | <local> |
michael@224 | 93 | <!-- IP and port to listen for incoming s2s connections on |
michael@224 | 94 | (default: 0.0.0.0, 5269) --> |
michael@224 | 95 | - <ip>0.0.0.0</ip> |
michael@224 | 96 | + <ip>127.0.0.1</ip> |
michael@224 | 97 | <port>5269</port> |
michael@224 | 98 | |
michael@224 | 99 | <!-- Multihomed machines (with more than one interface and IP address) |
michael@541 | 100 | diff -Nau etc/sm.xml.dist.in.orig etc/sm.xml.dist.in |
michael@224 | 101 | Index: etc/sm.xml.dist.in |
michael@541 | 102 | --- etc/sm.xml.dist.in.orig 2012-05-04 18:24:36.000000000 +0200 |
michael@541 | 103 | +++ etc/sm.xml.dist.in 2012-08-27 13:41:59.772838992 +0200 |
michael@224 | 104 | @@ -50,13 +50,13 @@ |
michael@224 | 105 | </router> |
michael@224 | 106 | |
michael@224 | 107 | <!-- Log configuration - type is "syslog", "file" or "stdout" --> |
michael@224 | 108 | - <log type='syslog'> |
michael@224 | 109 | + <log type='file'> |
michael@224 | 110 | <!-- If logging to syslog, this is the log ident --> |
michael@224 | 111 | - <ident>jabberd/sm</ident> |
michael@224 | 112 | + <!-- <ident>jabberd/sm</ident> --> |
michael@224 | 113 | |
michael@224 | 114 | <!-- If logging to syslog, this is the log facility |
michael@224 | 115 | (local0 - local7) [default: local3] --> |
michael@224 | 116 | - <facility>local3</facility> |
michael@224 | 117 | + <!-- <facility>local3</facility> --> |
michael@224 | 118 | |
michael@224 | 119 | <!-- If logging to file, this is the filename of the logfile --> |
michael@224 | 120 | <!-- |
michael@541 | 121 | @@ -90,7 +90,7 @@ |
michael@540 | 122 | <path>@pkglibdir@</path> |
michael@540 | 123 | |
michael@540 | 124 | <!-- By default, we use the SQLite driver for all storage --> |
michael@540 | 125 | - <driver>sqlite</driver> |
michael@540 | 126 | + <driver>db</driver> |
michael@540 | 127 | |
michael@540 | 128 | <!-- Its also possible to explicitly list alternate drivers for |
michael@540 | 129 | specific data types. --> |
michael@541 | 130 | diff -Nau sm/mod_iq_time.c.orig sm/mod_iq_time.c |
michael@224 | 131 | Index: sm/mod_iq_time.c |
michael@541 | 132 | --- sm/mod_iq_time.c.orig 2011-10-22 21:56:00.000000000 +0200 |
michael@541 | 133 | +++ sm/mod_iq_time.c 2012-08-27 13:41:59.773059371 +0200 |
michael@224 | 134 | @@ -39,6 +39,7 @@ |
michael@224 | 135 | static mod_ret_t _iq_time_pkt_sm(mod_instance_t mi, pkt_t pkt) |
michael@224 | 136 | { |
michael@224 | 137 | time_t t; |
michael@224 | 138 | + time_t tzone; |
michael@224 | 139 | struct tm *tm; |
michael@224 | 140 | char buf[64]; |
michael@224 | 141 | char *c; |
michael@224 | 142 | @@ -78,7 +79,8 @@ |
michael@224 | 143 | datetime_out(t, dt_DATETIME, buf, 64); |
michael@224 | 144 | nad_insert_elem(pkt->nad, 2, NAD_ENS(pkt->nad, 1), "utc", buf); |
michael@224 | 145 | #ifdef HAVE_TZSET |
michael@224 | 146 | - snprintf(buf, 64, "%+03d:%02d", -((int)timezone)/(60*60), -((int)timezone)%(60*60)); |
michael@224 | 147 | + tzone = (time_t)((long)mktime(gmtime(&t)) - (long)t); |
michael@224 | 148 | + snprintf(buf, 64, "%+03d:%02d", (int) -tzone/(60*60), (int) -tzone%(60*60)); |
michael@224 | 149 | #else |
michael@224 | 150 | snprintf(buf, 64, "%+03d:%02d", (int) tm->tm_gmtoff/(60*60), (int) tm->tm_gmtoff%(60*60)); |
michael@224 | 151 | #endif |
michael@541 | 152 | diff -Nau sm/mod_roster.c.orig sm/mod_roster.c |
michael@224 | 153 | Index: sm/mod_roster.c |
michael@541 | 154 | --- sm/mod_roster.c.orig 2012-02-12 22:36:18.000000000 +0100 |
michael@541 | 155 | +++ sm/mod_roster.c 2012-08-27 13:41:59.773438877 +0200 |
michael@541 | 156 | @@ -717,6 +717,9 @@ |
michael@224 | 157 | if(user->sessions == NULL) |
michael@224 | 158 | return mod_PASS; |
michael@224 | 159 | |
michael@224 | 160 | + /* We have to free old packet - Lemming's memory leak fix */ |
michael@224 | 161 | + pkt_free(pkt); |
michael@224 | 162 | + |
michael@224 | 163 | /* build a new packet to push out to everyone */ |
michael@224 | 164 | pkt = pkt_create(user->sm, "iq", "set", NULL, NULL); |
michael@224 | 165 | pkt_id_new(pkt); |
michael@541 | 166 | diff -Nau util/util.h.orig util/util.h |
michael@224 | 167 | Index: util/util.h |
michael@541 | 168 | --- util/util.h.orig 2012-08-22 08:03:58.000000000 +0200 |
michael@541 | 169 | +++ util/util.h 2012-08-27 13:41:59.773719964 +0200 |
michael@224 | 170 | @@ -30,6 +30,8 @@ |
michael@224 | 171 | #include <time.h> |
michael@224 | 172 | #include <errno.h> |
michael@224 | 173 | #include <assert.h> |
michael@224 | 174 | +#include <sys/types.h> |
michael@224 | 175 | +#include <sys/socket.h> |
michael@224 | 176 | |
michael@224 | 177 | #include <expat.h> |
michael@224 | 178 |