From: Jonathan McDowell Date: Mon, 31 May 2004 23:48:21 +0000 (+0000) Subject: cscvs to tla changeset 128 X-Git-Tag: 0.3.0~56 X-Git-Url: https://the.earth.li/gitweb/?p=onak.git;a=commitdiff_plain;h=f18acf888a15b69e47f2968f08c055f1e06b7d04 cscvs to tla changeset 128 Author: noodles Date: 2004/05/27 03:33:24 Move makewordlist to its own file so we can use it elsewhere (dsilvers). --- diff --git a/Makefile b/Makefile index c980e4c..733daf4 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # # Makefile for onak. # -# $Id: Makefile,v 1.19 2004/05/27 01:25:37 noodles Exp $ +# $Id: Makefile,v 1.20 2004/05/27 03:33:24 noodles Exp $ # CC = gcc @@ -10,7 +10,7 @@ CFLAGS += -Wall -pedantic -g -I/usr/local/include # Uncomment to enable profiling. #LDFLAGS += -pg # Can be "pg" for Postgresql, "file" for flat files or "db2" for pksd db2 style. -DBTYPE = db3 +DBTYPE = fs # If using DBTYPE of "file" then comment the following line out. #LIBS = -L/usr/local/lib -lpq LIBS = -L/usr/local/lib -ldb3 @@ -18,11 +18,11 @@ LIBS = -L/usr/local/lib -ldb3 PROGS = add lookup gpgwww onak splitkeys CORE_OBJS = armor.o charfuncs.o decodekey.o getcgi.o hash.o keydb_$(DBTYPE).o \ keyid.o keyindex.o ll.o mem.o onak-conf.o parsekey.o sha.o md5.o \ - log.o photoid.o + log.o photoid.o wordlist.o OBJS = merge.o stats.o sendsync.o $(CORE_OBJS) SRCS = armor.c parsekey.c merge.c keyid.c md5.c sha.c main.c getcgi.c stats.c \ keyindex.c mem.c lookup.c add.c keydb_$(DBTYPE).c ll.c hash.c \ - gpgwww.c onak-conf.c charfuncs.c sendsync.c log.c photoid.c + gpgwww.c onak-conf.c charfuncs.c sendsync.c log.c photoid.c wordlist.o all: .depend $(PROGS) testparse maxpath sixdegrees splitkeys diff --git a/keydb_db3.c b/keydb_db3.c index e25b94e..464dcc9 100644 --- a/keydb_db3.c +++ b/keydb_db3.c @@ -5,7 +5,7 @@ * * Copyright 2002 Project Purple * - * $Id: keydb_db3.c,v 1.25 2004/05/26 17:46:21 noodles Exp $ + * $Id: keydb_db3.c,v 1.26 2004/05/27 03:33:24 noodles Exp $ */ #include @@ -30,6 +30,7 @@ #include "log.h" #include "onak-conf.h" #include "parsekey.h" +#include "wordlist.h" /** * dbenv - our database environment. @@ -65,56 +66,6 @@ DB *keydb(uint64_t keyid) return(dbconns[keytrun % numdbs]); } -/** - * makewordlist - Takes a string and splits it into a set of unique words. - * @wordlist: The current word list. - * @words: The string to split and add. - * - * We take words and split it on non alpha numeric characters. These get - * added to the word list if they're not already present. If the wordlist - * is NULL then we start a new list, otherwise it's search for already - * added words. Note that words is modified in the process of scanning. - * - * Returns the new word list. - */ -struct ll *makewordlist(struct ll *wordlist, char *word) -{ - char *start = NULL; - char *end = NULL; - - /* - * Walk through the words string, spliting on non alphanumerics and - * then checking if the word already exists in the list. If not then - * we add it. - */ - end = word; - while (end != NULL && *end != 0) { - start = end; - while (*start != 0 && !isalnum(*start)) { - start++; - } - end = start; - while (*end != 0 && isalnum(*end)) { - *end = tolower(*end); - end++; - } - if (end - start > 1) { - if (*end != 0) { - *end = 0; - end++; - } - - if (llfind(wordlist, start, - strcmp) == NULL) { - wordlist = lladd(wordlist, - start); - } - } - } - - return wordlist; -} - /** * initdb - Initialize the key database. *