From owner-freebsd-audit Mon Sep 10 21:32:37 2001 Delivered-To: freebsd-audit@freebsd.org Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by hub.freebsd.org (Postfix) with ESMTP id B98D537B40D for ; Mon, 10 Sep 2001 21:32:28 -0700 (PDT) Received: from localhost (arr@localhost) by fledge.watson.org (8.11.6/8.11.5) with SMTP id f8B4WJ045470 for ; Tue, 11 Sep 2001 00:32:19 -0400 (EDT) (envelope-from arr@watson.org) Date: Tue, 11 Sep 2001 00:32:18 -0400 (EDT) From: "Andrew R. Reiter" To: freebsd-audit@freebsd.org Subject: select diffs Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-71178614-1000182738=:45198" Sender: owner-freebsd-audit@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-71178614-1000182738=:45198 Content-Type: TEXT/PLAIN; charset=US-ASCII Hey, I am pondering starting on moving alot of the select() usages in src/libexec and src/usr.sbin to using dynamically allocated fd_set bit arrays in order to be extra cautious about fd usage. Therefore, I did a patch for rlogind so that people could review changes that would most likely occur to the sets of code that utilize select(2). I would appreciate comments... if you're wondering why select instead of perhaps moving to kqueue.... After speaking with Jonathan Lemon about whether it was worth moving from select() on all of these to a kqueue-ified system, I believe we/he concluded that probably none of these programs (libexec and usr.sbin) would really require kqueue-ification (except probably inetd), so I decided to move towards doing the fd_set's dyn. alloc'd rather than moving to a kq system. anyway, attached is a patch, but it can also be seen at: http://www.watson.org/~arr/fbsd-audit/libexec/rlogind/rlogin.c.diff This diff was made against current from 9/16/01 (evening pacific time) Andrew *-------------................................................. | Andrew R. Reiter | arr@fledge.watson.org | "It requires a very unusual mind | to undertake the analysis of the obvious" -- A.N. Whitehead --0-71178614-1000182738=:45198 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="rlogind.c.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: LS0tIHJsb2dpbmQuYy5vcmlnCU1vbiBTZXAgMTAgMjI6MzI6MjggMjAwMQ0K KysrIHJsb2dpbmQuYwlNb24gU2VwIDEwIDIzOjE5OjI3IDIwMDENCkBAIC04 Nyw2ICs4Nyw4IEBADQogDQogI2RlZmluZQkJQVJHU1RSCQkJIkRhbG54Ig0K IA0KKyNkZWZpbmUJZmRfaG93bWFueSh4LCB5KQkoKCh4KSArICgoeSkgLSAx KSkgLyAoeSkpDQorDQogLyogd3JhcHBlciBmb3IgS0FNRS1zcGVjaWFsIGdl dG5hbWVpbmZvKCkgKi8NCiAjaWZuZGVmIE5JX1dJVEhTQ09QRUlEDQogI2Rl ZmluZQlOSV9XSVRIU0NPUEVJRAkwDQpAQCAtMzgzLDQ4ICszODUsNzMgQEAN CiAJCWZhdGFsKGYsICJpbnRlcm5hbCBlcnJvciAoc2VsZWN0IG1hc2sgdG9v IHNtYWxsKSIsIDApOw0KIAl9DQogCWZvciAoOzspIHsNCi0JCWZkX3NldCBp Yml0cywgb2JpdHMsIGViaXRzLCAqb21hc2s7DQorCQlmZF9zZXQgKmliaXRz LCAqb2JpdHMsICplYml0cywgKm9tYXNrOw0KKw0KKwkJaWJpdHMgPSBvYml0 cyA9IGViaXRzID0gb21hc2sgPSAoZmRfc2V0ICopTlVMTDsNCisNCisJCWli aXRzID0gKGZkX3NldCAqKWNhbGxvYyhmZF9ob3dtYW55KG5mZCwgTkZEQklU UyksIA0KKwkJCXNpemVvZihmZF9tYXNrKSk7DQorCQlpZiAoaWJpdHMgPT0g TlVMTCkgDQorCQkJZmF0YWwoZiwgImNhbGxvYyIsIDEpOw0KKw0KKwkJb2Jp dHMgPSAoZmRfc2V0ICopY2FsbG9jKGZkX2hvd21hbnkobmZkLCBORkRCSVRT KSwNCisJCQlzaXplb2YoZmRfbWFzaykpOw0KKwkJaWYgKG9iaXRzID09IE5V TEwpIHsNCisJCQlmcmVlKGliaXRzKTsNCisJCQlmYXRhbChmLCAiY2FsbG9j IiwgMSk7DQorCQl9DQogDQotCQlGRF9aRVJPKCZlYml0cyk7DQotCQlGRF9a RVJPKCZpYml0cyk7DQotCQlGRF9aRVJPKCZvYml0cyk7DQotCQlvbWFzayA9 IChmZF9zZXQgKilOVUxMOw0KKw0KKwkJZWJpdHMgPSAoZmRfc2V0ICopY2Fs bG9jKGZkX2hvd21hbnkobmZkLCBORkRCSVRTKSwNCisJCQlzaXplb2YoZmRf bWFzaykpOw0KKwkJaWYgKGViaXRzID09IE5VTEwpIHsNCisJCQlmcmVlKG9i aXRzKTsNCisJCQlmcmVlKGliaXRzKTsNCisJCQlmYXRhbChmLCAiY2FsbG9j IiwgMSk7CQ0KKwkJfQ0KKwkJDQogCQlpZiAoZmNjKSB7DQotCQkJRkRfU0VU KHAsICZvYml0cyk7DQotCQkJb21hc2sgPSAmb2JpdHM7DQorCQkJRkRfU0VU KHAsIG9iaXRzKTsNCisJCQlvbWFzayA9IG9iaXRzOw0KIAkJfSBlbHNlDQot CQkJRkRfU0VUKGYsICZpYml0cyk7DQorCQkJRkRfU0VUKGYsIGliaXRzKTsN CiAJCWlmIChwY2MgPj0gMCkgew0KIAkJCWlmIChwY2MpIHsNCi0JCQkJRkRf U0VUKGYsICZvYml0cyk7DQotCQkJCW9tYXNrID0gJm9iaXRzOw0KKwkJCQlG RF9TRVQoZiwgb2JpdHMpOw0KKwkJCQlvbWFzayA9IG9iaXRzOw0KIAkJCX0g ZWxzZQ0KLQkJCQlGRF9TRVQocCwgJmliaXRzKTsNCisJCQkJRkRfU0VUKHAs IGliaXRzKTsNCiAJCX0NCi0JCUZEX1NFVChwLCAmZWJpdHMpOw0KLQkJaWYg KChuID0gc2VsZWN0KG5mZCwgJmliaXRzLCBvbWFzaywgJmViaXRzLCAwKSkg PCAwKSB7DQorCQlGRF9TRVQocCwgZWJpdHMpOw0KKwkJaWYgKChuID0gc2Vs ZWN0KG5mZCwgaWJpdHMsIG9tYXNrLCBlYml0cywgMCkpIDwgMCkgew0KKwkJ CWZyZWUoaWJpdHMpOw0KKwkJCWZyZWUob2JpdHMpOw0KKwkJCWZyZWUoZWJp dHMpOw0KIAkJCWlmIChlcnJubyA9PSBFSU5UUikNCiAJCQkJY29udGludWU7 DQogCQkJZmF0YWwoZiwgInNlbGVjdCIsIDEpOw0KIAkJfQ0KIAkJaWYgKG4g PT0gMCkgew0KIAkJCS8qIHNob3VsZG4ndCBoYXBwZW4uLi4gKi8NCisJCQlm cmVlKGliaXRzKTsNCisJCQlmcmVlKG9iaXRzKTsNCisJCQlmcmVlKGViaXRz KTsNCiAJCQlzbGVlcCg1KTsNCiAJCQljb250aW51ZTsNCiAJCX0NCiAjZGVm aW5lCXBrY29udHJvbChjKQkoKGMpJihUSU9DUEtUX0ZMVVNIV1JJVEV8VElP Q1BLVF9OT1NUT1B8VElPQ1BLVF9ET1NUT1ApKQ0KLQkJaWYgKEZEX0lTU0VU KHAsICZlYml0cykpIHsNCisJCWlmIChGRF9JU1NFVChwLCBlYml0cykpIHsN CiAJCQljYyA9IHJlYWQocCwgJmNudGwsIDEpOw0KIAkJCWlmIChjYyA9PSAx ICYmIHBrY29udHJvbChjbnRsKSkgew0KIAkJCQljbnRsIHw9IG9vYmRhdGFb MF07DQogCQkJCXNlbmQoZiwgJmNudGwsIDEsIE1TR19PT0IpOw0KIAkJCQlp ZiAoY250bCAmIFRJT0NQS1RfRkxVU0hXUklURSkgew0KIAkJCQkJcGNjID0g MDsNCi0JCQkJCUZEX0NMUihwLCAmaWJpdHMpOw0KKwkJCQkJRkRfQ0xSKHAs IGliaXRzKTsNCiAJCQkJfQ0KIAkJCX0NCiAJCX0NCi0JCWlmIChGRF9JU1NF VChmLCAmaWJpdHMpKSB7DQorCQlpZiAoRkRfSVNTRVQoZiwgaWJpdHMpKSB7 DQogI2lmZGVmCUNSWVBUDQogCQkJaWYgKGRvZW5jcnlwdCkNCiAJCQkJZmNj ID0gZGVzX2VuY19yZWFkKGYsIGZpYnVmLCBzaXplb2YoZmlidWYpLA0KQEAg LTQzOSw3ICs0NjYsMTIgQEANCiAJCQkJaW50IGxlZnQsIG47DQogDQogCQkJ CWlmIChmY2MgPD0gMCkNCisJCQkJew0KKwkJCQkJZnJlZShvYml0cyk7DQor CQkJCQlmcmVlKGliaXRzKTsNCisJCQkJCWZyZWUoZWJpdHMpOw0KIAkJCQkJ YnJlYWs7DQorCQkJCX0NCiAJCQkJZmJwID0gZmlidWY7DQogDQogCQkJdG9w Og0KQEAgLTQ1NiwxMSArNDg4LDExIEBADQogCQkJCQkJCWdvdG8gdG9wOyAv KiBuXjIgKi8NCiAJCQkJCQl9DQogCQkJCQl9DQotCQkJCUZEX1NFVChwLCAm b2JpdHMpOwkJLyogdHJ5IHdyaXRlICovDQorCQkJCUZEX1NFVChwLCBvYml0 cyk7CQkvKiB0cnkgd3JpdGUgKi8NCiAJCQl9DQogCQl9DQogDQotCQlpZiAo RkRfSVNTRVQocCwgJm9iaXRzKSAmJiBmY2MgPiAwKSB7DQorCQlpZiAoRkRf SVNTRVQocCwgb2JpdHMpICYmIGZjYyA+IDApIHsNCiAJCQljYyA9IHdyaXRl KHAsIGZicCwgZmNjKTsNCiAJCQlpZiAoY2MgPiAwKSB7DQogCQkJCWZjYyAt PSBjYzsNCkBAIC00NjgsMTkgKzUwMCwyMyBAQA0KIAkJCX0NCiAJCX0NCiAN Ci0JCWlmIChGRF9JU1NFVChwLCAmaWJpdHMpKSB7DQorCQlpZiAoRkRfSVNT RVQocCwgaWJpdHMpKSB7DQogCQkJcGNjID0gcmVhZChwLCBwaWJ1Ziwgc2l6 ZW9mIChwaWJ1ZikpOw0KIAkJCXBicCA9IHBpYnVmOw0KIAkJCWlmIChwY2Mg PCAwICYmIGVycm5vID09IEVXT1VMREJMT0NLKQ0KIAkJCQlwY2MgPSAwOw0K LQkJCWVsc2UgaWYgKHBjYyA8PSAwKQ0KKwkJCWVsc2UgaWYgKHBjYyA8PSAw KSB7DQorCQkJCWZyZWUoaWJpdHMpOw0KKwkJCQlmcmVlKG9iaXRzKTsNCisJ CQkJZnJlZShlYml0cyk7DQogCQkJCWJyZWFrOw0KKwkJCX0NCiAJCQllbHNl IGlmIChwaWJ1ZlswXSA9PSAwKSB7DQogCQkJCXBicCsrLCBwY2MtLTsNCiAj aWZkZWYJQ1JZUFQNCiAJCQkJaWYgKCFkb2VuY3J5cHQpDQogI2VuZGlmDQot CQkJCQlGRF9TRVQoZiwgJm9iaXRzKTsJLyogdHJ5IHdyaXRlICovDQorCQkJ CQlGRF9TRVQoZiwgb2JpdHMpOwkvKiB0cnkgd3JpdGUgKi8NCiAJCQl9IGVs c2Ugew0KIAkJCQlpZiAocGtjb250cm9sKHBpYnVmWzBdKSkgew0KIAkJCQkJ cGlidWZbMF0gfD0gb29iZGF0YVswXTsNCkBAIC00ODksNyArNTI1LDcgQEAN CiAJCQkJcGNjID0gMDsNCiAJCQl9DQogCQl9DQotCQlpZiAoKEZEX0lTU0VU KGYsICZvYml0cykpICYmIHBjYyA+IDApIHsNCisJCWlmICgoRkRfSVNTRVQo Ziwgb2JpdHMpKSAmJiBwY2MgPiAwKSB7DQogI2lmZGVmCUNSWVBUDQogCQkJ aWYgKGRvZW5jcnlwdCkNCiAJCQkJY2MgPSBkZXNfZW5jX3dyaXRlKGYsIHBi cCwgcGNjLA0KQEAgLTUwMyw4ICs1MzksMTEgQEANCiAJCQkJICogZnJvbSBw LCBidXQgc29tZSBvbGQga2VybmVscyBiYWxrIGF0IGxhcmdlDQogCQkJCSAq IHdyaXRlcyBldmVuIHdoZW4gc2VsZWN0IHJldHVybnMgdHJ1ZS4NCiAJCQkJ ICovDQotCQkJCWlmICghRkRfSVNTRVQocCwgJmliaXRzKSkNCisJCQkJaWYg KCFGRF9JU1NFVChwLCBpYml0cykpDQogCQkJCQlzbGVlcCg1KTsNCisJCQkJ ZnJlZShvYml0cyk7DQorCQkJCWZyZWUoaWJpdHMpOw0KKwkJCQlmcmVlKGVi aXRzKTsJDQogCQkJCWNvbnRpbnVlOw0KIAkJCX0NCiAJCQlpZiAoY2MgPiAw KSB7DQo= --0-71178614-1000182738=:45198-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-audit" in the body of the message