summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/txt_db/txt_db.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/txt_db/txt_db.c')
-rw-r--r--src/lib/libcrypto/txt_db/txt_db.c39
1 files changed, 14 insertions, 25 deletions
diff --git a/src/lib/libcrypto/txt_db/txt_db.c b/src/lib/libcrypto/txt_db/txt_db.c
index e34ce4efa9..9a9fa5ce55 100644
--- a/src/lib/libcrypto/txt_db/txt_db.c
+++ b/src/lib/libcrypto/txt_db/txt_db.c
@@ -60,17 +60,15 @@
60#include <stdlib.h> 60#include <stdlib.h>
61#include <string.h> 61#include <string.h>
62#include "cryptlib.h" 62#include "cryptlib.h"
63#include "buffer.h" 63#include <openssl/buffer.h>
64#include "txt_db.h" 64#include <openssl/txt_db.h>
65 65
66#undef BUFSIZE 66#undef BUFSIZE
67#define BUFSIZE 512 67#define BUFSIZE 512
68 68
69char *TXT_DB_version="TXT_DB part of SSLeay 0.9.0b 29-Jun-1998"; 69const char *TXT_DB_version="TXT_DB" OPENSSL_VERSION_PTEXT;
70 70
71TXT_DB *TXT_DB_read(in,num) 71TXT_DB *TXT_DB_read(BIO *in, int num)
72BIO *in;
73int num;
74 { 72 {
75 TXT_DB *ret=NULL; 73 TXT_DB *ret=NULL;
76 int er=1; 74 int er=1;
@@ -158,7 +156,7 @@ int num;
158 if ((n != num) || (*f != '\0')) 156 if ((n != num) || (*f != '\0'))
159 { 157 {
160#if !defined(NO_STDIO) && !defined(WIN16) /* temporaty fix :-( */ 158#if !defined(NO_STDIO) && !defined(WIN16) /* temporaty fix :-( */
161 fprintf(stderr,"wrong number of fields on line %ld\n",ln); 159 fprintf(stderr,"wrong number of fields on line %ld (looking for field %d, got %d, '%s' left)\n",ln,num,n,f);
162#endif 160#endif
163 er=2; 161 er=2;
164 goto err; 162 goto err;
@@ -191,10 +189,7 @@ err:
191 return(ret); 189 return(ret);
192 } 190 }
193 191
194char **TXT_DB_get_by_index(db,idx,value) 192char **TXT_DB_get_by_index(TXT_DB *db, int idx, char **value)
195TXT_DB *db;
196int idx;
197char **value;
198 { 193 {
199 char **ret; 194 char **ret;
200 LHASH *lh; 195 LHASH *lh;
@@ -215,12 +210,8 @@ char **value;
215 return(ret); 210 return(ret);
216 } 211 }
217 212
218int TXT_DB_create_index(db,field,qual,hash,cmp) 213int TXT_DB_create_index(TXT_DB *db, int field, int (*qual)(),
219TXT_DB *db; 214 unsigned long (*hash)(), int (*cmp)())
220int field;
221int (*qual)();
222unsigned long (*hash)();
223int (*cmp)();
224 { 215 {
225 LHASH *idx; 216 LHASH *idx;
226 char *r; 217 char *r;
@@ -256,9 +247,7 @@ int (*cmp)();
256 return(1); 247 return(1);
257 } 248 }
258 249
259long TXT_DB_write(out,db) 250long TXT_DB_write(BIO *out, TXT_DB *db)
260BIO *out;
261TXT_DB *db;
262 { 251 {
263 long i,j,n,nn,l,tot=0; 252 long i,j,n,nn,l,tot=0;
264 char *p,**pp,*f; 253 char *p,**pp,*f;
@@ -306,9 +295,7 @@ err:
306 return(ret); 295 return(ret);
307 } 296 }
308 297
309int TXT_DB_insert(db,row) 298int TXT_DB_insert(TXT_DB *db, char **row)
310TXT_DB *db;
311char **row;
312 { 299 {
313 int i; 300 int i;
314 char **r; 301 char **r;
@@ -350,12 +337,14 @@ err:
350 return(0); 337 return(0);
351 } 338 }
352 339
353void TXT_DB_free(db) 340void TXT_DB_free(TXT_DB *db)
354TXT_DB *db;
355 { 341 {
356 int i,n; 342 int i,n;
357 char **p,*max; 343 char **p,*max;
358 344
345 if(db == NULL)
346 return;
347
359 if (db->index != NULL) 348 if (db->index != NULL)
360 { 349 {
361 for (i=db->num_fields-1; i>=0; i--) 350 for (i=db->num_fields-1; i>=0; i--)