#ifndef __NISTORE_H__
#define __NISTORE_H__
#include <NetInfo/dsstore.h>
dsstatus nistore_open(dsstore **s, char *dname, u_int32_t flags);
dsstatus nistore_close(dsstore *s);
dsstatus nistore_authenticate(dsstore *s, dsdata *user, dsdata *password);
dsrecord *nistore_fetch(dsstore *s, u_int32_t dsid);
dsstatus nistore_save(dsstore *s, dsrecord *r);
dsstatus nistore_save_attribute(dsstore *s, dsrecord *r, dsattribute *a, u_int32_t asel);
dsstatus nistore_remove(dsstore *s, u_int32_t dsid);
dsstatus nistore_list(dsstore *s, u_int32_t dsid, dsdata *key, u_int32_t asel, dsrecord **list);
dsstatus nistore_match(dsstore *s, u_int32_t dsid, dsdata *key, dsdata *val, u_int32_t asel, u_int32_t *match);
u_int32_t nistore_record_version(dsstore *s, u_int32_t dsid);
u_int32_t nistore_version_record(dsstore *s, u_int32_t vers);
u_int32_t nistore_record_serial(dsstore *s, u_int32_t dsid);
u_int32_t nistore_record_super(dsstore *s, u_int32_t dsid);
u_int32_t nistore_version(dsstore *s);
dsstatus nistore_vital_statistics(dsstore *s, u_int32_t dsid, u_int32_t *vers, u_int32_t *serial, u_int32_t *super);
dsrecord *nistore_statistics(dsstore *s);
#endif __NISTORE_H__