X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=strstr.c;h=b2deeae5c3b1ad0719d5d8ecfd89a8b8958495b2;hb=464bab19acf0aaeb8c5512c2092042162266de2d;hp=5b80fe430a2531a1c558589c077dfb000d52e067;hpb=1575d9fbe5c676709a6e27be33c57d820efea2c4;p=~andy%2Ffetchmail diff --git a/strstr.c b/strstr.c index 5b80fe43..b2deeae5 100644 --- a/strstr.c +++ b/strstr.c @@ -1,70 +1,36 @@ /* - * strstr.c -- return the offset of one string within another. - * - * Copyright (C) 1997 Free Software Foundation, Inc. - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License as published by the Free - * Software Foundation; either version 2, or (at your option) any later - * version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 59 - * Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -/* Written by Philippe De Muyter . */ - -/* - * NAME - * * strstr -- locate first occurence of a substring * - * SYNOPSIS - * - * char *strstr (char *s1, char *s2) - * - * DESCRIPTION - * - * Locates the first occurence in the string pointed to by S1 of the string + * Locates the first occurrence in the string pointed to by S1 of the string * pointed to by S2. Returns a pointer to the substring found, or a NULL * pointer if not found. If S2 points to a string with zero length, the * function returns S1. * - * BUGS - * + * For license terms, see the file COPYING in this directory. */ -char * -strstr (buf, sub) - register char *buf; - register char *sub; +char *strstr(register char *buf, register char *sub) { - register char *bp; + register char *bp; - if (!*sub) - return buf; - for (;;) + if (!*sub) + return buf; + for (;;) { - if (!*buf) - break; - bp = buf; - for (;;) - { - if (!*sub) - return buf; - if (*bp++ != *sub++) + if (!*buf) break; + bp = buf; + for (;;) + { + if (!*sub) + return buf; + if (*bp++ != *sub++) + break; } - sub -= (unsigned long) bp; - sub += (unsigned long) buf; - buf += 1; + sub -= (unsigned long) bp; + sub += (unsigned long) buf; + buf += 1; } - return 0; + return 0; }