@@ -150,7 +150,7 @@ bool flush_message_table(void)
150
150
return true;
151
151
}
152
152
153
- static bool add_message (const enum message_type type , const bool unique ,
153
+ static bool add_message (const enum message_type type ,
154
154
const char * message , const int count ,...)
155
155
{
156
156
bool okay = false;
@@ -166,55 +166,52 @@ static bool add_message(const enum message_type type, const bool unique,
166
166
return false;
167
167
}
168
168
169
- // Ensure there are no duplicates when adding host name or rate-limiting messages
170
- if (unique )
171
- {
172
- sqlite3_stmt * stmt = NULL ;
173
- const char * querystr = "DELETE FROM message WHERE type = ?1 AND message = ?2" ;
174
- int rc = sqlite3_prepare_v2 (db , querystr , -1 , & stmt , NULL );
175
- if ( rc != SQLITE_OK ){
176
- logg ("add_message(type=%u, message=%s) - SQL error prepare DELETE: %s" ,
177
- type , message , sqlite3_errstr (rc ));
178
- goto end_of_add_message ;
179
- }
180
-
181
- // Bind type to prepared statement
182
- if ((rc = sqlite3_bind_text (stmt , 1 , message_types [type ], -1 , SQLITE_STATIC )) != SQLITE_OK )
183
- {
184
- logg ("add_message(type=%u, message=%s) - Failed to bind type DELETE: %s" ,
185
- type , message , sqlite3_errstr (rc ));
186
- sqlite3_reset (stmt );
187
- sqlite3_finalize (stmt );
188
- goto end_of_add_message ;
189
- }
169
+ // Ensure there are no duplicates when adding messages
170
+ sqlite3_stmt * stmt = NULL ;
171
+ const char * querystr = "DELETE FROM message WHERE type = ?1 AND message = ?2" ;
172
+ int rc = sqlite3_prepare_v2 (db , querystr , -1 , & stmt , NULL );
173
+ if ( rc != SQLITE_OK ){
174
+ logg ("add_message(type=%u, message=%s) - SQL error prepare DELETE: %s" ,
175
+ type , message , sqlite3_errstr (rc ));
176
+ goto end_of_add_message ;
177
+ }
190
178
191
- // Bind message to prepared statement
192
- if ((rc = sqlite3_bind_text (stmt , 2 , message , -1 , SQLITE_STATIC )) != SQLITE_OK )
193
- {
194
- logg ("add_message(type=%u, message=%s) - Failed to bind message DELETE: %s" ,
195
- type , message , sqlite3_errstr (rc ));
196
- sqlite3_reset (stmt );
197
- sqlite3_finalize (stmt );
198
- goto end_of_add_message ;
199
- }
179
+ // Bind type to prepared statement
180
+ if ((rc = sqlite3_bind_text (stmt , 1 , message_types [ type ] , -1 , SQLITE_STATIC )) != SQLITE_OK )
181
+ {
182
+ logg ("add_message(type=%u, message=%s) - Failed to bind type DELETE: %s" ,
183
+ type , message , sqlite3_errstr (rc ));
184
+ sqlite3_reset (stmt );
185
+ sqlite3_finalize (stmt );
186
+ goto end_of_add_message ;
187
+ }
200
188
201
- // Execute and finalize
202
- if ((rc = sqlite3_step (stmt )) != SQLITE_OK && rc != SQLITE_DONE )
203
- {
204
- logg ("add_message(type=%u, message=%s) - SQL error step DELETE: %s" ,
205
- type , message , sqlite3_errstr (rc ));
206
- goto end_of_add_message ;
207
- }
208
- sqlite3_clear_bindings (stmt );
189
+ // Bind message to prepared statement
190
+ if ((rc = sqlite3_bind_text (stmt , 2 , message , -1 , SQLITE_STATIC )) != SQLITE_OK )
191
+ {
192
+ logg ("add_message(type=%u, message=%s) - Failed to bind message DELETE: %s" ,
193
+ type , message , sqlite3_errstr (rc ));
209
194
sqlite3_reset (stmt );
210
195
sqlite3_finalize (stmt );
196
+ goto end_of_add_message ;
197
+ }
198
+
199
+ // Execute and finalize
200
+ if ((rc = sqlite3_step (stmt )) != SQLITE_OK && rc != SQLITE_DONE )
201
+ {
202
+ logg ("add_message(type=%u, message=%s) - SQL error step DELETE: %s" ,
203
+ type , message , sqlite3_errstr (rc ));
204
+ goto end_of_add_message ;
211
205
}
206
+ sqlite3_clear_bindings (stmt );
207
+ sqlite3_reset (stmt );
208
+ sqlite3_finalize (stmt );
209
+ stmt = NULL ;
212
210
213
211
// Prepare SQLite statement
214
- sqlite3_stmt * stmt = NULL ;
215
- const char * querystr = "INSERT INTO message (timestamp,type,message,blob1,blob2,blob3,blob4,blob5) "
216
- "VALUES ((cast(strftime('%s', 'now') as int)),?,?,?,?,?,?,?);" ;
217
- int rc = sqlite3_prepare_v2 (db , querystr , -1 , & stmt , NULL );
212
+ querystr = "INSERT INTO message (timestamp,type,message,blob1,blob2,blob3,blob4,blob5) "
213
+ "VALUES ((cast(strftime('%s', 'now') as int)),?,?,?,?,?,?,?);" ;
214
+ rc = sqlite3_prepare_v2 (db , querystr , -1 , & stmt , NULL );
218
215
if ( rc != SQLITE_OK )
219
216
{
220
217
logg ("add_message(type=%u, message=%s) - SQL error prepare: %s" ,
@@ -317,7 +314,7 @@ void logg_regex_warning(const char *type, const char *warning, const int dbindex
317
314
318
315
// Log to database only if not in CLI mode
319
316
if (!cli_mode )
320
- add_message (REGEX_MESSAGE , false, warning , 3 , type , regex , dbindex );
317
+ add_message (REGEX_MESSAGE , warning , 3 , type , regex , dbindex );
321
318
}
322
319
323
320
void logg_subnet_warning (const char * ip , const int matching_count , const char * matching_ids ,
@@ -332,7 +329,7 @@ void logg_subnet_warning(const char *ip, const int matching_count, const char *m
332
329
333
330
// Log to database
334
331
char * names = get_client_names_from_ids (matching_ids );
335
- add_message (SUBNET_MESSAGE , false, ip , 5 , matching_count , names , matching_ids , chosen_match_text , chosen_match_id );
332
+ add_message (SUBNET_MESSAGE , ip , 5 , matching_count , names , matching_ids , chosen_match_text , chosen_match_id );
336
333
free (names );
337
334
}
338
335
@@ -343,7 +340,7 @@ void logg_hostname_warning(const char *ip, const char *name, const unsigned int
343
340
ip , name , pos );
344
341
345
342
// Log to database
346
- add_message (HOSTNAME_MESSAGE , true, ip , 2 , name , (const int )pos );
343
+ add_message (HOSTNAME_MESSAGE , ip , 2 , name , (const int )pos );
347
344
}
348
345
349
346
void logg_fatal_dnsmasq_message (const char * message )
@@ -352,7 +349,7 @@ void logg_fatal_dnsmasq_message(const char *message)
352
349
logg ("FATAL ERROR in dnsmasq core: %s" , message );
353
350
354
351
// Log to database
355
- add_message (DNSMASQ_CONFIG_MESSAGE , false, message , 0 );
352
+ add_message (DNSMASQ_CONFIG_MESSAGE , message , 0 );
356
353
357
354
// FTL will dies after this point, so we should make sure to clean up
358
355
// behind ourselves
@@ -368,7 +365,7 @@ void logg_rate_limit_message(const char *clientIP, const unsigned int rate_limit
368
365
clientIP , turnaround , turnaround == 1 ? "" : "s" );
369
366
370
367
// Log to database
371
- add_message (RATE_LIMIT_MESSAGE , true, clientIP , 2 , config .rate_limit .count , config .rate_limit .interval );
368
+ add_message (RATE_LIMIT_MESSAGE , clientIP , 2 , config .rate_limit .count , config .rate_limit .interval );
372
369
}
373
370
374
371
void logg_warn_dnsmasq_message (char * message )
@@ -377,33 +374,33 @@ void logg_warn_dnsmasq_message(char *message)
377
374
logg ("WARNING in dnsmasq core: %s" , message );
378
375
379
376
// Log to database
380
- add_message (DNSMASQ_WARN_MESSAGE , false, message , 0 );
377
+ add_message (DNSMASQ_WARN_MESSAGE , message , 0 );
381
378
}
382
379
383
380
void log_resource_shortage (const double load , const int nprocs , const int shmem , const int disk , const char * path , const char * msg )
384
381
{
385
382
if (load > 0.0 )
386
383
{
387
384
logg ("WARNING: Long-term load (15min avg) larger than number of processors: %.1f > %d" , load , nprocs );
388
- add_message (LOAD_MESSAGE , true, "excessive load" , 2 , load , nprocs );
385
+ add_message (LOAD_MESSAGE , "excessive load" , 2 , load , nprocs );
389
386
}
390
387
else if (shmem > -1 )
391
388
{
392
389
logg ("WARNING: RAM shortage (%s) ahead: %d%% is used (%s)" , path , shmem , msg );
393
- add_message (SHMEM_MESSAGE , true, path , 2 , shmem , msg );
390
+ add_message (SHMEM_MESSAGE , path , 2 , shmem , msg );
394
391
}
395
392
else if (disk > -1 )
396
393
{
397
394
logg ("WARNING: Disk shortage (%s) ahead: %d%% is used (%s)" , path , disk , msg );
398
- add_message (DISK_MESSAGE , true, path , 2 , disk , msg );
395
+ add_message (DISK_MESSAGE , path , 2 , disk , msg );
399
396
}
400
397
}
401
398
402
399
void logg_inaccessible_adlist (const int dbindex , const char * address )
403
400
{
404
401
// Log to FTL.log
405
- logg ("Adlist warning : Adlist with ID %d (%s) was inaccessible during last gravity run" , dbindex , address );
402
+ logg ("ADLIST WARNING : Adlist with ID %d (%s) was inaccessible during last gravity run" , dbindex , address );
406
403
407
404
// Log to database
408
- add_message (INACCESSIBLE_ADLIST_MESSAGE , false, address , 1 , dbindex );
405
+ add_message (INACCESSIBLE_ADLIST_MESSAGE , address , 1 , dbindex );
409
406
}
0 commit comments