]> granicus.if.org Git - pdns/commitdiff
limit size of mysql cell to 128 kilobytes
authorPeter van Dijk <peter.van.dijk@powerdns.com>
Thu, 11 Aug 2016 14:45:22 +0000 (16:45 +0200)
committerPeter van Dijk <peter.van.dijk@powerdns.com>
Thu, 11 Aug 2016 14:45:34 +0000 (16:45 +0200)
modules/gmysqlbackend/smysql.cc

index daac6ab49aa15b223bc3b9da81c264effa739f0f..6437e96d4a83a4587d62b53b407cc0db5b969edd 100644 (file)
@@ -172,6 +172,7 @@ public:
 
         for(int i = 0; i < d_fnum; i++) {
           unsigned long len = std::max(fields[i].max_length, fields[i].length)+1;
+          if (len > 128 * 1024) len = 128 * 1024; // LONGTEXT may tell us it needs 4GB!
           d_res_bind[i].is_null = new my_bool[1];
           d_res_bind[i].error = new my_bool[1];
           d_res_bind[i].length = new unsigned long[1];