1 /* 2 * Copyright (c) 2001-2002 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 * $Id: mbdb.h,v 1.6 2002/05/24 20:50:14 gshapiro Exp $ 10 */ 11 12 #pragma ident "%Z%%M% %I% %E% SMI" 13 14 #ifndef SM_MBDB_H 15 # define SM_MBDB_H 16 17 #include <pwd.h> 18 #include <sm/types.h> 19 #include <sm/limits.h> 20 21 /* 22 ** This is an abstract interface for looking up local mail recipients. 23 */ 24 25 #define MBDB_MAXNAME 256 26 #define SM_NO_UID ((uid_t)(-1)) 27 #define SM_NO_GID ((gid_t)(-1)) 28 29 typedef struct 30 { 31 uid_t mbdb_uid; 32 gid_t mbdb_gid; 33 char mbdb_name[MBDB_MAXNAME]; 34 char mbdb_fullname[MBDB_MAXNAME]; 35 char mbdb_homedir[PATH_MAX]; 36 char mbdb_shell[PATH_MAX]; 37 } SM_MBDB_T; 38 39 extern int sm_mbdb_initialize __P((char *)); 40 extern void sm_mbdb_terminate __P((void)); 41 extern int sm_mbdb_lookup __P((char *, SM_MBDB_T *)); 42 extern void sm_mbdb_frompw __P((SM_MBDB_T *, struct passwd *)); 43 extern void sm_pwfullname __P((char *, char *, char *, size_t)); 44 45 #endif /* ! SM_MBDB_H */ 46