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

WEB邮件程序

开发平台:

C/C++

  1. /*
  2. ** Copyright 1998 - 1999 Double Precision, Inc.
  3. ** See COPYING for distribution information.
  4. */
  5. #if HAVE_CONFIG_H
  6. #include "config.h"
  7. #endif
  8. #include "dbobj.h"
  9. #include "userdb.h"
  10. #include <string.h>
  11. #include <stdlib.h>
  12. #include <errno.h>
  13. static const char rcsid[]="$Id: userdb2.c,v 1.3 1999/12/06 13:31:05 mrsam Exp $";
  14. char *userdbshadow(const char *sh, const char *u)
  15. {
  16. struct dbobj d;
  17. char *p,*q;
  18. size_t l;
  19. dbobj_init(&d);
  20. if (dbobj_open(&d, sh, "R"))
  21. return (0);
  22. q=dbobj_fetch(&d, u, strlen(u), &l, "");
  23. dbobj_close(&d);
  24. if (!q)
  25. {
  26. errno=ENOENT;
  27. return(0);
  28. }
  29. p=malloc(l+1);
  30. if (!p) return (0);
  31. if (l) memcpy(p, q, l);
  32. free(q);
  33. p[l]=0;
  34. return (p);
  35. }