• fix file description, history, etc.
• require <stddef.h> for portable size_t declaration (if ! kernel, bootloader)
• mention why we do _not_ include <string.h> (for building on obsd/mbsd)
• sync RCSID definition with that of mksh (more portable)
• fix strlcat description
• sync strlcpy obsd rcsid and licence header with obsd-current
(their code change 1.10→1.11 was something we already did)
• use “does not”, not “doesn’t”
• make it easier to produce wcslfun.c
libc wcslfun.c:
• sync with strlfun.c (much easier now)
mksh strlcpy.c:
• sync with strlfun.c (in comments, mostly)
no binary changes
and have it return an API-correct const char *
• enhance and stylify comments
• a little KNF and simplifications
• #ifdef DEBUG: replace strchr and strstr with ucstrchr and ucstrstr
that take and return a non-const char *, and fix the violations
• new cstrchr, cstrstr (take and give const char *)
• new vstrchr, vstrstr (take const or not, give boolean value)
• new afreechk(x) = afreechv(x,x) = if (x1) afree(x2, ATEMP)
• new ksh_isdash(str) = (str != NULL) && !strcmp(str, "-")
• replace the only use of strrchr with inlined code to shrink
• minor man page fixes
• Minix 3 signames are autogenerated with gcc
• rename strlfun.c to strlcpy.c since we don't do strlcat(3) anyway,
only strlcpy(3), and shorten it
• dot.mkshrc: move MKSH=… down to the export line
to not disturb the PS1 visual impression ☺
• dot.mkshrc: Lstripcom(): optimise
• bump version
¹) side effect from creating API-correct cstrchr, cstrstr, etc.
uses goto so it must be better ☻
tested on mirbsd-current via both Makefile and Build.sh