Mercurial > noffle
comparison src/database.c @ 247:7a830ce3211e noffle
[svn] *** empty log message ***
author | mirkol |
---|---|
date | Tue, 26 Mar 2002 17:52:01 +0000 |
parents | 4e69e9b722ae |
children | 52f467c7213b |
comparison
equal
deleted
inserted
replaced
246:6f3a55d18659 | 247:7a830ce3211e |
---|---|
1 /* | 1 /* |
2 database.c | 2 database.c |
3 | 3 |
4 $Id: database.c 375 2002-03-15 10:50:33Z bears $ | 4 $Id: database.c 379 2002-03-26 17:52:01Z mirkol $ |
5 | 5 |
6 Uses GNU gdbm library. Using Berkeley db (included in libc6) was | 6 Uses GNU gdbm library. Using Berkeley db (included in libc6) was |
7 cumbersome. It is based on Berkeley db 1.85, which has severe bugs | 7 cumbersome. It is based on Berkeley db 1.85, which has severe bugs |
8 (e.g. it is not recommended to delete or overwrite entries with | 8 (e.g. it is not recommended to delete or overwrite entries with |
9 overflow pages). | 9 overflow pages). |
145 if ( ! p || sscanf( t, "%lu", &db.lastAccess ) != 1 ) | 145 if ( ! p || sscanf( t, "%lu", &db.lastAccess ) != 1 ) |
146 { | 146 { |
147 Log_err( "Entry in database '%s' is corrupt (lastAccess)", msgId ); | 147 Log_err( "Entry in database '%s' is corrupt (lastAccess)", msgId ); |
148 return FALSE; | 148 return FALSE; |
149 } | 149 } |
150 p = Utl_getLn( db.subj, p ); | 150 p = Utl_getHeaderLn( db.subj, p ); |
151 p = Utl_getLn( db.from, p ); | 151 p = Utl_getHeaderLn( db.from, p ); |
152 p = Utl_getLn( db.date, p ); | 152 p = Utl_getHeaderLn( db.date, p ); |
153 p = Utl_getLn( db.ref, p ); | 153 p = Utl_getHeaderLn( db.ref, p ); |
154 p = Utl_getLn( db.xref, p ); | 154 p = Utl_getHeaderLn( db.xref, p ); |
155 if ( ! p ) | 155 if ( ! p ) |
156 { | 156 { |
157 Log_err( "Entry in database '%s' is corrupt (overview)", msgId ); | 157 Log_err( "Entry in database '%s' is corrupt (overview)", msgId ); |
158 return FALSE; | 158 return FALSE; |
159 } | 159 } |
160 p = Utl_getLn( t, p ); | 160 p = Utl_getHeaderLn( t, p ); |
161 if ( ! p || sscanf( t, "%u", &db.bytes ) != 1 ) | 161 if ( ! p || sscanf( t, "%u", &db.bytes ) != 1 ) |
162 { | 162 { |
163 Log_err( "Entry in database '%s' is corrupt (bytes)", msgId ); | 163 Log_err( "Entry in database '%s' is corrupt (bytes)", msgId ); |
164 return FALSE; | 164 return FALSE; |
165 } | 165 } |
166 p = Utl_getLn( t, p ); | 166 p = Utl_getHeaderLn( t, p ); |
167 if ( ! p || sscanf( t, "%u", &db.lines ) != 1 ) | 167 if ( ! p || sscanf( t, "%u", &db.lines ) != 1 ) |
168 { | 168 { |
169 Log_err( "Entry in database '%s' is corrupt (lines)", msgId ); | 169 Log_err( "Entry in database '%s' is corrupt (lines)", msgId ); |
170 return FALSE; | 170 return FALSE; |
171 } | 171 } |