1*9a747e4fSDavid du Colombier #include <u.h> 2*9a747e4fSDavid du Colombier #include <libc.h> 3*9a747e4fSDavid du Colombier 4*9a747e4fSDavid du Colombier int strcomment = '#'; 5*9a747e4fSDavid du Colombier 6*9a747e4fSDavid du Colombier int strparse(char * p,int arsize,char ** arv)7*9a747e4fSDavid du Colombierstrparse(char *p, int arsize, char **arv) 8*9a747e4fSDavid du Colombier { 9*9a747e4fSDavid du Colombier int arc = 0; 10*9a747e4fSDavid du Colombier 11*9a747e4fSDavid du Colombier /*print("parse: 0x%lux = \"%s\"\n", p, p);/**/ 12*9a747e4fSDavid du Colombier while(p){ 13*9a747e4fSDavid du Colombier while(*p == ' ' || *p == '\t') 14*9a747e4fSDavid du Colombier p++; 15*9a747e4fSDavid du Colombier if(*p == 0 || *p == strcomment) 16*9a747e4fSDavid du Colombier break; 17*9a747e4fSDavid du Colombier if(arc >= arsize-1) 18*9a747e4fSDavid du Colombier break; 19*9a747e4fSDavid du Colombier arv[arc++] = p; 20*9a747e4fSDavid du Colombier while(*p && *p != ' ' && *p != '\t') 21*9a747e4fSDavid du Colombier p++; 22*9a747e4fSDavid du Colombier if(*p == 0) 23*9a747e4fSDavid du Colombier break; 24*9a747e4fSDavid du Colombier *p++ = 0; 25*9a747e4fSDavid du Colombier } 26*9a747e4fSDavid du Colombier arv[arc] = 0; 27*9a747e4fSDavid du Colombier /*while(*arv){ 28*9a747e4fSDavid du Colombier print("\t0x%lux = \"%s\"\n", *arv, *arv); 29*9a747e4fSDavid du Colombier ++arv; 30*9a747e4fSDavid du Colombier }/**/ 31*9a747e4fSDavid du Colombier return arc; 32*9a747e4fSDavid du Colombier } 33