1
0
Files
irix-657m-src/eoe/cmd/sccs/lib/comobj/chkid.c
2022-09-29 17:59:04 +03:00

87 lines
1.7 KiB
C

/* Copyright (c) 1990, 1991 UNIX System Laboratories, Inc. */
/* Copyright (c) 1988 AT&T */
/* All Rights Reserved */
/* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF */
/* UNIX System Laboratories, Inc. */
/* The copyright notice above does not evidence any */
/* actual or intended publication of such source code. */
/* #ident "@(#)sccs:lib/comobj/chkid.c 6.4" */
#ident "$Revision: 1.5 $"
# include "ctype.h"
# include "../../hdr/defines.h"
char *strchr();
chkid(line,idstr)
char *line;
char *idstr;
{
register char *lp;
register char *p;
extern int Did_id;
unsigned strlen();
int strncmp();
if (!Did_id && (lp = strchr(line,'%') ) )
if (!idstr || idstr[0]=='\0' )
for( ; *lp != 0; lp++) {
if(lp[0] == '%' && lp[1] != 0 && lp[2] == '%')
if (isupper(lp[1]))
switch (lp[1]) {
case 'J':
break;
case 'K':
break;
case 'N':
break;
case 'O':
break;
case 'V':
break;
case 'X':
break;
default:
return(Did_id++);
}
}
else {
if ( (lp = strchr(idstr,'%')) == NULL ) return(Did_id);
for( ; *lp != 0; lp++) {
if(lp[0] == '%' && lp[1] != 0 && lp[2] == '%')
if (isupper(lp[1]))
switch (lp[1]) {
case 'J':
break;
case 'K':
break;
case 'N':
break;
case 'O':
break;
case 'V':
break;
case 'X':
break;
default:
Did_id++;
}
}
if (!Did_id) return(Did_id); /* There's no keyword in idstr */
Did_id = 0;
p=idstr;
lp=line;
while(lp=strchr(lp,*p))
if(!(strncmp(lp,p,strlen(p))))
return(Did_id++);
else
++lp;
}
return(Did_id);
}