Lines Matching refs:str
36 static int parse_num __P((char *str, const char *key, int *valp));
195 parse_num(str, key, valp)
196 char *str;
203 p = strstr(str, key);
284 static char str[MAX_ENDP_LEN*3+8];
295 slprintf(str, sizeof(str), "IP:%I", htonl(addr));
296 return str;
305 q = str;
307 q += slprintf(q, sizeof(str)-1, "%s",
310 q += slprintf(q, sizeof(str)-1, "%d", ep->class);
317 q += slprintf(q, str + sizeof(str) - q, "%.2x", ep->value[i]);
319 return str;
332 str_to_epdisc(ep, str)
334 char *str;
341 if (strncasecmp(str, endp_class_names[i], sl) == 0) {
342 str += sl;
348 i = strtol(str, &endp, 10);
349 if (endp == str)
351 str = endp;
354 if (*str == 0) {
358 if (*str != ':' && *str != '.')
360 ++str;
364 i = parse_dotted_ip(str, &addr);
365 if (i == 0 || str[i] != 0)
370 if (i == EPD_MAC && get_if_hwaddr(ep->value, str) >= 0) {
375 p = str;
377 if (*str == 0)
379 if (p <= str)
380 for (p = str; isxdigit(*p); ++p)
382 i = p - str;
385 ep->value[l] = hexc_val(*str++);
387 ep->value[l] = (ep->value[l] << 4) + hexc_val(*str++);
388 if (*str == ':' || *str == '.')
389 ++str;
391 if (*str != 0 || (ep->class == EPD_MAC && l != 6))