/* Copyright (c) 1984 AT&T */ /* All Rights Reserved */ /* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T */ /* The copyright notice above does not evidence any */ /* actual or intended publication of such source code. */ /* #ident "@(#)libPW:index.c 3.3" */ #ident "$Header: /proj/irix6.5.7m/isms/eoe/cmd/sccs/lib/comobj/RCS/index.c,v 1.3 1995/12/30 02:19:01 ack Exp $" /* If `s2' is a substring of `s1' return the offset of the first occurrence of `s2' in `s1', else return -1. */ index(as1,as2) char *as1,*as2; { register char *s1,*s2,c; int offset; s1 = as1; s2 = as2; c = *s2; while (*s1) if (*s1++ == c) { offset = s1 - as1 - 1; s2++; while ((c = *s2++) == *s1++ && c) ; if (c == 0) return(offset); s1 = offset + as1 + 1; s2 = as2; c = *s2; } return(-1); }