rework for pmake 2.1
[unix-history] / usr / src / include / ndbm.h
index 15d143b..8513585 100644 (file)
@@ -1,4 +1,10 @@
-/*     ndbm.h  4.4     84/09/05        */
+/*
+ * Copyright (c) 1983 Regents of the University of California.
+ * All rights reserved.  The Berkeley software License Agreement
+ * specifies the terms and conditions for redistribution.
+ *
+ *     @(#)ndbm.h      5.2 (Berkeley) %G%
+ */
 
 /*
  * Hashed key data base library.
 
 /*
  * Hashed key data base library.
@@ -31,6 +37,10 @@ typedef struct {
        /* use this one at your own risk! */
 #define dbm_clearerr(db)       ((db)->dbm_flags &= ~_DBM_IOERR)
 
        /* use this one at your own risk! */
 #define dbm_clearerr(db)       ((db)->dbm_flags &= ~_DBM_IOERR)
 
+/* for flock(2) and fstat(2) */
+#define dbm_dirfno(db) ((db)->dbm_dirf)
+#define dbm_pagfno(db) ((db)->dbm_pagf)
+
 typedef struct {
        char    *dptr;
        int     dsize;
 typedef struct {
        char    *dptr;
        int     dsize;
@@ -42,11 +52,22 @@ typedef struct {
 #define DBM_INSERT     0
 #define DBM_REPLACE    1
 
 #define DBM_INSERT     0
 #define DBM_REPLACE    1
 
-DBM    *dbm_open();
-void   dbm_close();
-datum  dbm_fetch();
-datum  dbm_firstkey();
-datum  dbm_nextkey();
-long   dbm_forder();
-int    dbm_delete();
-int    dbm_store();
+#ifdef __STDC__
+extern DBM *dbm_open(const char *, int, int);
+extern void dbm_close(DBM *);
+extern datum dbm_fetch(DBM *, datum);
+extern datum dbm_firstkey(DBM *);
+extern datum dbm_nextkey(DBM *);
+extern long dbm_forder(DBM *, datum);
+extern int dbm_delete(DBM *, datum);
+extern int dbm_store(DBM *, datum, datum, int);
+#else
+extern DBM *dbm_open();
+extern void dbm_close();
+extern datum dbm_fetch();
+extern datum dbm_firstkey();
+extern datum dbm_nextkey();
+extern long dbm_forder();
+extern int dbm_delete();
+extern int dbm_store();
+#endif