@@ -99,10 +99,12 @@ _http_request_handler(LogProtoTextServer *s, LogProtoBufferedServerState *state,
99
99
100
100
void
101
101
log_proto_http_server_init (LogProtoHTTPServer * self , LogTransport * transport ,
102
- const LogProtoHTTPServerOptionsStorage * options )
102
+ const LogProtoServerOptionsStorage * options )
103
103
{
104
- log_proto_text_multiline_server_init ((LogProtoTextServer * )self , transport , & options -> storage );
105
- self -> options = options ;
104
+ log_proto_text_multiline_server_init ((LogProtoTextServer * )self , transport , options );
105
+
106
+ self -> options = (const LogProtoHTTPServerOptionsStorage * )options ;
107
+
106
108
self -> super .extracted_raw_data_handler = _http_request_handler ;
107
109
self -> request_processor = _http_request_processor ;
108
110
self -> request_header_checker = _check_request_headers ;
@@ -121,38 +123,46 @@ log_proto_http_server_new(LogTransport *transport,
121
123
return & self -> super .super .super ;
122
124
}
123
125
124
- /* Options */
126
+ /*----------------- Options ----------------- */
125
127
128
+ /* NOTE: We do not maintain here the initialized state at all, it is the responsibility of the
129
+ * LogProtoServer/LogProtoServerOptions functions
130
+ */
126
131
void
127
- log_proto_http_server_options_defaults (LogProtoHTTPServerOptionsStorage * options )
132
+ log_proto_http_server_options_defaults (LogProtoServerOptionsStorage * proto_server_options )
128
133
{
129
- log_proto_server_options_defaults ((LogProtoServerOptionsStorage * )options );
134
+ LogProtoHTTPServerOptionsStorage * options = (LogProtoHTTPServerOptionsStorage * ) proto_server_options ;
135
+
136
+ proto_server_options -> super .init = log_proto_http_server_options_init ;
137
+ proto_server_options -> super .validate = log_proto_http_server_options_validate ;
138
+ proto_server_options -> super .destroy = log_proto_http_server_options_destroy ;
139
+
130
140
options -> super .close_after_send = FALSE;
131
- options -> super .initialized = FALSE;
132
141
}
133
142
134
143
void
135
- log_proto_http_server_options_init (LogProtoHTTPServerOptionsStorage * options ,
144
+ log_proto_http_server_options_init (LogProtoServerOptionsStorage * proto_server_options ,
136
145
GlobalConfig * cfg )
137
146
{
138
- if (options -> super .initialized )
139
- return ;
140
-
141
- log_proto_server_options_init (& options -> storage , cfg );
147
+ LogProtoHTTPServerOptionsStorage * options = (LogProtoHTTPServerOptionsStorage * ) proto_server_options ;
142
148
options -> super .close_after_send = FALSE;
149
+ }
143
150
144
- options -> super .initialized = TRUE;
151
+ void
152
+ log_proto_http_server_options_destroy (LogProtoServerOptionsStorage * proto_server_options )
153
+ {
145
154
}
146
155
147
156
gboolean
148
- log_proto_http_server_options_validate (LogProtoHTTPServerOptionsStorage * options )
157
+ log_proto_http_server_options_validate (LogProtoServerOptionsStorage * proto_server_options )
149
158
{
150
- return log_proto_server_options_validate ( & options -> storage ) ;
159
+ return TRUE ;
151
160
}
152
161
153
162
void
154
- log_proto_http_server_options_set_close_after_send (LogProtoHTTPServerOptionsStorage * options ,
163
+ log_proto_http_server_options_set_close_after_send (LogProtoServerOptionsStorage * proto_server_options ,
155
164
gboolean value )
156
165
{
166
+ LogProtoHTTPServerOptionsStorage * options = (LogProtoHTTPServerOptionsStorage * ) proto_server_options ;
157
167
options -> super .close_after_send = value ;
158
168
}
0 commit comments