freebsd-skq/libexec
kib df68f62846 The origin_subst_one() function limits the length of the string to
PATH_MAX after the token substitution.  This is wrong, because
origin_subst_one() performs the substitution on the whole rpath and
similar strings, which contain several pathes separated by colon.  As
result, long (but correct) rpath consisting of many path elements is
rejected by the function.

Correct the problem by rewriting the origin_subst_one() to perform two
passes, first pass to calculate the number of substitutions to be
performed, and second pass to generate the resulting string.  Second
pass allocates the memory for the result based on the count from the
first pass, without enforcing a limit.

Reported and tested by:	pgj
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2013-04-15 20:06:56 +00:00
..
atf Add ATF to the build. This is may be a bit rought around the egdes, 2012-10-22 01:18:41 +00:00
atrun atrun(8): scale default load average limit with the number of CPUs 2012-10-30 19:46:00 +00:00
bootpd Retire struct sockaddr_inarp. 2013-01-31 08:55:21 +00:00
comsat Bump date missed in r202756 2012-09-14 17:50:42 +00:00
fingerd Forgot to initialize the debug variable. 2010-04-01 13:16:32 +00:00
ftpd Bump date missed in r202756 2012-09-14 17:50:42 +00:00
getty mdoc: terminate quoted strings. 2012-03-26 15:18:14 +00:00
lukemftpd Spelling fixes for libexec/ 2012-01-07 16:09:54 +00:00
mail.local Since clang 3.2 now has an option to suppress warnings about implicitly 2013-02-16 20:17:31 +00:00
mknetid Replace index() and rindex() calls with strchr() and strrchr(). 2012-01-03 18:51:58 +00:00
pppoed In libexec/pppoed/pppoed.c, use the correct printf length modifier for a 2011-12-16 16:07:39 +00:00
rbootd Rework all non-contributed files that use `struct timezone'. 2012-09-01 14:45:15 +00:00
revnetgroup Fix two instances of the file names generated by revnetgroup(8). 2012-08-18 09:26:51 +00:00
rlogind Replace index() and rindex() calls with strchr() and strrchr(). 2012-01-03 18:51:58 +00:00
rpc.rquotad The NFS quota-reporting RPC uses 32-bit sized fields. We approximate 2010-04-25 00:05:51 +00:00
rpc.rstatd Rework all non-contributed files that use `struct timezone'. 2012-09-01 14:45:15 +00:00
rpc.rusersd More -Wmissing-variable-declarations fixes. 2012-10-20 10:33:15 +00:00
rpc.rwalld add __unused 2010-12-19 13:05:17 +00:00
rpc.sprayd Make WARNS=6 the default for libexec/. 2010-01-02 09:50:19 +00:00
rshd None of these programs actually use auth.conf. 2012-06-11 16:18:39 +00:00
rtld-aout More -Wmissing-variable-declarations fixes. 2012-10-19 14:49:42 +00:00
rtld-elf The origin_subst_one() function limits the length of the string to 2013-04-15 20:06:56 +00:00
save-entropy 1. Use install -d to create the entropy_dir if missing so that we can do it 2012-09-04 16:00:51 +00:00
smrsh Since clang 3.2 now has an option to suppress warnings about implicitly 2013-02-16 20:17:31 +00:00
talkd More -Wmissing-variable-declarations fixes. 2012-10-20 10:33:15 +00:00
tcpd Make WARNS=6 the default for libexec/. 2010-01-02 09:50:19 +00:00
telnetd Convert telnetd(8) to use posix_openpt(2). 2008-11-13 19:05:27 +00:00
tftp-proxy Make WARNS=6 the default for libexec/. 2010-01-02 09:50:19 +00:00
tftpd Mark tftp_log() as __printflike() (which would have caught the bug 2013-01-31 00:02:36 +00:00
ulog-helper Do a better job at determining the username of the login session. 2012-04-19 21:12:08 +00:00
ypxfr Consistently set RPCGEN_CPP when running rpcgen, so the C preprocessor 2012-02-07 09:27:07 +00:00
Makefile Add ATF to the build. This is may be a bit rought around the egdes, 2012-10-22 01:18:41 +00:00
Makefile.inc Make WARNS=6 the default for libexec/. 2010-01-02 09:50:19 +00:00