From: millert Date: Mon, 5 May 1997 14:32:16 +0000 (+0000) Subject: Add strchr.c X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=404f71c362294c35c891af4d4d71a003359cd1e1;p=openbsd Add strchr.c --- diff --git a/sys/lib/libsa/Makefile b/sys/lib/libsa/Makefile index d6b629bc456..cf9c468125a 100644 --- a/sys/lib/libsa/Makefile +++ b/sys/lib/libsa/Makefile @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.18 1997/04/13 21:44:46 weingart Exp $ +# $OpenBSD: Makefile,v 1.19 1997/05/05 14:32:18 millert Exp $ # $NetBSD: Makefile,v 1.13 1996/10/02 16:19:51 ws Exp $ LIB= sa @@ -21,8 +21,8 @@ CPPFLAGS+= -D__INTERNAL_LIBSA_CREAD .endif # stand routines -SRCS+= alloc.c memcpy.c exit.c exec.c getfile.c gets.c globals.c \ - printf.c strerror.c strcmp.c memset.c memcmp.c strncpy.c strncmp.c +SRCS+= alloc.c memcpy.c exit.c exec.c getfile.c gets.c globals.c printf.c \ + strerror.c strcmp.c memset.c memcmp.c strncpy.c strncmp.c strchr.c # math from libkern SRCS+= divdi3.c qdivrem.c diff --git a/sys/lib/libsa/strchr.c b/sys/lib/libsa/strchr.c new file mode 100644 index 00000000000..1d97ffadf08 --- /dev/null +++ b/sys/lib/libsa/strchr.c @@ -0,0 +1,57 @@ +/* $OpenBSD: strchr.c,v 1.1 1997/05/05 14:32:16 millert Exp $ */ + +/*- + * Copyright (c) 1990 The Regents of the University of California. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#if defined(LIBC_SCCS) && !defined(lint) +static char *rcsid = "$OpenBSD: strchr.c,v 1.1 1997/05/05 14:32:16 millert Exp $"; +#endif /* LIBC_SCCS and not lint */ + +#ifndef _KERNEL +#include +#else +#include +#endif + +char * +strchr(p, ch) + register const char *p, ch; +{ + for (;; ++p) { + if (*p == ch) + return((char *)p); + if (!*p) + return((char *)NULL); + } + /* NOTREACHED */ +}