freebsd-dev/etc/mtree/BSD.tests.dist
Alan Somers a85f12322c "source routing" in rpcbind
Fix a bug in rpcbind for multihomed hosts. If the server had interfaces on
two separate subnets, and a client on the first subnet contacted rpcbind at
the address on the second subnet, rpcbind would advertise addresses on the
first subnet. This is a bug, because it should prefer to advertise the
address where it was contacted. The requested service might be firewalled
off from the address on the first subnet, for example.

usr.sbin/rpcbind/check_bound.c
	If the address on which a request was received is known, pass that
	to addrmerge as the clnt_uaddr parameter. That is what addrmerge's
	comment indicates the parameter is supposed to mean. The previous
	behavior is that clnt_uaddr would contain the address from which the
	client sent the request.

usr.sbin/rpcbind/util.c
	Modify addrmerge to prefer to use an IP that is equal to clnt_uaddr,
	if one is found. Refactor the relevant portion of the function for
	clarity, and to reduce the number of ifdefs.

etc/mtree/BSD.tests.dist
usr.sbin/rpcbind/tests/Makefile
usr.sbin/rpcbind/tests/addrmerge_test.c
	Add unit tests for usr.sbin/rpcbind/util.c:addrmerge.

usr.sbin/rpcbind/check_bound.c
usr.sbin/rpcbind/rpcbind.h
usr.sbin/rpcbind/util.c
	Constify some function arguments

Reviewed by:	imp
MFC after:	4 weeks
Sponsored by:	Spectra Logic Corp
Differential Revision:	https://reviews.freebsd.org/D4690
2016-01-06 00:00:11 +00:00

633 lines
11 KiB
Plaintext

# $FreeBSD$
#
# Please see the file src/etc/mtree/README before making changes to this file.
#
/set type=dir uname=root gname=wheel mode=0755
.
bin
cat
..
chown
..
date
..
dd
..
expr
..
ls
..
mv
..
pax
..
pkill
..
sh
builtins
..
errors
..
execution
..
expansion
..
parameters
..
parser
..
set-e
..
..
sleep
..
test
..
..
cddl
lib
..
sbin
..
usr.bin
..
usr.sbin
dtrace
common
aggs
..
arithmetic
..
arrays
..
assocs
..
begin
..
bitfields
..
buffering
..
builtinvar
..
cg
..
clauses
..
cpc
..
decls
..
drops
..
dtraceUtil
..
end
..
enum
..
error
..
exit
..
fbtprovider
..
funcs
..
grammar
..
include
..
inline
..
io
..
ip
..
java_api
..
json
..
lexer
..
llquantize
..
mdb
..
mib
..
misc
..
multiaggs
..
offsetof
..
operators
..
pid
..
plockstat
..
pointers
..
pragma
..
predicates
..
preprocessor
..
print
..
printa
..
printf
..
privs
..
probes
..
proc
..
profile-n
..
providers
..
raise
..
rates
..
safety
..
scalars
..
sched
..
scripting
..
sdt
..
sizeof
..
speculation
..
stability
..
stack
..
stackdepth
..
stop
..
strlen
..
strtoll
..
struct
..
syscall
..
sysevent
..
tick-n
..
trace
..
tracemem
..
translators
..
typedef
..
types
..
uctf
..
union
..
usdt
..
ustack
..
vars
..
version
..
..
..
..
..
etc
rc.d
..
..
games
..
gnu
lib
..
usr.bin
diff
..
..
..
lib
atf
libatf-c
detail
..
..
libatf-c++
detail
..
..
test-programs
..
..
libarchive
..
libc
c063
..
db
..
gen
execve
..
posix_spawn
..
..
hash
data
..
..
inet
..
locale
..
net
getaddrinfo
data
..
..
..
nss
..
regex
data
..
..
resolv
..
rpc
..
ssp
..
stdio
..
stdlib
..
string
..
sys
..
time
..
tls
dso
..
..
termios
..
ttyio
..
..
libcrypt
..
libmp
..
libnv
..
libpam
..
libproc
..
librt
..
libthr
dlopen
..
..
libutil
..
libxo
..
msun
..
..
libexec
atf
atf-check
..
atf-sh
..
..
rtld-elf
..
..
sbin
dhclient
..
devd
..
growfs
..
ifconfig
..
mdconfig
..
..
secure
lib
..
libexec
..
usr.bin
..
usr.sbin
..
..
share
examples
tests
atf
..
plain
..
..
..
..
sys
acl
..
aio
..
fifo
..
file
..
kern
acct
..
execve
..
pipe
..
..
kqueue
..
mac
bsdextended
..
portacl
..
..
mqueue
..
netinet
..
opencrypto
..
pjdfstest
chflags
..
chmod
..
chown
..
ftruncate
..
granular
..
link
..
mkdir
..
mkfifo
..
mknod
..
open
..
rename
..
rmdir
..
symlink
..
truncate
..
unlink
..
..
posixshm
..
vfs
..
vm
..
..
usr.bin
apply
..
basename
..
bmake
archives
fmt_44bsd
..
fmt_44bsd_mod
..
fmt_oldbsd
..
..
basic
t0
..
t1
..
t2
..
t3
..
..
execution
ellipsis
..
empty
..
joberr
..
plus
..
..
shell
builtin
..
meta
..
path
..
path_select
..
replace
..
select
..
..
suffixes
basic
..
src_wild1
..
src_wild2
..
..
syntax
directive-t0
..
enl
..
funny-targets
..
semi
..
..
sysmk
t0
2
1
..
..
mk
..
..
t1
2
1
..
..
mk
..
..
t2
2
1
..
..
mk
..
..
..
variables
modifier_M
..
modifier_t
..
opt_V
..
t0
..
..
..
calendar
..
cmp
..
cpio
..
col
..
comm
..
cut
..
dirname
..
file2c
..
grep
..
gzip
..
ident
..
join
..
jot
..
lastcomm
..
limits
..
m4
..
mkimg
..
ncal
..
opensm
..
printf
..
sed
regress.multitest.out
..
..
soelim
..
tar
..
timeout
..
tr
..
truncate
..
units
..
uudecode
..
uuencode
..
xargs
..
xo
..
yacc
yacc
..
..
..
usr.sbin
etcupdate
..
fstyp
..
makefs
..
newsyslog
..
nmtree
..
pw
..
rpcbind
..
sa
..
..
..
# vim: set expandtab ts=4 sw=4: