]> granicus.if.org Git - php/commitdiff
Please avoid potential buffer overflows in new code. If you deal
authorSascha Schumann <sas@php.net>
Fri, 1 Dec 2000 12:29:29 +0000 (12:29 +0000)
committerSascha Schumann <sas@php.net>
Fri, 1 Dec 2000 12:29:29 +0000 (12:29 +0000)
with strings, consider storing the string length along with the string
data. That will make your life easier.

ext/dba/dba.c

index ee8f7409d17f72b7ca75bd587aec8da5a877080d..7fc8e60d6945f60f85374cffae614004a03181f4 100644 (file)
@@ -206,21 +206,23 @@ static PHP_MSHUTDOWN_FUNCTION(dba)
        return SUCCESS;
 }
 
+#include "ext/standard/php_smart_str.h"
 
 static PHP_MINFO_FUNCTION(dba)
 {
        dba_handler *hptr;
-       static char handlers[80], tmp[5];
+       smart_str handlers = {0};
 
        for(hptr = handler; hptr->name; hptr++) {
-               sprintf(tmp, "%s ", hptr->name);
-               strcat(handlers, tmp);
+               smart_str_appends(&handlers, hptr->name);
+               smart_str_appendc(&handlers, ' ');
        }
 
        php_info_print_table_start();
        php_info_print_table_row(2, "DBA support", "enabled");
-       php_info_print_table_row(2, "Supported handlers", handlers);
+       php_info_print_table_row(2, "Supported handlers", handlers.c);
        php_info_print_table_end();
+       smart_str_free(&handlers);
 }