title: strlcpy in terms of strncpy on platforms that don't have strlcpy
body: <p>I know, <code>strlcpy</code> is safer than <code>strncpy</code> while copying from source to destination character arrays where we want destination to be null terminated,
  Is the following wrapper ok?</p>
  <pre><code>size_t strlcpy(char *dst, const char *src, size_t size) {
    if (size != 0) {
      int maxSize = size - 1;
      int currSize = -1;
      while ((++currSize &lt; maxSize) &amp;&amp; (*dst++ = *src++));
      *dst = 0;
      return currSize;
    }
    return 0;
  }
  </code></pre>
  <p>Please comment.</p>