]> git.ipfire.org Git - thirdparty/cups.git/commitdiff
Add write test and more transformations in fuzz function.
authorMichael R Sweet <michael.r.sweet@gmail.com>
Mon, 29 Mar 2021 00:55:52 +0000 (20:55 -0400)
committerMichael R Sweet <michael.r.sweet@gmail.com>
Mon, 29 Mar 2021 00:55:52 +0000 (20:55 -0400)
cups/fuzzipp.c

index 9ad7537b4ea430e01c606e25244ae98285582a71..ffdb3485ce6923fc98864fe951632ea65320ddbf 100644 (file)
@@ -187,8 +187,20 @@ main(int  argc,                    // I - Number of command-line arguments
     }
     while (state == IPP_STATE_ATTRIBUTE);
 
-    ippDelete(request);
     cupsFileClose(fp);
+
+    fp = cupsFileOpen("/dev/null", "w");
+
+    ippSetState(request, IPP_STATE_IDLE);
+
+    do
+    {
+      state = ippWriteIO(fp, (ipp_iocb_t)cupsFileWrite, 1, NULL, request);
+    }
+    while (state == IPP_STATE_ATTRIBUTE);
+
+    cupsFileClose(fp);
+    ippDelete(request);
   }
 
   return (0);
@@ -210,7 +222,7 @@ fuzzdata(_ippdata_t *data)          // I - Data buffer
 
 
   // Mutate a few times...
-  for (i = 0; i < 10; i ++)
+  for (i = 0; i < 32; i ++)
   {
     // Each cycle remove or move bytes
     switch (CUPS_RAND() & 7)