jabberd/jabberd.patch

Thu, 04 Oct 2012 20:30:05 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 04 Oct 2012 20:30:05 +0200
changeset 715
c10fb90893b9
parent 541
869d6847b13e
child 768
70baf26f1088
permissions
-rw-r--r--

Correct out of date build configuration, porting to Solaris 11 network
link infrastructure and new libpcap logic. This additionally allows for
device drivers in subdirectories of /dev. Correct packaged nmap
personalities and signatures to work out of the box. Finally, hack
arpd logic to properly close sockets and quit on TERM by repeating
signaling in the run command script. Sadly, all this fails to correct
the run time behaviour of honeyd which fails to bind to the IP layer.

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@693 5 @@ -50,18 +50,16 @@
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@693 21 - <!--
michael@693 22 <file>@localstatedir@/@package@/log/c2s.log</file>
michael@693 23 - -->
michael@693 24
michael@693 25 <!-- Filename of the debug logfile -->
michael@541 26 <!--
michael@693 27 @@ -154,7 +152,7 @@
michael@541 28 <id password-change='mu' /> -->
michael@224 29
michael@224 30 <!-- IP address to bind to (default: 0.0.0.0) -->
michael@224 31 - <ip>0.0.0.0</ip>
michael@224 32 + <ip>127.0.0.1</ip>
michael@224 33
michael@224 34 <!-- Port to bind to, or 0 to disable unencrypted access to the
michael@224 35 server (default: 5222) -->
michael@541 36 diff -Nau etc/router.xml.dist.in.orig etc/router.xml.dist.in
michael@224 37 Index: etc/router.xml.dist.in
michael@541 38 --- etc/router.xml.dist.in.orig 2012-05-04 18:24:36.000000000 +0200
michael@541 39 +++ etc/router.xml.dist.in 2012-08-27 13:47:20.357743449 +0200
michael@693 40 @@ -8,18 +8,16 @@
michael@541 41 <pidfile>@localstatedir@/@package@/pid/router.pid</pidfile>
michael@224 42
michael@224 43 <!-- Log configuration - type is "syslog", "file" or "stdout" -->
michael@224 44 - <log type='syslog'>
michael@224 45 + <log type='file'>
michael@224 46 <!-- If logging to syslog, this is the log ident -->
michael@224 47 - <ident>jabberd/router</ident>
michael@224 48 + <!-- <ident>jabberd/router</ident> -->
michael@224 49
michael@224 50 <!-- If logging to syslog, this is the log facility
michael@224 51 (local0 - local7) [default: local3] -->
michael@224 52 - <facility>local3</facility>
michael@224 53 + <!-- <facility>local3</facility> -->
michael@224 54
michael@224 55 <!-- If logging to file, this is the filename of the logfile -->
michael@693 56 - <!--
michael@693 57 <file>@localstatedir@/@package@/log/router.log</file>
michael@693 58 - -->
michael@693 59
michael@693 60 <!-- Filename of the debug logfile -->
michael@541 61 <!--
michael@693 62 @@ -30,7 +28,7 @@
michael@224 63 <!-- Local network configuration -->
michael@224 64 <local>
michael@224 65 <!-- IP address to bind to (default: 0.0.0.0) -->
michael@224 66 - <ip>0.0.0.0</ip>
michael@224 67 + <ip>127.0.0.1</ip>
michael@224 68
michael@224 69 <!-- Port to bind to (default: 5347) -->
michael@224 70 <port>5347</port>
michael@541 71 diff -Nau etc/s2s.xml.dist.in.orig etc/s2s.xml.dist.in
michael@224 72 Index: etc/s2s.xml.dist.in
michael@541 73 --- etc/s2s.xml.dist.in.orig 2012-08-06 20:18:46.000000000 +0200
michael@541 74 +++ etc/s2s.xml.dist.in 2012-08-27 13:45:50.771011934 +0200
michael@693 75 @@ -60,18 +60,16 @@
michael@224 76 </router>
michael@224 77
michael@224 78 <!-- Log configuration - type is "syslog", "file" or "stdout" -->
michael@224 79 - <log type='syslog'>
michael@224 80 + <log type='file'>
michael@224 81 <!-- If logging to syslog, this is the log ident -->
michael@224 82 - <ident>jabberd/s2s</ident>
michael@224 83 + <!-- <ident>jabberd/s2s</ident> -->
michael@224 84
michael@224 85 <!-- If logging to syslog, this is the log facility
michael@224 86 (local0 - local7) [default: local3] -->
michael@224 87 - <facility>local3</facility>
michael@224 88 + <!-- <facility>local3</facility> -->
michael@224 89
michael@224 90 <!-- if logging to file, this is the filename of the logfile -->
michael@693 91 - <!--
michael@693 92 <file>@localstatedir@/@package@/log/s2s.log</file>
michael@693 93 - -->
michael@693 94
michael@693 95 <!-- Filename of the debug logfile -->
michael@541 96 <!--
michael@693 97 @@ -83,7 +81,7 @@
michael@224 98 <local>
michael@224 99 <!-- IP and port to listen for incoming s2s connections on
michael@224 100 (default: 0.0.0.0, 5269) -->
michael@224 101 - <ip>0.0.0.0</ip>
michael@224 102 + <ip>127.0.0.1</ip>
michael@224 103 <port>5269</port>
michael@224 104
michael@224 105 <!-- Multihomed machines (with more than one interface and IP address)
michael@541 106 diff -Nau etc/sm.xml.dist.in.orig etc/sm.xml.dist.in
michael@224 107 Index: etc/sm.xml.dist.in
michael@541 108 --- etc/sm.xml.dist.in.orig 2012-05-04 18:24:36.000000000 +0200
michael@541 109 +++ etc/sm.xml.dist.in 2012-08-27 13:41:59.772838992 +0200
michael@224 110 @@ -50,13 +50,13 @@
michael@224 111 </router>
michael@224 112
michael@224 113 <!-- Log configuration - type is "syslog", "file" or "stdout" -->
michael@224 114 - <log type='syslog'>
michael@224 115 + <log type='file'>
michael@224 116 <!-- If logging to syslog, this is the log ident -->
michael@224 117 - <ident>jabberd/sm</ident>
michael@224 118 + <!-- <ident>jabberd/sm</ident> -->
michael@224 119
michael@224 120 <!-- If logging to syslog, this is the log facility
michael@224 121 (local0 - local7) [default: local3] -->
michael@224 122 - <facility>local3</facility>
michael@224 123 + <!-- <facility>local3</facility> -->
michael@224 124
michael@224 125 <!-- If logging to file, this is the filename of the logfile -->
michael@224 126 <!--
michael@541 127 diff -Nau sm/mod_iq_time.c.orig sm/mod_iq_time.c
michael@224 128 Index: sm/mod_iq_time.c
michael@541 129 --- sm/mod_iq_time.c.orig 2011-10-22 21:56:00.000000000 +0200
michael@541 130 +++ sm/mod_iq_time.c 2012-08-27 13:41:59.773059371 +0200
michael@224 131 @@ -39,6 +39,7 @@
michael@224 132 static mod_ret_t _iq_time_pkt_sm(mod_instance_t mi, pkt_t pkt)
michael@224 133 {
michael@224 134 time_t t;
michael@224 135 + time_t tzone;
michael@224 136 struct tm *tm;
michael@224 137 char buf[64];
michael@224 138 char *c;
michael@224 139 @@ -78,7 +79,8 @@
michael@224 140 datetime_out(t, dt_DATETIME, buf, 64);
michael@224 141 nad_insert_elem(pkt->nad, 2, NAD_ENS(pkt->nad, 1), "utc", buf);
michael@224 142 #ifdef HAVE_TZSET
michael@224 143 - snprintf(buf, 64, "%+03d:%02d", -((int)timezone)/(60*60), -((int)timezone)%(60*60));
michael@224 144 + tzone = (time_t)((long)mktime(gmtime(&t)) - (long)t);
michael@224 145 + snprintf(buf, 64, "%+03d:%02d", (int) -tzone/(60*60), (int) -tzone%(60*60));
michael@224 146 #else
michael@224 147 snprintf(buf, 64, "%+03d:%02d", (int) tm->tm_gmtoff/(60*60), (int) tm->tm_gmtoff%(60*60));
michael@224 148 #endif
michael@541 149 diff -Nau sm/mod_roster.c.orig sm/mod_roster.c
michael@224 150 Index: sm/mod_roster.c
michael@541 151 --- sm/mod_roster.c.orig 2012-02-12 22:36:18.000000000 +0100
michael@541 152 +++ sm/mod_roster.c 2012-08-27 13:41:59.773438877 +0200
michael@541 153 @@ -717,6 +717,9 @@
michael@224 154 if(user->sessions == NULL)
michael@224 155 return mod_PASS;
michael@224 156
michael@224 157 + /* We have to free old packet - Lemming's memory leak fix */
michael@224 158 + pkt_free(pkt);
michael@224 159 +
michael@224 160 /* build a new packet to push out to everyone */
michael@224 161 pkt = pkt_create(user->sm, "iq", "set", NULL, NULL);
michael@224 162 pkt_id_new(pkt);
michael@693 163 diff -Nau tools/jabberd.in.orig tools/jabberd.in
michael@693 164 Index: tools/jabberd.in
michael@693 165 --- tools/jabberd.in.orig 2012-02-12 22:38:25.000000000 +0100
michael@693 166 +++ tools/jabberd.in 2012-09-16 11:21:49.325189601 +0200
michael@693 167 @@ -65,7 +65,7 @@
michael@693 168
michael@693 169
michael@693 170 #-----------------------------------------------------------------------------
michael@693 171 -# Setup the jobs: router, sm, c2s, s2s
michael@693 172 +# Setup the jobs: router, sm, c2s, s2s, mu-conference
michael@693 173 #-----------------------------------------------------------------------------
michael@693 174 $jobs{jabberd}->{prefix} = "JBRD";
michael@693 175
michael@693 176 @@ -85,12 +85,17 @@
michael@693 177 $jobs{s2s}->{config} = "$config_dir/s2s.xml";
michael@693 178 $jobs{s2s}->{prefix} = "S2S";
michael@693 179
michael@693 180 +$jobs{muc}->{cmd} = "$Bin/mu-conference";
michael@693 181 +$jobs{muc}->{config} = "$config_dir/muc.xml";
michael@693 182 +$jobs{muc}->{prefix} = "MUC";
michael@693 183 +
michael@693 184 if ($config eq "internal")
michael@693 185 {
michael@693 186 $programs[0] = ["router"];
michael@693 187 $programs[1] = ["sm"];
michael@693 188 $programs[2] = ["c2s"];
michael@693 189 $programs[3] = ["s2s"];
michael@693 190 + $programs[4] = ["muc"];
michael@693 191 }
michael@693 192 else
michael@693 193 {
michael@541 194 diff -Nau util/util.h.orig util/util.h
michael@224 195 Index: util/util.h
michael@541 196 --- util/util.h.orig 2012-08-22 08:03:58.000000000 +0200
michael@541 197 +++ util/util.h 2012-08-27 13:41:59.773719964 +0200
michael@224 198 @@ -30,6 +30,8 @@
michael@224 199 #include <time.h>
michael@224 200 #include <errno.h>
michael@224 201 #include <assert.h>
michael@224 202 +#include <sys/types.h>
michael@224 203 +#include <sys/socket.h>
michael@224 204
michael@224 205 #include <expat.h>
michael@224 206

mercurial