From owner-freebsd-hackers@FreeBSD.ORG Sat Jul 17 13:56:18 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2974C106566B for ; Sat, 17 Jul 2010 13:56:18 +0000 (UTC) (envelope-from joris.dedieu@gmail.com) Received: from mail-ew0-f54.google.com (mail-ew0-f54.google.com [209.85.215.54]) by mx1.freebsd.org (Postfix) with ESMTP id A8C7C8FC0A for ; Sat, 17 Jul 2010 13:56:17 +0000 (UTC) Received: by ewy26 with SMTP id 26so1161040ewy.13 for ; Sat, 17 Jul 2010 06:56:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=3LR4Fn354UeoHZ+yOnQGLUF0rpDYQ3nTYHsWyTLwaW8=; b=FxsWR0oaQUnY1RaAlLlUVTvaZUBNQNJ7snJ83xcOVrblpr0GioSydnIeNM5SD3zCjd IktVzR6gEUUUSQ7V8Ad3gLwHemCEVHrPCiaJmYwRmPsaNb5Wf7obk3Chy8O66oXv0tKb EPpeAk6jBvEkop7ICn3XEch/uy8lY7aCkhFpk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=muETtJtVgjmorvJPVxhUs2GJ5yLJPx3M5QyuznkeoSuhsF2AQHAx19NuAfFNp8EhMg nRps9MUgOb6cgk+AdXmeX2nxq6mMO5VuWYvtM1pL+VM3dJfN0mXZhZVC+92PYwJ37ut2 WAdq4b3SZ5ntPJcjW36XYLK5FRiuuOE+2b8wY= MIME-Version: 1.0 Received: by 10.213.13.133 with SMTP id c5mr692557eba.4.1279373648934; Sat, 17 Jul 2010 06:34:08 -0700 (PDT) Received: by 10.213.36.15 with HTTP; Sat, 17 Jul 2010 06:34:08 -0700 (PDT) Date: Sat, 17 Jul 2010 15:34:08 +0200 Message-ID: From: joris dedieu To: freebsd-hackers@freebsd.org Content-Type: multipart/mixed; boundary=0015174bdea4e13a5f048b95636a Subject: [PATCH] allow empty files creation with install X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 17 Jul 2010 13:56:18 -0000 --0015174bdea4e13a5f048b95636a Content-Type: text/plain; charset=ISO-8859-1 This patch add a -t switch to install(3). This is a small feature for lazy sysadmins. before : touch /usr/home/foo/.history /usr/home/foo/.bash_history chown foo /usr/home/foo/.history /usr/home/foo/.bash_history chmod 600 /usr/home/foo/.history /usr/home/foo/.bash_history chflags sappend /usr/home/foo/.history /usr/home/foo/.bash_history after : install -o foo -g foo -m 600 -f sappend /usr/home/foo/.history /usr/home/foo/.bash_history Regards, Joris --0015174bdea4e13a5f048b95636a Content-Type: application/octet-stream; name="xinstall.patch" Content-Disposition: attachment; filename="xinstall.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gbqhwci90 ZGlmZiAtTnVyIHVzci5iaW4veGluc3RhbGwub3JpZy9pbnN0YWxsLjEgdXNyLmJpbi94aW5zdGFs bC9pbnN0YWxsLjEKLS0tIHVzci5iaW4veGluc3RhbGwub3JpZy9pbnN0YWxsLjEJMjAxMC0wNy0w NSAwODozNTowMS4wMDAwMDAwMDAgKzAyMDAKKysrIHVzci5iaW4veGluc3RhbGwvaW5zdGFsbC4x CTIwMTAtMDctMTcgMTQ6NTk6NDAuMTI3MDI0NTE5ICswMjAwCkBAIC02Miw2ICs2MiwxNSBAQAog Lk9wIEZsIG0gQXIgbW9kZQogLk9wIEZsIG8gQXIgb3duZXIKIC5BciBkaXJlY3RvcnkgLi4uCisu Tm0KKy5GbCB0CisuT3AgRmwgdgorLk9wIEZsIGcgQXIgZ3JvdXAKKy5PcCBGbCBmIEFyIGZsYWdz CisuT3AgRmwgbSBBciBtb2RlCisuT3AgRmwgbyBBciBvd25lcgorLkFyIGZpbGUgLi4uCisKIC5T aCBERVNDUklQVElPTgogVGhlIGZpbGUocykgYXJlIGNvcGllZAogdG8gdGhlIHRhcmdldCBmaWxl IG9yIGRpcmVjdG9yeS4KQEAgLTExMiw2ICsxMjEsOCBAQAogLkl0IEZsIGQKIENyZWF0ZSBkaXJl Y3Rvcmllcy4KIE1pc3NpbmcgcGFyZW50IGRpcmVjdG9yaWVzIGFyZSBjcmVhdGVkIGFzIHJlcXVp cmVkLgorLkl0IEZsIHQKK0NyZWF0ZSBhbiBlbXB0eSBmaWxlCiAuSXQgRmwgZgogU3BlY2lmeSB0 aGUgdGFyZ2V0J3MgZmlsZSBmbGFnczsgc2VlCiAuWHIgY2hmbGFncyAxCkZpbGVzIHhpbnN0YWxs Lm9yaWcvaW5zdGFsbC5vbGQgYW5kIHhpbnN0YWxsL2luc3RhbGwub2xkIGRpZmZlcgpkaWZmIC1O dXIgdXNyLmJpbi94aW5zdGFsbC5vcmlnL3hpbnN0YWxsLmMgdXNyLmJpbi94aW5zdGFsbC94aW5z dGFsbC5jCi0tLSB1c3IuYmluL3hpbnN0YWxsLm9yaWcveGluc3RhbGwuYwkyMDEwLTA3LTA1IDA4 OjM1OjAxLjAwMDAwMDAwMCArMDIwMAorKysgdXNyLmJpbi94aW5zdGFsbC94aW5zdGFsbC5jCTIw MTAtMDctMTcgMTQ6NTk6MTUuMTgxNDM1MjUzICswMjAwCkBAIC04Miw3ICs4Miw3IEBACiBzdHJ1 Y3QgZ3JvdXAgKmdwOwogZ2lkX3QgZ2lkOwogdWlkX3QgdWlkOwotaW50IGRvYmFja3VwLCBkb2Nv bXBhcmUsIGRvZGlyLCBkb3ByZXNlcnZlLCBkb3N0cmlwLCBub21tYXAsIHNhZmVjb3B5LCB2ZXJi b3NlOworaW50IGRvYmFja3VwLCBkb2NvbXBhcmUsIGRvZGlyLCBkb3ByZXNlcnZlLCBkb3N0cmlw LCBkb2ZpbGUsIGRvbW9kZSwgbm9tbWFwLCBzYWZlY29weSwgdmVyYm9zZTsKIG1vZGVfdCBtb2Rl ID0gU19JUldYVSB8IFNfSVJHUlAgfCBTX0lYR1JQIHwgU19JUk9USCB8IFNfSVhPVEg7CiBjb25z dCBjaGFyICpzdWZmaXggPSBCQUNLVVBfU1VGRklYOwogCkBAIC05NCw2ICs5NCw3IEBACiB2b2lk CWluc3RhbGxfZGlyKGNoYXIgKik7CiB1X2xvbmcJbnVtZXJpY19pZChjb25zdCBjaGFyICosIGNv bnN0IGNoYXIgKik7CiB2b2lkCXN0cmlwKGNvbnN0IGNoYXIgKik7Cit2b2lkCXRvdWNoX2ZpbGUo Y2hhciAqLCB1X2ludCk7CiBpbnQJdHJ5bW1hcChpbnQpOwogdm9pZAl1c2FnZSh2b2lkKTsKIApA QCAtMTEwLDcgKzExMSw3IEBACiAKIAlpZmxhZ3MgPSAwOwogCWdyb3VwID0gb3duZXIgPSBOVUxM OwotCXdoaWxlICgoY2ggPSBnZXRvcHQoYXJnYywgYXJndiwgIkI6YkNjZGY6ZzpNbTpvOnBTc3Yi KSkgIT0gLTEpCisJd2hpbGUgKChjaCA9IGdldG9wdChhcmdjLCBhcmd2LCAiQjpiQ2NkZjpnOk1t Om86cFNzdHYiKSkgIT0gLTEpCiAJCXN3aXRjaCgoY2hhciljaCkgewogCQljYXNlICdCJzoKIAkJ CXN1ZmZpeCA9IG9wdGFyZzsKQEAgLTE0MCw2ICsxNDEsNyBAQAogCQkJbm9tbWFwID0gMTsKIAkJ CWJyZWFrOwogCQljYXNlICdtJzoKKwkJCWRvbW9kZSA9IDE7CiAJCQlpZiAoIShzZXQgPSBzZXRt b2RlKG9wdGFyZykpKQogCQkJCWVycngoRVhfVVNBR0UsICJpbnZhbGlkIGZpbGUgbW9kZTogJXMi LAogCQkJCSAgICAgb3B0YXJnKTsKQEAgLTE1OCw2ICsxNjAsOSBAQAogCQljYXNlICdzJzoKIAkJ CWRvc3RyaXAgPSAxOwogCQkJYnJlYWs7CisJCWNhc2UgJ3QnOgorCQkJZG9maWxlID0gMTsKKwkJ CWJyZWFrOwogCQljYXNlICd2JzoKIAkJCXZlcmJvc2UgPSAxOwogCQkJYnJlYWs7CkBAIC0xNjgs MTkgKzE3MywyNyBAQAogCWFyZ2MgLT0gb3B0aW5kOwogCWFyZ3YgKz0gb3B0aW5kOwogCi0JLyog c29tZSBvcHRpb25zIG1ha2Ugbm8gc2Vuc2Ugd2hlbiBjcmVhdGluZyBkaXJlY3RvcmllcyAqLwor CS8qIHNvbWUgb3B0aW9ucyBtYWtlIG5vIHNlbnNlIHdoZW4gY3JlYXRpbmcgZGlyZWN0b3JpZXMg b3IgZmlsZXMgKi8KIAlpZiAoZG9zdHJpcCAmJiBkb2RpcikgewogCQl3YXJueCgiLWQgYW5kIC1z IG1heSBub3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyIik7CiAJCXVzYWdlKCk7CiAJfQorCWlmIChk b3N0cmlwICYmIGRvZmlsZSkgeworCQl3YXJueCgiLXQgYW5kIC1zIG1heSBub3QgYmUgc3BlY2lm aWVkIHRvZ2V0aGVyIik7CisJCXVzYWdlKCk7CisJfQorCWlmIChkb2RpciAmJiBkb2ZpbGUpIHsK KwkJd2FybngoIi10IGFuZCAtZCBtYXkgbm90IGJlIHNwZWNpZmllZCB0b2dldGhlciIpOworCQl1 c2FnZSgpOworCX0KIAogCWlmIChnZXRlbnYoIkRPTlRTVFJJUCIpICE9IE5VTEwpIHsKIAkJd2Fy bngoIkRPTlRTVFJJUCBzZXQgLSB3aWxsIG5vdCBzdHJpcCBpbnN0YWxsZWQgYmluYXJpZXMiKTsK IAkJZG9zdHJpcCA9IDA7CiAJfQogCi0JLyogbXVzdCBoYXZlIGF0IGxlYXN0IHR3byBhcmd1bWVu dHMsIGV4Y2VwdCB3aGVuIGNyZWF0aW5nIGRpcmVjdG9yaWVzICovCi0JaWYgKGFyZ2MgPT0gMCB8 fCAoYXJnYyA9PSAxICYmICFkb2RpcikpCisJLyogbXVzdCBoYXZlIGF0IGxlYXN0IHR3byBhcmd1 bWVudHMsIGV4Y2VwdCB3aGVuIGNyZWF0aW5nIGZpbGVzIG9yIGRpcmVjdG9yaWVzICovCisJaWYg KGFyZ2MgPT0gMCAgfHwgKGFyZ2MgPT0gMSAmJiAhKGRvZGlyIHx8IGRvZmlsZSkpKQogCQl1c2Fn ZSgpOwogCiAJLyogbmVlZCB0byBtYWtlIGEgdGVtcCBjb3B5IHNvIHdlIGNhbiBjb21wYXJlIHN0 cmlwcGVkIHZlcnNpb24gKi8KQEAgLTIxMSw2ICsyMjQsMTMgQEAKIAkJLyogTk9UUkVBQ0hFRCAq LwogCX0KIAorCWlmIChkb2ZpbGUpIHsKKwkJZm9yICg7ICphcmd2ICE9IE5VTEw7ICsrYXJndikK KwkJCXRvdWNoX2ZpbGUoKmFyZ3YsIGlmbGFncyk7CisJCWV4aXQoRVhfT0spOworCQkvKiBOT1RS RUFDSEVEICovCisJfQorCiAJbm9fdGFyZ2V0ID0gc3RhdCh0b19uYW1lID0gYXJndlthcmdjIC0g MV0sICZ0b19zYik7CiAJaWYgKCFub190YXJnZXQgJiYgU19JU0RJUih0b19zYi5zdF9tb2RlKSkg ewogCQlmb3IgKDsgKmFyZ3YgIT0gdG9fbmFtZTsgKythcmd2KQpAQCAtNzY3LDYgKzc4Nyw0NyBA QAogfQogCiAvKgorICogdG91Y2hfZmlsZSAtLQorICoJY3JlYXRlIGFuIGVtcHR5IGZpbGUKKyAq Lwordm9pZAordG91Y2hfZmlsZShjaGFyICpwYXRoLCB1X2ludCBmbGFncykKK3sKKwlzdHJ1Y3Qg c3RhdCBzYjsKKwlpbnQgZmQ7CisJaWYgKHN0YXQocGF0aCwgJnNiKSkgeworCQlmZCA9IG9wZW4o cGF0aCwgIE9fV1JPTkxZIHwgT19DUkVBVCwKKwkJCURFRkZJTEVNT0RFKTsKKwkJaWYgKGZkIDwg MCkgCQorCQkJZXJyKEVYX09TRVJSLCAidG91Y2ggJXMiLCBwYXRoKTsKKwkJZWxzZSBjbG9zZShm ZCk7CisJfSBlbHNlIGlmICh2ZXJib3NlKQorCQkodm9pZClwcmludGYoImluc3RhbGw6IHRvdWNo ICVzXG4iLCBwYXRoKTsKKwllbHNlIGlmICghU19JU1JFRyhzYi5zdF9tb2RlKSkKKwkJZXJyeChF WF9PU0VSUiwgIiVzIGV4aXN0cyBidXQgaXMgbm90IGEgcmVndWxhciBmaWxlIiwgcGF0aCk7CisJ aWYgKChnaWQgIT0gKGdpZF90KS0xIHx8IHVpZCAhPSAodWlkX3QpLTEpICYmIGNob3duKHBhdGgs IHVpZCwgZ2lkKSkKKwkJd2FybigiY2hvd24gJXU6JXUgJXMiLCB1aWQsIGdpZCwgcGF0aCk7CisJ LyogQWxsb3cgbW9kZSBjaGFuZ2Ugb24gZmlsZSBidXQgZG9uJ3QgYXBwbHkgZGVmYXVsdCBtb2Rl IHdoaWNoIGhhcyBleGVjCisJICogYml0CisJICovCisJaWYgKGRvbW9kZSkgeworCQlpZiAoY2ht b2QocGF0aCwgbW9kZSkpCisJCQl3YXJuKCJjaG1vZCAlbyAlcyIsIG1vZGUsIHBhdGgpOworCX0K KwlpZiAoZmxhZ3MpIHsKKwkJaWYgKGNoZmxhZ3MocGF0aCwgZmxhZ3MpIDwgMCkgeworCQkJLyog ZnMgZG9lc24ndCBzdXBwb3J0IGZsYWdzICovCisJCQlpZiAoZXJybm8gPT0gRU9QTk9UU1VQUCkK KwkJCQl3YXJuKCIlczogY2hmbGFncyIsIHBhdGgpOworCQkJZWxzZQorCQkJCWVycihFWF9PU0VS UiwgIiVzOiBjaGZsYWdzIiwgcGF0aCk7CisJCX0KKwl9CisKK30KKworCisvKgogICogdXNhZ2Ug LS0KICAqCXByaW50IGEgdXNhZ2UgbWVzc2FnZSBhbmQgZGllCiAgKi8KQEAgLTc3OCw3ICs4Mzks OCBAQAogIiAgICAgICAgICAgICAgIFstbyBvd25lcl0gZmlsZTEgZmlsZTJcbiIKICIgICAgICAg aW5zdGFsbCBbLWJDY3BTc3ZdIFstQiBzdWZmaXhdIFstZiBmbGFnc10gWy1nIGdyb3VwXSBbLW0g bW9kZV1cbiIKICIgICAgICAgICAgICAgICBbLW8gb3duZXJdIGZpbGUxIC4uLiBmaWxlTiBkaXJl Y3RvcnlcbiIKLSIgICAgICAgaW5zdGFsbCAtZCBbLXZdIFstZyBncm91cF0gWy1tIG1vZGVdIFst byBvd25lcl0gZGlyZWN0b3J5IC4uLlxuIik7CisiICAgICAgIGluc3RhbGwgLWQgWy12XSBbLWcg Z3JvdXBdIFstbSBtb2RlXSBbLW8gb3duZXJdIGRpcmVjdG9yeSAuLi5cbiIKKyIgICAgICAgaW5z dGFsbCAtdCBbLXZdIFstZyBncm91cF0gWy1mIGZsYWdzXSBbLW0gbW9kZV0gWy1vIG93bmVyXSBm aWxlIC4uLlxuIik7CiAJZXhpdChFWF9VU0FHRSk7CiAJLyogTk9UUkVBQ0hFRCAqLwogfQo= --0015174bdea4e13a5f048b95636a--