1*24193Skre /* 2*24193Skre * Copyright (c) 1980 Regents of the University of California. 3*24193Skre * All rights reserved. The Berkeley software License Agreement 4*24193Skre * specifies the terms and conditions for redistribution. 5*24193Skre */ 6*24193Skre 7*24193Skre /* 8*24193Skre * Sys5 compat routine 9*24193Skre */ 10*24193Skre 11*24193Skre #ifndef lint 12*24193Skre static char sccsid[] = "@(#)strtok.c 5.1 (Berkeley) 85/08/05"; 13*24193Skre #endif 14*24193Skre 15*24193Skre char * 16*24193Skre strtok(s, sep) 17*24193Skre register char *s, *sep; 18*24193Skre { 19*24193Skre register char *p; 20*24193Skre register c; 21*24193Skre static char *lasts; 22*24193Skre 23*24193Skre if (s == 0) 24*24193Skre s = lasts; 25*24193Skre if (s == 0) 26*24193Skre return (0); 27*24193Skre 28*24193Skre while (c = *s) { 29*24193Skre if (!index(sep, c)) 30*24193Skre break; 31*24193Skre s++; 32*24193Skre } 33*24193Skre 34*24193Skre if (c == '\0') { 35*24193Skre lasts = 0; 36*24193Skre return (0); 37*24193Skre } 38*24193Skre 39*24193Skre for (p = s; c = *++p; ) 40*24193Skre if (index(sep, c)) 41*24193Skre break; 42*24193Skre 43*24193Skre if (c == '\0') 44*24193Skre lasts = 0; 45*24193Skre else { 46*24193Skre *p++ = '\0'; 47*24193Skre lasts = p; 48*24193Skre } 49*24193Skre return (s); 50*24193Skre } 51