www.usr.com/support/gpl/USR9107_release.1.4.tar.gz
[bcm963xx.git] / userapps / opensource / sshd / libtommath / etc / 2kprime.c
index 4f1d4bb..d48b83e 100755 (executable)
@@ -1,80 +1,80 @@
-/* Makes safe primes of a 2k nature */\r
-#include <tommath.h>\r
-#include <time.h>\r
-\r
-int sizes[] = {256, 512, 768, 1024, 1536, 2048, 3072, 4096};\r
-\r
-int main(void)\r
-{\r
-   char buf[2000];\r
-   int x, y;\r
-   mp_int q, p;\r
-   FILE *out;\r
-   clock_t t1;\r
-   mp_digit z;\r
-   \r
-   mp_init_multi(&q, &p, NULL);\r
-   \r
-   out = fopen("2kprime.1", "w");\r
-   for (x = 0; x < (int)(sizeof(sizes) / sizeof(sizes[0])); x++) {\r
-   top:\r
-       mp_2expt(&q, sizes[x]);\r
-       mp_add_d(&q, 3, &q);\r
-       z = -3;\r
-       \r
-       t1 = clock();\r
-       for(;;) {\r
-         mp_sub_d(&q, 4, &q);\r
-         z += 4;\r
-\r
-         if (z > MP_MASK) {\r
-            printf("No primes of size %d found\n", sizes[x]);\r
-            break;\r
-         }\r
-         \r
-         if (clock() - t1 > CLOCKS_PER_SEC) { \r
-            printf("."); fflush(stdout);\r
-//            sleep((clock() - t1 + CLOCKS_PER_SEC/2)/CLOCKS_PER_SEC);\r
-            t1 = clock();\r
-         }\r
-         \r
-         /* quick test on q */\r
-         mp_prime_is_prime(&q, 1, &y);\r
-         if (y == 0) {\r
-            continue;\r
-         }\r
-\r
-         /* find (q-1)/2 */\r
-         mp_sub_d(&q, 1, &p);\r
-         mp_div_2(&p, &p);\r
-         mp_prime_is_prime(&p, 3, &y);\r
-         if (y == 0) {\r
-            continue;\r
-         }\r
-\r
-         /* test on q */\r
-         mp_prime_is_prime(&q, 3, &y);\r
-         if (y == 0) {\r
-            continue;\r
-         }\r
-\r
-         break;\r
-       }\r
-       \r
-       if (y == 0) {\r
-          ++sizes[x];\r
-          goto top;\r
-       }\r
-       \r
-       mp_toradix(&q, buf, 10);\r
-       printf("\n\n%d-bits (k = %lu) = %s\n", sizes[x], z, buf);\r
-       fprintf(out, "%d-bits (k = %lu) = %s\n", sizes[x], z, buf); fflush(out);\r
-   }\r
-   \r
-   return 0;\r
-}   \r
-       \r
-         \r
-            \r
-            \r
-          \r
+/* Makes safe primes of a 2k nature */
+#include <tommath.h>
+#include <time.h>
+
+int sizes[] = {256, 512, 768, 1024, 1536, 2048, 3072, 4096};
+
+int main(void)
+{
+   char buf[2000];
+   int x, y;
+   mp_int q, p;
+   FILE *out;
+   clock_t t1;
+   mp_digit z;
+   
+   mp_init_multi(&q, &p, NULL);
+   
+   out = fopen("2kprime.1", "w");
+   for (x = 0; x < (int)(sizeof(sizes) / sizeof(sizes[0])); x++) {
+   top:
+       mp_2expt(&q, sizes[x]);
+       mp_add_d(&q, 3, &q);
+       z = -3;
+       
+       t1 = clock();
+       for(;;) {
+         mp_sub_d(&q, 4, &q);
+         z += 4;
+
+         if (z > MP_MASK) {
+            printf("No primes of size %d found\n", sizes[x]);
+            break;
+         }
+         
+         if (clock() - t1 > CLOCKS_PER_SEC) { 
+            printf("."); fflush(stdout);
+//            sleep((clock() - t1 + CLOCKS_PER_SEC/2)/CLOCKS_PER_SEC);
+            t1 = clock();
+         }
+         
+         /* quick test on q */
+         mp_prime_is_prime(&q, 1, &y);
+         if (y == 0) {
+            continue;
+         }
+
+         /* find (q-1)/2 */
+         mp_sub_d(&q, 1, &p);
+         mp_div_2(&p, &p);
+         mp_prime_is_prime(&p, 3, &y);
+         if (y == 0) {
+            continue;
+         }
+
+         /* test on q */
+         mp_prime_is_prime(&q, 3, &y);
+         if (y == 0) {
+            continue;
+         }
+
+         break;
+       }
+       
+       if (y == 0) {
+          ++sizes[x];
+          goto top;
+       }
+       
+       mp_toradix(&q, buf, 10);
+       printf("\n\n%d-bits (k = %lu) = %s\n", sizes[x], z, buf);
+       fprintf(out, "%d-bits (k = %lu) = %s\n", sizes[x], z, buf); fflush(out);
+   }
+   
+   return 0;
+}   
+       
+         
+            
+            
+