00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef lint
00021 static const char rcsid[] = "$Id: owner.c,v 1.2 2004-10-17 05:14:06 stdarg Exp $";
00022 #endif
00023
00024 #include <eggdrop/eggdrop.h>
00025
00026 static char **owner = NULL;
00027
00028 int egg_setowner(char **_owner)
00029 {
00030 owner = _owner;
00031 return(0);
00032 }
00033
00034 int egg_isowner(const char *handle)
00035 {
00036 int len;
00037 char *powner;
00038
00039 if (!owner || !*owner) return(0);
00040
00041 len = strlen(handle);
00042 if (!len) return(0);
00043
00044 powner = *owner;
00045 while (*powner) {
00046 while (*powner && !isalnum(*powner)) powner++;
00047 if (!*powner) break;
00048 if (!strncasecmp(powner, handle, len)) {
00049 powner += len;
00050 if (!*powner || !isalnum(*powner)) return(1);
00051 }
00052 while (*powner && isalnum(*powner)) powner++;
00053 }
00054 return(0);
00055 }