/* SPDX-License-Identifier: MIT */ /* Derived from musl libc (Copyright © 2005-2020 Rich Felker, et al.) */ #include char *strtok_r(char *restrict s, const char *restrict sep, char **restrict p) { if (!s && !(s = *p)) return NULL; s += strspn(s, sep); if (!*s) return *p = 0; *p = s + strcspn(s, sep); if (**p) *(*p)++ = 0; else *p = 0; return s; }