Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Nov 2010 21:09:48 +0300
From:      Andrey Zonov <andrey.zonov@gmail.com>
To:        freebsd-hackers@freebsd.org
Subject:   [patch] rresvport_af(3) uses setsockopt(SO_REUSEADDR)
Message-ID:  <4CED54EC.2080204@gmail.com>

next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------080501010907030103040709
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

I've made the patch for rresvport_af(3) and rcmd_af(3) which makes 
possible to use more connections for rsh/rshd.
I've also reviewed freebsd src tree and I think these changes in libc do 
not break any existing applications.

Can anybody look at the patch?

-- 
Andrey Zonov


--------------080501010907030103040709
Content-Type: text/plain;
 name="rresvport_reuse.patch.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="rresvport_reuse.patch.txt"

SW5kZXg6IGxpYmV4ZWMvcnNoZC9yc2hkLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGliZXhlYy9y
c2hkL3JzaGQuYwkocmV2aXNpb24gMjE1NTA4KQorKysgbGliZXhlYy9yc2hkL3JzaGQuYwko
d29ya2luZyBjb3B5KQpAQCAtMjc4LDExICsyNzgsNiBAQAogCSh2b2lkKSBhbGFybSgwKTsK
IAlpZiAocG9ydCAhPSAwKSB7CiAJCWludCBscG9ydCA9IElQUE9SVF9SRVNFUlZFRCAtIDE7
Ci0JCXMgPSBycmVzdnBvcnRfYWYoJmxwb3J0LCBhZik7Ci0JCWlmIChzIDwgMCkgewotCQkJ
c3lzbG9nKExPR19FUlIsICJjYW4ndCBnZXQgc3RkZXJyIHBvcnQ6ICVtIik7Ci0JCQlleGl0
KDEpOwotCQl9CiAJCWlmIChwb3J0ID49IElQUE9SVF9SRVNFUlZFRCB8fAogCQkgICAgcG9y
dCA8IElQUE9SVF9SRVNFUlZFRC8yKSB7CiAJCQlzeXNsb2coTE9HX05PVElDRXxMT0dfQVVU
SCwKQEAgLTI5MSwxMCArMjg2LDMxIEBACiAJCQkgICAgcG9ydCk7CiAJCQlleGl0KDEpOwog
CQl9Ci0JCSooKGluX3BvcnRfdCAqKSZmcm9tcC0+c2FfZGF0YSkgPSBodG9ucyhwb3J0KTsK
LQkJaWYgKGNvbm5lY3QocywgZnJvbXAsIGZyb21wLT5zYV9sZW4pIDwgMCkgewotCQkJc3lz
bG9nKExPR19JTkZPLCAiY29ubmVjdCBzZWNvbmQgcG9ydCAlZDogJW0iLCBwb3J0KTsKLQkJ
CWV4aXQoMSk7CisJCWZvciAoIDs7ICkgeworCQkJcyA9IHJyZXN2cG9ydF9hZigmbHBvcnQs
IGFmKTsKKwkJCWlmIChzIDwgMCkgeworCQkJCWlmIChlcnJubyA9PSBFQUREUklOVVNFIHx8
CisJCQkJICAgIGVycm5vID09IEVBRERSTk9UQVZBSUwpIHsKKwkJCQkJbHBvcnQtLTsKKwkJ
CQkJY29udGludWU7CisJCQkJfQorCQkJCWlmIChlcnJubyA9PSBFQUdBSU4pCisJCQkJCXN5
c2xvZyhMT0dfRVJSLCAic29ja2V0OiBhbGwgcG9ydHMgaW4gdXNlIik7CisJCQkJZWxzZQor
CQkJCQlzeXNsb2coTE9HX0VSUiwgImNhbid0IGdldCBzdGRlcnIgcG9ydDogJW0iKTsKKwkJ
CQlleGl0KDEpOworCQkJfQorCQkJKigoaW5fcG9ydF90ICopJmZyb21wLT5zYV9kYXRhKSA9
IGh0b25zKHBvcnQpOworCQkJaWYgKGNvbm5lY3QocywgZnJvbXAsIGZyb21wLT5zYV9sZW4p
IDwgMCkgeworCQkJCWlmIChlcnJubyA9PSBFQUREUklOVVNFKSB7CisJCQkJCWxwb3J0LS07
CisJCQkJCWNsb3NlKHMpOworCQkJCQljb250aW51ZTsKKwkJCQl9CisJCQkJc3lzbG9nKExP
R19JTkZPLCAiY29ubmVjdCBzZWNvbmQgcG9ydCAlZDogJW0iLCBwb3J0KTsKKwkJCQlleGl0
KDEpOworCQkJfQorCQkJYnJlYWs7CiAJCX0KIAl9CiAKQEAgLTUzNSwxMSArNTUxLDExIEBA
CiAJY2hhciBjOwogCiAJZG8geworCQlpZiAoY250LS0gPT0gMCkKKwkJCXJzaGRfZXJyeCgx
LCAiJXMgdG9vIGxvbmciLCBlcnJvcik7CiAJCWlmIChyZWFkKFNURElOX0ZJTEVOTywgJmMs
IDEpICE9IDEpCiAJCQlleGl0KDEpOwogCQkqYnVmKysgPSBjOwotCQlpZiAoLS1jbnQgPT0g
MCkKLQkJCXJzaGRfZXJyeCgxLCAiJXMgdG9vIGxvbmciLCBlcnJvcik7CiAJfSB3aGlsZSAo
YyAhPSAwKTsKIH0KIApJbmRleDogbGliL2xpYmMvbmV0L3JjbWQuYwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBsaWIvbGliYy9uZXQvcmNtZC5jCShyZXZpc2lvbiAyMTU1MDgpCisrKyBsaWIvbGli
Yy9uZXQvcmNtZC5jCSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsNiArMTUyLDExIEBACiAJZm9y
ICh0aW1vID0gMSwgbHBvcnQgPSBJUFBPUlRfUkVTRVJWRUQgLSAxOzspIHsKIAkJcyA9IHJy
ZXN2cG9ydF9hZigmbHBvcnQsIGFpLT5haV9mYW1pbHkpOwogCQlpZiAocyA8IDApIHsKKwkJ
CWlmIChlcnJubyA9PSBFQUREUklOVVNFIHx8CisJCQkgICAgZXJybm8gPT0gRUFERFJOT1RB
VkFJTCkgeworCQkJCWxwb3J0LS07CisJCQkJY29udGludWU7CisJCQl9CiAJCQlpZiAoZXJy
bm8gIT0gRUFHQUlOICYmIGFpLT5haV9uZXh0KSB7CiAJCQkJYWkgPSBhaS0+YWlfbmV4dDsK
IAkJCQljb250aW51ZTsKQEAgLTIxMiwxNyArMjE3LDM0IEBACiAJCQlmcHJpbnRmKHN0ZGVy
ciwgIlRyeWluZyAlcy4uLlxuIiwgcGFkZHIpOwogCQl9CiAJfQotCWxwb3J0LS07CisJbHBv
cnQgPSBJUFBPUlRfUkVTRVJWRUQgLSAxOwogCWlmIChmZDJwID09IDApIHsKIAkJX3dyaXRl
KHMsICIiLCAxKTsKIAkJbHBvcnQgPSAwOwogCX0gZWxzZSB7Ci0JCWludCBzMiA9IHJyZXN2
cG9ydF9hZigmbHBvcnQsIGFpLT5haV9mYW1pbHkpLCBzMzsKKwkJaW50IHMyLCBzMzsKIAkJ
c29ja2xlbl90IGxlbiA9IGFpLT5haV9hZGRybGVuOwogCQlpbnQgbmZkczsKIAotCQlpZiAo
czIgPCAwKQotCQkJZ290byBiYWQ7CisJCWZvciAoIDs7ICkgeworCQkJczIgPSBycmVzdnBv
cnRfYWYoJmxwb3J0LCBhaS0+YWlfZmFtaWx5KTsKKwkJCWlmIChzMiA8IDApIHsKKwkJCQlp
ZiAoZXJybm8gPT0gRUFERFJJTlVTRSB8fAorCQkJCSAgICBlcnJubyA9PSBFQUREUk5PVEFW
QUlMKSB7CisJCQkJCWxwb3J0LS07CisJCQkJCWNvbnRpbnVlOworCQkJCX0KKwkJCQlpZiAo
ZXJybm8gPT0gRUFHQUlOKQorCQkJCQkodm9pZClmcHJpbnRmKHN0ZGVyciwKKwkJCQkJICAg
ICJyY21kOiBzb2NrZXQyOiBBbGwgcG9ydHMgaW4gdXNlXG4iKTsKKwkJCQllbHNlCisJCQkJ
CSh2b2lkKWZwcmludGYoc3RkZXJyLCAicmNtZDogc29ja2V0MjogJXNcbiIsCisJCQkJCSAg
ICBzdHJlcnJvcihlcnJubykpOworCQkJCWdvdG8gYmFkOworCQkJfQorCQkJYnJlYWs7CisJ
CX0KKwogCQlfbGlzdGVuKHMyLCAxKTsKIAkJKHZvaWQpc25wcmludGYobnVtLCBzaXplb2Yo
bnVtKSwgIiVkIiwgbHBvcnQpOwogCQlpZiAoX3dyaXRlKHMsIG51bSwgc3RybGVuKG51bSkr
MSkgIT0gc3RybGVuKG51bSkrMSkgewpAQCAtMzY2LDYgKzM4OCwyNyBAQAogCQlyZXR1cm4g
KC0xKTsKIAl9CiAjZW5kaWYKKwlpZiAoKmFscG9ydCAmJiAqYWxwb3J0IDwgSVBQT1JUX1JF
U0VSVkVEIC0gMSkgeworCQlpZiAoKmFscG9ydCA8IElQUE9SVF9SRVNFUlZFRCAvIDIpIHsK
KwkJCSh2b2lkKV9jbG9zZShzKTsKKwkJCWVycm5vID0gRUFHQUlOOworCQkJcmV0dXJuICgt
MSk7CisJCX0KKwkJaW50IHJldXNlID0gMTsKKwkJaWYgKF9zZXRzb2Nrb3B0KHMsIFNPTF9T
T0NLRVQsIFNPX1JFVVNFQUREUiwgJnJldXNlLCBzaXplb2YocmV1c2UpKSA8IDApIHsKKwkJ
CSh2b2lkKV9jbG9zZShzKTsKKwkJCXJldHVybiAoLTEpOworCQl9CisKKwkJKnNwb3J0ID0g
aHRvbnMoKHVfc2hvcnQpKmFscG9ydCk7CisJCWlmIChfYmluZChzLCAoc3RydWN0IHNvY2th
ZGRyICopJnNzLCAoKHN0cnVjdCBzb2NrYWRkciAqKSZzcyktPnNhX2xlbikgPCAwKSB7CisJ
CQkodm9pZClfY2xvc2Uocyk7CisJCQlyZXR1cm4gKC0xKTsKKwkJfQorCQkqYWxwb3J0ID0g
KGludCludG9ocygqc3BvcnQpOworCQlyZXR1cm4gKHMpOworCX0KKwogCSpzcG9ydCA9IDA7
CiAJaWYgKGJpbmRyZXN2cG9ydF9zYShzLCAoc3RydWN0IHNvY2thZGRyICopJnNzKSA9PSAt
MSkgewogCQkodm9pZClfY2xvc2Uocyk7Cg==
--------------080501010907030103040709--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CED54EC.2080204>