31
31
/* Enable vasprintf */
32
32
#define _GNU_SOURCE
33
33
34
-
35
34
#include <stdarg.h>
36
35
#include <stdio.h>
37
36
#include <stdlib.h>
44
43
#include <syslog.h>
45
44
46
45
/* From gateway.c */
47
- extern httpd * webserver ;
48
-
49
- void * safe_malloc (size_t size ) {
50
- void * retval = NULL ;
51
- retval = malloc (size );
52
- if (!retval ) {
53
- debug (LOG_CRIT , "Failed to malloc %d bytes of memory: %s. Bailing out" , size , strerror (errno ));
54
- exit (1 );
55
- }
56
- return (retval );
46
+ extern httpd * webserver ;
47
+
48
+ void *
49
+ safe_malloc (size_t size )
50
+ {
51
+ void * retval = NULL ;
52
+ retval = malloc (size );
53
+ if (!retval ) {
54
+ debug (LOG_CRIT , "Failed to malloc %d bytes of memory: %s. Bailing out" , size , strerror (errno ));
55
+ exit (1 );
56
+ }
57
+ memset (retval , 0 , size );
58
+ return (retval );
57
59
}
58
60
59
61
void *
@@ -68,59 +70,65 @@ safe_realloc(void *ptr, size_t newsize)
68
70
return retval ;
69
71
}
70
72
71
- char * safe_strdup (const char * s ) {
72
- char * retval = NULL ;
73
- if (!s ) {
74
- debug (LOG_CRIT , "safe_strdup called with NULL which would have crashed strdup. Bailing out" );
75
- exit (1 );
76
- }
77
- retval = strdup (s );
78
- if (!retval ) {
79
- debug (LOG_CRIT , "Failed to duplicate a string: %s. Bailing out" , strerror (errno ));
80
- exit (1 );
81
- }
82
- return (retval );
73
+ char *
74
+ safe_strdup (const char * s )
75
+ {
76
+ char * retval = NULL ;
77
+ if (!s ) {
78
+ debug (LOG_CRIT , "safe_strdup called with NULL which would have crashed strdup. Bailing out" );
79
+ exit (1 );
80
+ }
81
+ retval = strdup (s );
82
+ if (!retval ) {
83
+ debug (LOG_CRIT , "Failed to duplicate a string: %s. Bailing out" , strerror (errno ));
84
+ exit (1 );
85
+ }
86
+ return (retval );
83
87
}
84
88
85
- int safe_asprintf (char * * strp , const char * fmt , ...) {
86
- va_list ap ;
87
- int retval ;
89
+ int
90
+ safe_asprintf (char * * strp , const char * fmt , ...)
91
+ {
92
+ va_list ap ;
93
+ int retval ;
88
94
89
- va_start (ap , fmt );
90
- retval = safe_vasprintf (strp , fmt , ap );
91
- va_end (ap );
95
+ va_start (ap , fmt );
96
+ retval = safe_vasprintf (strp , fmt , ap );
97
+ va_end (ap );
92
98
93
- return (retval );
99
+ return (retval );
94
100
}
95
101
96
- int safe_vasprintf (char * * strp , const char * fmt , va_list ap ) {
97
- int retval ;
102
+ int
103
+ safe_vasprintf (char * * strp , const char * fmt , va_list ap )
104
+ {
105
+ int retval ;
98
106
99
- retval = vasprintf (strp , fmt , ap );
107
+ retval = vasprintf (strp , fmt , ap );
100
108
101
- if (retval == -1 ) {
102
- debug (LOG_CRIT , "Failed to vasprintf: %s. Bailing out" , strerror (errno ));
103
- exit (1 );
104
- }
105
- return (retval );
109
+ if (retval == -1 ) {
110
+ debug (LOG_CRIT , "Failed to vasprintf: %s. Bailing out" , strerror (errno ));
111
+ exit (1 );
112
+ }
113
+ return (retval );
106
114
}
107
115
108
- pid_t safe_fork (void ) {
109
- pid_t result ;
110
- result = fork ();
111
-
112
- if (result == -1 ) {
113
- debug (LOG_CRIT , "Failed to fork: %s. Bailing out" , strerror (errno ));
114
- exit (1 );
115
- }
116
- else if (result == 0 ) {
117
- /* I'm the child - do some cleanup */
118
- if (webserver ) {
119
- close (webserver -> serverSock );
120
- webserver = NULL ;
121
- }
122
- }
123
-
124
- return result ;
125
- }
116
+ pid_t
117
+ safe_fork (void )
118
+ {
119
+ pid_t result ;
120
+ result = fork ();
126
121
122
+ if (result == -1 ) {
123
+ debug (LOG_CRIT , "Failed to fork: %s. Bailing out" , strerror (errno ));
124
+ exit (1 );
125
+ } else if (result == 0 ) {
126
+ /* I'm the child - do some cleanup */
127
+ if (webserver ) {
128
+ close (webserver -> serverSock );
129
+ webserver = NULL ;
130
+ }
131
+ }
132
+
133
+ return result ;
134
+ }
0 commit comments