nfs-utils: compiler error tracking strlen on Rawhide armv7hl and i686

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Let's handle some preliminary errors in this thread on building nfs-utils, before they spread even more.

1. Be specific.  State the package name in both the Subject and the first line of the body.
This provides context which aids the scanning of Subjects and enables detection and correction
of copy+paste errors.

2. The return value from both printf() and snprintf() with a format of "%s/%s" is
   s(trlen(str1) + 1 + strlen(str2))   /* +1: the '/' separator */
[note that this is strlen() of the unconstrained destination array],
and the number of bytes written (if not limited by the size parameter to snprintf())
is 1 more because of the terminating NUL byte '\0'.
Thus the minimum size of the unconstrained destination is (2 + strlen(str1) + strlen(str2)).

3. Do not use "PATH_MAX + 1".  Almost always it indicates a programmer error.
From /usr/include/linux/limits.h we see that
   #define PATH_MAX        4096	/* # chars in a path name including nul */
Increasing the size does not work: if (4096 <= strlen(path))  /* Yes, '<=' */
then the Linux kernel will do something other than what you naively expect.
The "destination too small" error condition for (rv = snprintf(array, size, format, ...))
is (size <= rv); using anything else is a bug.


After taking care of those bugs above, and looking at the constants such as '2147483645'
and '2147483648' in the compiler's complaints, it is obvious that the compiler erred
when tracking the result value from some call to strlen().  If you want help then
please supply the complete source code.  I could not locate the downloadable source for
   [1] https://koji.fedoraproject.org/koji/taskinfo?taskID=55125502
even after following several links.

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux