Deleted Added
full compact
smdb1.c (66494) smdb1.c (71345)
1/*
2** Copyright (c) 1999-2000 Sendmail, Inc. and its suppliers.
3** All rights reserved.
4**
5** By using this file, you agree to the terms and conditions set
6** forth in the LICENSE file which can be found at the top level of
7** the sendmail distribution.
8*/
9
10#ifndef lint
1/*
2** Copyright (c) 1999-2000 Sendmail, Inc. and its suppliers.
3** All rights reserved.
4**
5** By using this file, you agree to the terms and conditions set
6** forth in the LICENSE file which can be found at the top level of
7** the sendmail distribution.
8*/
9
10#ifndef lint
11static char id[] = "@(#)$Id: smdb1.c,v 8.43.4.1 2000/08/24 17:08:00 gshapiro Exp $";
11static char id[] = "@(#)$Id: smdb1.c,v 8.43.4.3 2000/10/05 23:06:30 gshapiro Exp $";
12#endif /* ! lint */
13
14#include <unistd.h>
15#include <stdlib.h>
16#include <fcntl.h>
17
18#include <sendmail/sendmail.h>
19#include <libsmdb/smdb.h>

--- 150 unchanged lines hidden (view full) ---

170
171int
172smdb1_del(database, key, flags)
173 SMDB_DATABASE *database;
174 SMDB_DBENT *key;
175 u_int flags;
176{
177 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;
12#endif /* ! lint */
13
14#include <unistd.h>
15#include <stdlib.h>
16#include <fcntl.h>
17
18#include <sendmail/sendmail.h>
19#include <libsmdb/smdb.h>

--- 150 unchanged lines hidden (view full) ---

170
171int
172smdb1_del(database, key, flags)
173 SMDB_DATABASE *database;
174 SMDB_DBENT *key;
175 u_int flags;
176{
177 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;
178 DBT dbkey;
178
179
179 return db->del(db, &key->db, flags);
180 memset(&dbkey, '\0', sizeof dbkey);
181 dbkey.data = key->data;
182 dbkey.size = key->size;
183 return db->del(db, &dbkey, flags);
180}
181
182int
183smdb1_fd(database, fd)
184 SMDB_DATABASE *database;
185 int *fd;
186{
187 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;

--- 19 unchanged lines hidden (view full) ---

207smdb1_get(database, key, data, flags)
208 SMDB_DATABASE *database;
209 SMDB_DBENT *key;
210 SMDB_DBENT *data;
211 u_int flags;
212{
213 int result;
214 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;
184}
185
186int
187smdb1_fd(database, fd)
188 SMDB_DATABASE *database;
189 int *fd;
190{
191 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;

--- 19 unchanged lines hidden (view full) ---

211smdb1_get(database, key, data, flags)
212 SMDB_DATABASE *database;
213 SMDB_DBENT *key;
214 SMDB_DBENT *data;
215 u_int flags;
216{
217 int result;
218 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;
219 DBT dbkey, dbdata;
215
220
216 result = db->get(db, &key->db, &data->db, flags);
221 memset(&dbdata, '\0', sizeof dbdata);
222 memset(&dbkey, '\0', sizeof dbkey);
223 dbkey.data = key->data;
224 dbkey.size = key->size;
225
226 result = db->get(db, &dbkey, &dbdata, flags);
217 if (result != 0)
218 {
219 if (result == 1)
220 return SMDBE_NOT_FOUND;
221 return errno;
222 }
227 if (result != 0)
228 {
229 if (result == 1)
230 return SMDBE_NOT_FOUND;
231 return errno;
232 }
233 data->data = dbdata.data;
234 data->size = dbdata.size;
223 return SMDBE_OK;
224}
225
226int
227smdb1_put(database, key, data, flags)
228 SMDB_DATABASE *database;
229 SMDB_DBENT *key;
230 SMDB_DBENT *data;
231 u_int flags;
232{
233 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;
235 return SMDBE_OK;
236}
237
238int
239smdb1_put(database, key, data, flags)
240 SMDB_DATABASE *database;
241 SMDB_DBENT *key;
242 SMDB_DBENT *data;
243 u_int flags;
244{
245 DB *db = ((SMDB_DB1_DATABASE *) database->smdb_impl)->smdb1_db;
246 DBT dbkey, dbdata;
234
247
235 return db->put(db, &key->db, &data->db,
236 smdb_put_flags_to_db1_flags(flags));
248 memset(&dbdata, '\0', sizeof dbdata);
249 memset(&dbkey, '\0', sizeof dbkey);
250 dbkey.data = key->data;
251 dbkey.size = key->size;
252 dbdata.data = data->data;
253 dbdata.size = data->size;
254
255 return db->put(db, &dbkey, &dbdata,
256 smdb_put_flags_to_db1_flags(flags));
237}
238
239int
240smdb1_set_owner(database, uid, gid)
241 SMDB_DATABASE *database;
242 uid_t uid;
243 gid_t gid;
244{

--- 59 unchanged lines hidden (view full) ---

304 SMDB_DBENT *value;
305 SMDB_FLAG flags;
306{
307 int db1_flags;
308 int result;
309 SMDB_DB1_CURSOR *db1_cursor = (SMDB_DB1_CURSOR *) cursor->smdbc_impl;
310 SMDB_DB1_DATABASE *db1 = db1_cursor->db;
311 DB *db = db1->smdb1_db;
257}
258
259int
260smdb1_set_owner(database, uid, gid)
261 SMDB_DATABASE *database;
262 uid_t uid;
263 gid_t gid;
264{

--- 59 unchanged lines hidden (view full) ---

324 SMDB_DBENT *value;
325 SMDB_FLAG flags;
326{
327 int db1_flags;
328 int result;
329 SMDB_DB1_CURSOR *db1_cursor = (SMDB_DB1_CURSOR *) cursor->smdbc_impl;
330 SMDB_DB1_DATABASE *db1 = db1_cursor->db;
331 DB *db = db1->smdb1_db;
332 DBT dbkey, dbdata;
312
333
334 memset(&dbdata, '\0', sizeof dbdata);
335 memset(&dbkey, '\0', sizeof dbkey);
336
313 db1_flags = smdb_cursor_get_flags_to_smdb1(flags);
337 db1_flags = smdb_cursor_get_flags_to_smdb1(flags);
314 result = db->seq(db, &key->db, &value->db, db1_flags);
338 result = db->seq(db, &dbkey, &dbdata, db1_flags);
315 if (result == -1)
316 return errno;
317 if (result == 1)
318 return SMDBE_LAST_ENTRY;
339 if (result == -1)
340 return errno;
341 if (result == 1)
342 return SMDBE_LAST_ENTRY;
343 value->data = dbdata.data;
344 value->size = dbdata.size;
345 key->data = dbkey.data;
346 key->size = dbkey.size;
319 return SMDBE_OK;
320}
321
322int
323smdb1_cursor_put(cursor, key, value, flags)
324 SMDB_CURSOR *cursor;
325 SMDB_DBENT *key;
326 SMDB_DBENT *value;
327 SMDB_FLAG flags;
328{
329 SMDB_DB1_CURSOR *db1_cursor = (SMDB_DB1_CURSOR *) cursor->smdbc_impl;
330 SMDB_DB1_DATABASE *db1 = db1_cursor->db;
331 DB *db = db1->smdb1_db;
347 return SMDBE_OK;
348}
349
350int
351smdb1_cursor_put(cursor, key, value, flags)
352 SMDB_CURSOR *cursor;
353 SMDB_DBENT *key;
354 SMDB_DBENT *value;
355 SMDB_FLAG flags;
356{
357 SMDB_DB1_CURSOR *db1_cursor = (SMDB_DB1_CURSOR *) cursor->smdbc_impl;
358 SMDB_DB1_DATABASE *db1 = db1_cursor->db;
359 DB *db = db1->smdb1_db;
360 DBT dbkey, dbdata;
332
361
333 return db->put(db, &key->db, &value->db, R_CURSOR);
362 memset(&dbdata, '\0', sizeof dbdata);
363 memset(&dbkey, '\0', sizeof dbkey);
364 dbkey.data = key->data;
365 dbkey.size = key->size;
366 dbdata.data = value->data;
367 dbdata.size = value->size;
368
369 return db->put(db, &dbkey, &dbdata, R_CURSOR);
334}
335
336int
337smdb1_cursor(database, cursor, flags)
338 SMDB_DATABASE *database;
339 SMDB_CURSOR **cursor;
340 u_int flags;
341{

--- 177 unchanged lines hidden ---
370}
371
372int
373smdb1_cursor(database, cursor, flags)
374 SMDB_DATABASE *database;
375 SMDB_CURSOR **cursor;
376 u_int flags;
377{

--- 177 unchanged lines hidden ---