# HG changeset patch
# User Mychaela Falconia <falcon@freecalypso.org>
# Date 1615937856 0
# Node ID fa81221ac9b6345a2053abc7f218f52f9acb40b2
# Parent  ca8a6f95826a8f1850d0b219c2d55fc9104acf71
retrieval of required db fields moved into libutil

diff -r ca8a6f95826a -r fa81221ac9b6 libutil/dbread.c
--- a/libutil/dbread.c	Tue Mar 16 23:22:37 2021 +0000
+++ b/libutil/dbread.c	Tue Mar 16 23:37:36 2021 +0000
@@ -67,6 +67,20 @@
 	return 0;
 }
 
+char *
+dbread_find_key_req(dbs, sought_key)
+	struct dbread_state *dbs;
+	char *sought_key;
+{
+	char *val;
+
+	val = dbread_find_key(dbs, sought_key);
+	if (val)
+		return val;
+	fprintf(stderr, "error: card record has no %s field\n", sought_key);
+	return 0;
+}
+
 dbread_find_record(filename, dbs, sought_key, sought_value)
 	char *filename, *sought_key, *sought_value;
 	struct dbread_state *dbs;
diff -r ca8a6f95826a -r fa81221ac9b6 libutil/dbread.h
--- a/libutil/dbread.h	Tue Mar 16 23:22:37 2021 +0000
+++ b/libutil/dbread.h	Tue Mar 16 23:37:36 2021 +0000
@@ -18,3 +18,4 @@
 };
 
 extern char *dbread_find_key();
+extern char *dbread_find_key_req();
diff -r ca8a6f95826a -r fa81221ac9b6 utils/sws-card-lookup.c
--- a/utils/sws-card-lookup.c	Tue Mar 16 23:22:37 2021 +0000
+++ b/utils/sws-card-lookup.c	Tue Mar 16 23:37:36 2021 +0000
@@ -48,11 +48,9 @@
 {
 	char *val;
 
-	val = dbread_find_key(&dbs, key);
-	if (!val) {
-		fprintf(stderr, "error: card record has no %s field\n", key);
-		exit(1);
-	}
+	val = dbread_find_key_req(&dbs, key);
+	if (!val)
+		exit(1);	/* error msg already printed */
 	puts(val);
 }