View | Details | Raw Unified | Return to bug 208753
Collapse All | Expand All

(-)security/openvas-manager/files/patch-src-openvasmd.c (-15 / +46 lines)
Lines 36-42 Link Here
36
       exit (EXIT_FAILURE);
36
       exit (EXIT_FAILURE);
37
     }
37
     }
38
 
38
 
39
@@ -1468,25 +1468,25 @@ main (int argc, char** argv)
39
@@ -1148,6 +1148,7 @@ manager_listen (const char *address_str,
40
   struct sockaddr_storage address;
41
   struct sockaddr_in *addr4 = (struct sockaddr_in *) &address;
42
   struct sockaddr_in6 *addr6 = (struct sockaddr_in6 *) &address;
43
+  socklen_t addrlen;
44
   int port, optval;
45
 
46
   if (!address_str)
47
@@ -1176,11 +1177,13 @@ manager_listen (const char *address_str,
48
     {
49
       address.ss_family = AF_INET6;
50
       addr6->sin6_port = port;
51
+      addrlen = sizeof (*addr6);
52
     }
53
   else if (inet_pton (AF_INET, address_str, &addr4->sin_addr) > 0)
54
     {
55
       address.ss_family = AF_INET;
56
       addr4->sin_port = port;
57
+      addrlen = sizeof (*addr4);
58
     }
59
   else
60
     {
61
@@ -1211,7 +1214,7 @@ manager_listen (const char *address_str,
62
       return -1;
63
     }
64
 
65
-  if (bind (*soc, (struct sockaddr *) &address, sizeof (address))
66
+  if (bind (*soc, (struct sockaddr *) &address, addrlen)
67
       == -1)
68
     {
69
       g_warning ("Failed to bind manager socket: %s", strerror (errno));
70
@@ -1468,25 +1471,25 @@ main (int argc, char** argv)
40
       switch (manage_optimize (log_config, database, optimize))
71
       switch (manage_optimize (log_config, database, optimize))
41
         {
72
         {
42
           case 0:
73
           case 0:
Lines 67-73 Link Here
67
             return EXIT_FAILURE;
98
             return EXIT_FAILURE;
68
         }
99
         }
69
       return EXIT_SUCCESS;
100
       return EXIT_SUCCESS;
70
@@ -1524,7 +1524,7 @@ main (int argc, char** argv)
101
@@ -1524,7 +1527,7 @@ main (int argc, char** argv)
71
                                    scanner_ca_pub, scanner_key_pub,
102
                                    scanner_ca_pub, scanner_key_pub,
72
                                    scanner_key_priv);
103
                                    scanner_key_priv);
73
       g_free (stype);
104
       g_free (stype);
Lines 76-82 Link Here
76
       switch (ret)
107
       switch (ret)
77
         {
108
         {
78
           case 0:
109
           case 0:
79
@@ -1576,7 +1576,7 @@ main (int argc, char** argv)
110
@@ -1576,7 +1579,7 @@ main (int argc, char** argv)
80
                                    stype, scanner_ca_pub, scanner_key_pub,
111
                                    stype, scanner_ca_pub, scanner_key_pub,
81
                                    scanner_key_priv);
112
                                    scanner_key_priv);
82
       g_free (stype);
113
       g_free (stype);
Lines 85-91 Link Here
85
       switch (ret)
116
       switch (ret)
86
         {
117
         {
87
           case 0:
118
           case 0:
88
@@ -1606,22 +1606,22 @@ main (int argc, char** argv)
119
@@ -1606,22 +1609,22 @@ main (int argc, char** argv)
89
       switch (manage_create_user (log_config, database, create_user, role))
120
       switch (manage_create_user (log_config, database, create_user, role))
90
         {
121
         {
91
           case 0:
122
           case 0:
Lines 112-118 Link Here
112
             return EXIT_FAILURE;
143
             return EXIT_FAILURE;
113
         }
144
         }
114
       return EXIT_SUCCESS;
145
       return EXIT_SUCCESS;
115
@@ -1635,32 +1635,32 @@ main (int argc, char** argv)
146
@@ -1635,32 +1638,32 @@ main (int argc, char** argv)
116
       switch (manage_delete_user (log_config, database, delete_user))
147
       switch (manage_delete_user (log_config, database, delete_user))
117
         {
148
         {
118
           case 0:
149
           case 0:
Lines 151-157 Link Here
151
             return EXIT_FAILURE;
182
             return EXIT_FAILURE;
152
         }
183
         }
153
     }
184
     }
154
@@ -1671,22 +1671,22 @@ main (int argc, char** argv)
185
@@ -1671,22 +1674,22 @@ main (int argc, char** argv)
155
       switch (manage_get_users (log_config, database, role))
186
       switch (manage_get_users (log_config, database, role))
156
         {
187
         {
157
           case 0:
188
           case 0:
Lines 178-184 Link Here
178
             return EXIT_FAILURE;
209
             return EXIT_FAILURE;
179
         }
210
         }
180
     }
211
     }
181
@@ -1695,7 +1695,7 @@ main (int argc, char** argv)
212
@@ -1695,7 +1698,7 @@ main (int argc, char** argv)
182
     {
213
     {
183
       /* List the users and then exit. */
214
       /* List the users and then exit. */
184
       int ret = manage_get_scanners (log_config, database);
215
       int ret = manage_get_scanners (log_config, database);
Lines 187-193 Link Here
187
       switch (ret)
218
       switch (ret)
188
         {
219
         {
189
           case 0:
220
           case 0:
190
@@ -1720,7 +1720,7 @@ main (int argc, char** argv)
221
@@ -1720,7 +1723,7 @@ main (int argc, char** argv)
191
 
222
 
192
       /* Delete the scanner and then exit. */
223
       /* Delete the scanner and then exit. */
193
       ret = manage_delete_scanner (log_config, database, delete_scanner);
224
       ret = manage_delete_scanner (log_config, database, delete_scanner);
Lines 196-202 Link Here
196
       switch (ret)
227
       switch (ret)
197
         {
228
         {
198
           case 0:
229
           case 0:
199
@@ -1748,7 +1748,7 @@ main (int argc, char** argv)
230
@@ -1748,7 +1751,7 @@ main (int argc, char** argv)
200
 
231
 
201
       /* Delete the scanner and then exit. */
232
       /* Delete the scanner and then exit. */
202
       ret = manage_verify_scanner (log_config, database, verify_scanner);
233
       ret = manage_verify_scanner (log_config, database, verify_scanner);
Lines 205-211 Link Here
205
       switch (ret)
236
       switch (ret)
206
         {
237
         {
207
           case 0:
238
           case 0:
208
@@ -1783,26 +1783,26 @@ main (int argc, char** argv)
239
@@ -1783,26 +1786,26 @@ main (int argc, char** argv)
209
       switch (manage_set_password (log_config, database, user, new_password))
240
       switch (manage_set_password (log_config, database, user, new_password))
210
         {
241
         {
211
           case 0:
242
           case 0:
Lines 237-243 Link Here
237
             return EXIT_FAILURE;
268
             return EXIT_FAILURE;
238
         }
269
         }
239
     }
270
     }
240
@@ -1885,24 +1885,24 @@ main (int argc, char** argv)
271
@@ -1885,24 +1888,24 @@ main (int argc, char** argv)
241
           case -2:
272
           case -2:
242
             g_critical ("%s: database is wrong version\n", __FUNCTION__);
273
             g_critical ("%s: database is wrong version\n", __FUNCTION__);
243
             fprintf (stderr, "Decryption failed.\n");
274
             fprintf (stderr, "Decryption failed.\n");
Lines 266-272 Link Here
266
       return EXIT_SUCCESS;
297
       return EXIT_SUCCESS;
267
     }
298
     }
268
 
299
 
269
@@ -1916,24 +1916,24 @@ main (int argc, char** argv)
300
@@ -1916,24 +1919,24 @@ main (int argc, char** argv)
270
           case -2:
301
           case -2:
271
             g_critical ("%s: database is wrong version\n", __FUNCTION__);
302
             g_critical ("%s: database is wrong version\n", __FUNCTION__);
272
             fprintf (stderr, "Decryption failed.\n");
303
             fprintf (stderr, "Decryption failed.\n");
Lines 295-301 Link Here
295
       return EXIT_SUCCESS;
326
       return EXIT_SUCCESS;
296
     }
327
     }
297
 
328
 
298
@@ -2005,12 +2005,12 @@ main (int argc, char** argv)
329
@@ -2005,12 +2008,12 @@ main (int argc, char** argv)
299
             g_critical ("%s: failed to fork into background: %s\n",
330
             g_critical ("%s: failed to fork into background: %s\n",
300
                         __FUNCTION__,
331
                         __FUNCTION__,
301
                         strerror (errno));
332
                         strerror (errno));
Lines 310-316 Link Here
310
             exit (EXIT_SUCCESS);
341
             exit (EXIT_SUCCESS);
311
             break;
342
             break;
312
         }
343
         }
313
@@ -2026,25 +2026,25 @@ main (int argc, char** argv)
344
@@ -2026,25 +2029,25 @@ main (int argc, char** argv)
314
         break;
345
         break;
315
       case -2:
346
       case -2:
316
         g_critical ("%s: database is wrong version\n", __FUNCTION__);
347
         g_critical ("%s: database is wrong version\n", __FUNCTION__);
Lines 340-346 Link Here
340
         exit (EXIT_FAILURE);
371
         exit (EXIT_FAILURE);
341
     }
372
     }
342
 
373
 
343
@@ -2054,7 +2054,7 @@ main (int argc, char** argv)
374
@@ -2054,7 +2057,7 @@ main (int argc, char** argv)
344
     {
375
     {
345
       g_critical ("%s: failed to register `atexit' cleanup function\n",
376
       g_critical ("%s: failed to register `atexit' cleanup function\n",
346
                   __FUNCTION__);
377
                   __FUNCTION__);

Return to bug 208753