userdb.h
上传用户:s81996212
上传日期:2007-01-04
资源大小:722k
文件大小:1k
源码类别:

WEB邮件程序

开发平台:

C/C++

  1. #ifndef userdb_h
  2. #define userdb_h
  3. /*
  4. ** Copyright 1998 - 1999 Double Precision, Inc.
  5. ** See COPYING for distribution information.
  6. */
  7. static const char userdb_rcsid_h[]="$Id: userdb.h,v 1.3 1999/12/15 05:22:48 mrsam Exp $";
  8. #include <sys/types.h>
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. /*
  13. Functions to access local/config/userdb.dat
  14. */
  15. void userdb_init(const char *);
  16. void userdb_close();
  17. char *userdb(const char *); /* Fetch the record */
  18. char *userdbshadow(const char *,
  19. const char *); /* Fetch the userdbshadow record */
  20. /* Extract field from the record */
  21. const char *userdb_get(const char *, /* The record */
  22. const char *, /* Field name */
  23. int *); /* Content length returned */
  24. /* Extract numerical field from record */
  25. unsigned userdb_getu(const char *, /* The record */
  26. const char *, /* Field name */
  27. unsigned); /* Returned if field not found */
  28. /* Extract string into malloced buffer */
  29. char *userdb_gets(const char *, /* The record */
  30. const char *); /* The field */
  31. struct userdbs {
  32. char *udb_name;    /* Account name, ONLY set by userdb_createsuid */
  33. char *udb_gecos; /* GECOS */
  34. char *udb_dir; /* Home directory */
  35. char *udb_shell; /* Shell */
  36. char *udb_mailbox; /* Default mailbox */
  37. char *udb_quota; /* Maildir quota */
  38. uid_t udb_uid;
  39. gid_t udb_gid;
  40. } ;
  41. struct userdbs *userdb_creates(const char *);
  42. struct userdbs *userdb_createsuid(uid_t);
  43. void userdb_frees(struct userdbs *);
  44. #ifdef __cplusplus
  45. } ;
  46. #endif
  47. #endif