Use strsep() in stead of strtok() and restore colons in eg. env. vars.

This commit is contained in:
pk 1993-11-08 13:20:39 +00:00
parent eb5665b095
commit 168c91b813
7 changed files with 24 additions and 19 deletions

View File

@ -1,5 +1,5 @@
/*
* $Id: shlib.c,v 1.3 1993/10/23 00:34:26 pk Exp $
* $Id: shlib.c,v 1.4 1993/11/08 13:21:23 pk Exp $
*/
#include <sys/param.h>
@ -48,9 +48,10 @@ char *paths;
if (paths != NULL)
/* Add search directories from `paths' */
while ((cp = strtok(paths, ":")) != NULL) {
paths = NULL;
while ((cp = strsep(&paths, ":")) != NULL) {
add_search_dir(cp);
if (paths)
*(paths-1) = ':';
}
/* Append standard search directories */

View File

@ -1,4 +1,4 @@
# $Id: Makefile,v 1.2 1993/10/27 00:55:24 pk Exp $
# $Id: Makefile,v 1.3 1993/11/08 13:20:39 pk Exp $
PROG= ld.so
SRCS= mdprologue.S rtld.c shlib.c etc.c md.c
@ -16,7 +16,7 @@ BINDIR= /usr/libexec
.SUFFIXES: .S
$(PROG):
$(LD) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIBS)
$(LD) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIBS) $(LDADD)
.S.o:
$(CPP) $(.IMPSRC) | $(AS) -k -o $(.TARGET) -

View File

@ -27,7 +27,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: rtld.c,v 1.7 1993/11/03 21:35:54 pk Exp $
* $Id: rtld.c,v 1.8 1993/11/08 13:20:40 pk Exp $
*/
#include <sys/param.h>
@ -888,10 +888,11 @@ int *usehints;
if (ld_path != NULL) {
/* Prefer paths from LD_LIBRARY_PATH */
while ((cp = strtok(ld_path, ":")) != NULL) {
while ((cp = strsep(&ld_path, ":")) != NULL) {
ld_path = NULL;
hint = findhint(name, major, minor, cp);
if (ld_path)
*(ld_path-1) = ':';
if (hint)
return hint;
}

View File

@ -1,5 +1,5 @@
/*
* $Id: shlib.c,v 1.3 1993/10/23 00:34:26 pk Exp $
* $Id: shlib.c,v 1.4 1993/11/08 13:21:23 pk Exp $
*/
#include <sys/param.h>
@ -48,9 +48,10 @@ char *paths;
if (paths != NULL)
/* Add search directories from `paths' */
while ((cp = strtok(paths, ":")) != NULL) {
paths = NULL;
while ((cp = strsep(&paths, ":")) != NULL) {
add_search_dir(cp);
if (paths)
*(paths-1) = ':';
}
/* Append standard search directories */

View File

@ -1,4 +1,4 @@
# $Id: Makefile,v 1.2 1993/10/27 00:55:24 pk Exp $
# $Id: Makefile,v 1.3 1993/11/08 13:20:39 pk Exp $
PROG= ld.so
SRCS= mdprologue.S rtld.c shlib.c etc.c md.c
@ -16,7 +16,7 @@ BINDIR= /usr/libexec
.SUFFIXES: .S
$(PROG):
$(LD) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIBS)
$(LD) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIBS) $(LDADD)
.S.o:
$(CPP) $(.IMPSRC) | $(AS) -k -o $(.TARGET) -

View File

@ -27,7 +27,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: rtld.c,v 1.7 1993/11/03 21:35:54 pk Exp $
* $Id: rtld.c,v 1.8 1993/11/08 13:20:40 pk Exp $
*/
#include <sys/param.h>
@ -888,10 +888,11 @@ int *usehints;
if (ld_path != NULL) {
/* Prefer paths from LD_LIBRARY_PATH */
while ((cp = strtok(ld_path, ":")) != NULL) {
while ((cp = strsep(&ld_path, ":")) != NULL) {
ld_path = NULL;
hint = findhint(name, major, minor, cp);
if (ld_path)
*(ld_path-1) = ':';
if (hint)
return hint;
}

View File

@ -1,5 +1,5 @@
/*
* $Id: shlib.c,v 1.3 1993/10/23 00:34:26 pk Exp $
* $Id: shlib.c,v 1.4 1993/11/08 13:21:23 pk Exp $
*/
#include <sys/param.h>
@ -48,9 +48,10 @@ char *paths;
if (paths != NULL)
/* Add search directories from `paths' */
while ((cp = strtok(paths, ":")) != NULL) {
paths = NULL;
while ((cp = strsep(&paths, ":")) != NULL) {
add_search_dir(cp);
if (paths)
*(paths-1) = ':';
}
/* Append standard search directories */