summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormillert <>2015-05-15 22:29:37 +0000
committermillert <>2015-05-15 22:29:37 +0000
commit1de10ca64487df142a028ce8310115c52be75a23 (patch)
tree6bbb15fabbabd9646670c0e68b98acb9bd443788
parent5e21cdbca851c965cd196f1d77d376bda7ff1e4f (diff)
downloadopenbsd-1de10ca64487df142a028ce8310115c52be75a23.tar.gz
openbsd-1de10ca64487df142a028ce8310115c52be75a23.tar.bz2
openbsd-1de10ca64487df142a028ce8310115c52be75a23.zip
Make index/rindex weak aliases of strchr/strrchr since they are not
part of the ISO C standard and have also been dropped from POSIX. OK guenther@ kettenis@
-rw-r--r--src/lib/libc/string/index.c43
-rw-r--r--src/lib/libc/string/rindex.c45
-rw-r--r--src/lib/libc/string/strchr.c4
-rw-r--r--src/lib/libc/string/strrchr.c4
4 files changed, 6 insertions, 90 deletions
diff --git a/src/lib/libc/string/index.c b/src/lib/libc/string/index.c
deleted file mode 100644
index ebae15afe7..0000000000
--- a/src/lib/libc/string/index.c
+++ /dev/null
@@ -1,43 +0,0 @@
1/* $OpenBSD: index.c,v 1.6 2014/11/30 19:43:56 deraadt Exp $ */
2/*-
3 * Copyright (c) 1990 The Regents of the University of California.
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. Neither the name of the University nor the names of its contributors
15 * may be used to endorse or promote products derived from this software
16 * without specific prior written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 * SUCH DAMAGE.
29 */
30
31#include <string.h>
32
33char *
34index(const char *p, int ch)
35{
36 for (;; ++p) {
37 if (*p == ch)
38 return((char *)p);
39 if (!*p)
40 return((char *)NULL);
41 }
42 /* NOTREACHED */
43}
diff --git a/src/lib/libc/string/rindex.c b/src/lib/libc/string/rindex.c
deleted file mode 100644
index 23716f6af3..0000000000
--- a/src/lib/libc/string/rindex.c
+++ /dev/null
@@ -1,45 +0,0 @@
1/* $OpenBSD: rindex.c,v 1.7 2014/11/30 19:43:56 deraadt Exp $ */
2/*
3 * Copyright (c) 1988 Regents of the University of California.
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. Neither the name of the University nor the names of its contributors
15 * may be used to endorse or promote products derived from this software
16 * without specific prior written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 * SUCH DAMAGE.
29 */
30
31#include <string.h>
32
33char *
34rindex(const char *p, int ch)
35{
36 char *save;
37
38 for (save = NULL;; ++p) {
39 if (*p == ch)
40 save = (char *)p;
41 if (!*p)
42 return(save);
43 }
44 /* NOTREACHED */
45}
diff --git a/src/lib/libc/string/strchr.c b/src/lib/libc/string/strchr.c
index 20f2faeb11..596e407c9b 100644
--- a/src/lib/libc/string/strchr.c
+++ b/src/lib/libc/string/strchr.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: strchr.c,v 1.1 2014/11/30 19:43:57 deraadt Exp $ */ 1/* $OpenBSD: strchr.c,v 1.2 2015/05/15 22:29:37 millert Exp $ */
2/*- 2/*-
3 * Copyright (c) 1990 The Regents of the University of California. 3 * Copyright (c) 1990 The Regents of the University of California.
4 * All rights reserved. 4 * All rights reserved.
@@ -30,6 +30,8 @@
30 30
31#include <string.h> 31#include <string.h>
32 32
33__weak_alias(index, strchr);
34
33char * 35char *
34strchr(const char *p, int ch) 36strchr(const char *p, int ch)
35{ 37{
diff --git a/src/lib/libc/string/strrchr.c b/src/lib/libc/string/strrchr.c
index b2f17fba28..181f56ea69 100644
--- a/src/lib/libc/string/strrchr.c
+++ b/src/lib/libc/string/strrchr.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: strrchr.c,v 1.1 2014/11/30 19:43:57 deraadt Exp $ */ 1/* $OpenBSD: strrchr.c,v 1.2 2015/05/15 22:29:37 millert Exp $ */
2/* 2/*
3 * Copyright (c) 1988 Regents of the University of California. 3 * Copyright (c) 1988 Regents of the University of California.
4 * All rights reserved. 4 * All rights reserved.
@@ -30,6 +30,8 @@
30 30
31#include <string.h> 31#include <string.h>
32 32
33__weak_alias(rindex, strrchr);
34
33char * 35char *
34strrchr(const char *p, int ch) 36strrchr(const char *p, int ch)
35{ 37{