- djm@cvs.openbsd.org 2004/05/09 00:06:47
     [moduli.c ssh-keygen.c] removed: moduli.h
     zap another tiny header; ok deraadt@
diff --git a/ChangeLog b/ChangeLog
index b228501..e12b47b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -17,6 +17,9 @@
      [clientloop.c misc.h readpass.c scard.c ssh-add.c ssh-agent.c ssh-keygen.c
      sshconnect.c sshconnect1.c sshconnect2.c] removed: readpass.h
      kill a tiny header; ok deraadt@
+   - djm@cvs.openbsd.org 2004/05/09 00:06:47
+     [moduli.c ssh-keygen.c] removed: moduli.h
+     zap another tiny header; ok deraadt@
 
 20040502
  - (dtucker) OpenBSD CVS Sync
@@ -1093,4 +1096,4 @@
    - (djm) Trim deprecated options from INSTALL. Mention UsePAM
    - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu
 
-$Id: ChangeLog,v 1.3346 2004/05/13 06:15:47 dtucker Exp $
+$Id: ChangeLog,v 1.3347 2004/05/13 06:24:32 dtucker Exp $
diff --git a/moduli.c b/moduli.c
index d454c30..f72baab 100644
--- a/moduli.c
+++ b/moduli.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: moduli.c,v 1.6 2004/04/22 11:56:57 djm Exp $ */
+/* $OpenBSD: moduli.c,v 1.7 2004/05/09 00:06:47 djm Exp $ */
 /*
  * Copyright 1994 Phil Karn <karn@qualcomm.com>
  * Copyright 1996-1998, 2003 William Allen Simpson <wsimpson@greendragon.com>
@@ -38,7 +38,6 @@
  */
 
 #include "includes.h"
-#include "moduli.h"
 #include "xmalloc.h"
 #include "log.h"
 
@@ -91,6 +90,19 @@
 #define SHIFT_MEGAWORD  (SHIFT_MEGABYTE-SHIFT_BYTE)
 
 /*
+ * Using virtual memory can cause thrashing.  This should be the largest
+ * number that is supported without a large amount of disk activity --
+ * that would increase the run time from hours to days or weeks!
+ */
+#define LARGE_MINIMUM   (8UL)	/* megabytes */
+
+/*
+ * Do not increase this number beyond the unsigned integer bit size.
+ * Due to a multiple of 4, it must be LESS than 128 (yielding 2**30 bits).
+ */
+#define LARGE_MAXIMUM   (127UL)	/* megabytes */
+
+/*
  * Constant: when used with 32-bit integers, the largest sieve prime
  * has to be less than 2**32.
  */
@@ -114,6 +126,9 @@
  * Prime testing defines
  */
 
+/* Minimum number of primality tests to perform */
+#define TRIAL_MINIMUM           (4)
+
 /*
  * Sieving data (XXX - move to struct)
  */
@@ -235,6 +250,13 @@
 
 	largememory = memory;
 
+	if (memory != 0 &&
+	   (memory < LARGE_MINIMUM || memory > LARGE_MAXIMUM)) {
+		error("Invalid memory amount (min %ld, max %ld)",
+		    LARGE_MINIMUM, LARGE_MAXIMUM);
+		return (-1);
+	}
+
 	/*
 	 * Set power to the length in bits of the prime to be generated.
 	 * This is changed to 1 less than the desired safe prime moduli p.
@@ -430,8 +452,7 @@
  * The result is a list of so-call "safe" primes
  */
 int
-prime_test(FILE *in, FILE *out, u_int32_t trials,
-    u_int32_t generator_wanted)
+prime_test(FILE *in, FILE *out, u_int32_t trials, u_int32_t generator_wanted)
 {
 	BIGNUM *q, *p, *a;
 	BN_CTX *ctx;
@@ -441,6 +462,11 @@
 	time_t time_start, time_stop;
 	int res;
 
+	if (trials < TRIAL_MINIMUM) {
+		error("Minimum primality trials is %d", TRIAL_MINIMUM);
+		return (-1);
+	}
+
 	time(&time_start);
 
 	p = BN_new();
diff --git a/moduli.h b/moduli.h
deleted file mode 100644
index 9cd1cd3..0000000
--- a/moduli.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* $OpenBSD: moduli.h,v 1.1 2003/07/28 09:49:56 djm Exp $ */
-
-#include <sys/types.h>
-#include <openssl/bn.h>
-
-/*
- * Using virtual memory can cause thrashing.  This should be the largest
- * number that is supported without a large amount of disk activity --
- * that would increase the run time from hours to days or weeks!
- */
-#define LARGE_MINIMUM   (8UL)	/* megabytes */
-
-/*
- * Do not increase this number beyond the unsigned integer bit size.
- * Due to a multiple of 4, it must be LESS than 128 (yielding 2**30 bits).
- */
-#define LARGE_MAXIMUM   (127UL)	/* megabytes */
-
-/* Minimum number of primality tests to perform */
-#define TRIAL_MINIMUM           (4)
-
-int gen_candidates(FILE *, int, int, BIGNUM *);
-int prime_test(FILE *, FILE *, u_int32_t, u_int32_t);
diff --git a/ssh-keygen.c b/ssh-keygen.c
index 2dfbb24..5539fe1 100644
--- a/ssh-keygen.c
+++ b/ssh-keygen.c
@@ -12,7 +12,7 @@
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: ssh-keygen.c,v 1.114 2004/05/08 00:21:31 djm Exp $");
+RCSID("$OpenBSD: ssh-keygen.c,v 1.115 2004/05/09 00:06:47 djm Exp $");
 
 #include <openssl/evp.h>
 #include <openssl/pem.h>
@@ -27,7 +27,6 @@
 #include "pathnames.h"
 #include "log.h"
 #include "misc.h"
-#include "moduli.h"
 
 #ifdef SMARTCARD
 #include "scard.h"
@@ -85,6 +84,10 @@
 
 char hostname[MAXHOSTNAMELEN];
 
+/* moduli.c */
+int gen_candidates(FILE *, int, int, BIGNUM *);
+int prime_test(FILE *, FILE *, u_int32_t, u_int32_t);
+
 static void
 ask_filename(struct passwd *pw, const char *prompt)
 {
@@ -911,18 +914,9 @@
 			break;
 		case 'a':
 			trials = atoi(optarg);
-			if (trials < TRIAL_MINIMUM) {
-				fatal("Minimum primality trials is %d",
-				    TRIAL_MINIMUM);
-			}
 			break;
 		case 'M':
 			memory = atoi(optarg);
-			if (memory != 0 &&
-			   (memory < LARGE_MINIMUM || memory > LARGE_MAXIMUM)) {
-				fatal("Invalid memory amount (min %ld, max %ld)",
-				    LARGE_MINIMUM, LARGE_MAXIMUM);
-			}
 			break;
 		case 'G':
 			do_gen_candidates = 1;