From: "Christian Ruppert" <idl0r@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/gitolite-gentoo:master commit in: /
Date: Mon, 17 Oct 2011 19:29:19 +0000 (UTC) [thread overview]
Message-ID: <3cebef1b32770f128f6795c580cabbc9b1ceecc1.idl0r@gentoo> (raw)
commit: 3cebef1b32770f128f6795c580cabbc9b1ceecc1
Author: Christian Ruppert <idl0r <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 17 18:58:21 2011 +0000
Commit: Christian Ruppert <idl0r <AT> gentoo <DOT> org>
CommitDate: Mon Oct 17 18:58:21 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gitolite-gentoo.git;a=commit;h=3cebef1b
Merge commit 'refs/top-bases/t/ssh-key-options' into t/ssh-key-options
Conflicts:
src/gitolite.pm
README.mkd | 99 +++--
conf/example.gitolite.rc | 2 +-
contrib/adc/README.mkd | 2 +-
contrib/adc/gl-reflog | 2 +-
contrib/adc/help | 19 +
contrib/adc/hub.mkd | 2 +-
contrib/adc/repo-deletion.mkd | 9 +-
contrib/adc/set-head | 17 -
contrib/adc/symbolic-ref | 33 ++
contrib/gitweb/gitweb.conf | 2 -
contrib/mirrorconf-helper.sh | 182 +++++++
contrib/mirroring-complex-example.mkd | 344 ++++++++++++
contrib/real-users/gl-shell | 70 +++
contrib/real-users/gl-shell-setup | 105 ++++
contrib/real-users/password-access.mkd | 135 +++++
doc/1-INSTALL.mkd | 147 +++---
doc/2-admin.mkd | 225 ++++++---
doc/3-faq-tips-etc.mkd | 69 ++-
doc/CHANGELOG | 29 +
doc/admin-defined-commands.mkd | 88 ++--
doc/big-config.mkd | 11 +-
doc/delegation.mkd | 172 ++++---
doc/developer-notes.mkd | 46 +--
doc/gitolite-and-ssh.mkd | 4 +-
doc/gitolite.conf.mkd | 99 +++-
doc/gitolite.rc.mkd | 10 +-
doc/hook-propagation.mkd | 36 +-
doc/install-transcript.mkd | 279 ----------
doc/mirroring.mkd | 898 +++++++++++++++++++++++--------
doc/packaging.mkd | 3 -
doc/progit-article.mkd | 31 +-
doc/report-output.mkd | 4 -
doc/shell-games.mkd | 8 +-
doc/ssh-troubleshooting.mkd | 101 ++---
hooks/common/post-receive.mirrorpush | 30 +-
src/gitolite.pm | 96 +++-
src/gitolite_rc.pm | 12 +-
src/gl-auth-command | 20 +-
src/gl-compile-conf | 119 +++--
src/gl-conf-convert | 163 ++++---
src/gl-dryrun | 118 ++++
src/gl-easy-install | 655 ----------------------
src/gl-install | 2 +-
src/gl-mirror-push | 83 +++
src/gl-mirror-shell | 182 ++++++-
src/gl-mirror-sync | 38 --
src/gl-setup-authkeys | 24 +-
src/gl-system-install | 3 +-
src/gl-tool | 135 +++--
src/sshkeys-lint | 18 +-
t/out/t01-repo-groups.1 | 2 +-
t/out/t01-repo-groups.1b | 2 +-
t/out/t01-repo-groups.1bs | 2 +-
t/out/t01-repo-groups.2 | 2 +-
t/out/t02-user-groups.1 | 2 +-
t/out/t02-user-groups.1b | 2 +-
t/out/t02-user-groups.1bs | 2 +-
t/out/t02-user-groups.2 | 2 +-
t/out/t02-user-groups.2bs | 2 +-
t/t05a-delegation | 2 +-
t/t05b-delegation-wild | 2 +-
t/t53-check-info-expand-output | 6 +-
t/t55-repo-configs-wild-without-CREATOR | 42 ++-
t/t56-repo-configs-wild-with-CREATOR | 5 +-
t/t68-include | 12 +-
65 files changed, 3034 insertions(+), 2034 deletions(-)
diff --cc src/gitolite.pm
index 9a7b7ee,b10da00..f595adf
--- a/src/gitolite.pm
+++ b/src/gitolite.pm
@@@ -963,35 -984,27 +990,37 @@@ sub setup_authkey
# lint check 2 -- don't print right now; just collect the messages
push @not_in_config, "$user($pubkey)" if %$user_list_p and not $user_list_p->{$user};
$user_list_p->{$user} = 'has pubkey' if %$user_list_p;
- # apparently some pubkeys don't end in a newline...
- my $pubkey_content;
- {
- local $/ = undef;
- local @ARGV = ($pubkey);
- $pubkey_content = <>;
- }
- $pubkey_content =~ s/\s*$/\n/;
- # don't trust files with multiple lines (i.e., something after a newline)
- if ($pubkey_content =~ /\n./)
- {
- warn "WARNING: a pubkey file can only have one line (key); ignoring $pubkey\n" .
- " Perhaps you're using a key in a different format (like putty/plink)?\n" .
- " If so, please convert it to openssh format using 'ssh-keygen -i'.\n" .
- " If you want to add multiple public keys for a single user, use\n" .
- " \"user\@host.pub\" file names. See the \"one user, many keys\"\n" .
- " section in doc/3-faq-tips-etc.mkd for details.\n";
- next;
+
+ # Parse the pubkey including all options etc...
+ # Use strict mode to abort on faulty files.
+ my $akf = Net::SSH::AuthorizedKeysFile->new( strict => 1, );
+ $akf->read($pubkey);
+
+ foreach my $keyobj ($akf->keys()) {
+ # lint check 3 -- ignore faulty keys
+ if(!defined($keyobj)) {
+ print STDERR "Malformed key '$pubkey', skipping...\n";
+ next;
+ }
+
+ # Preserve only options specified in AUTH_OPTIONS_PRESERVE.
+ foreach my $option (keys(%{$keyobj->options})) {
+ if(!grep(/^\Q${option}\E$/, @AUTH_OPTIONS_PRESERVE)) {
+ delete($keyobj->options->{$option});
+ }
+ }
+
+ # Add our options as well.
+ foreach my $option (keys(%AUTH_OPTIONS)) {
+ $keyobj->option($option, $AUTH_OPTIONS{$option});
+ }
+
+ $keyobj->option("command", "$AUTH_COMMAND $user");
+
+ print $newkeys_fh $keyobj->as_string()."\n";
}
+ print $newkeys_fh "command=\"$AUTH_COMMAND $user\",$AUTH_OPTIONS ";
+ print $newkeys_fh $pubkey_content;
}
# lint check 2 -- print less noisily
next reply other threads:[~2011-10-17 19:30 UTC|newest]
Thread overview: 105+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-17 19:29 Christian Ruppert [this message]
-- strict thread matches above, loose matches on Subject: below --
2011-10-17 19:29 [gentoo-commits] proj/gitolite-gentoo:master commit in: / Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-10-17 19:29 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-08-30 15:46 Christian Ruppert
2011-06-16 0:45 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-06-14 12:02 Christian Ruppert
2011-03-25 20:00 [gentoo-commits] proj/gitolite-gentoo:t/ssh-key-options " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-03-25 20:00 [gentoo-commits] proj/gitolite-gentoo:t/ssh-key-options " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-03-25 20:00 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-03-25 20:00 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-03-25 20:00 Christian Ruppert
2011-03-25 20:00 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:59 Christian Ruppert
2011-03-25 19:57 [gentoo-commits] proj/gitolite-gentoo:t/misc " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/per_repo_umask " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/misc " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/misc " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/export_key_metadata-function " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/find_pubkeys-function " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-03-25 19:59 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-16 16:07 Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/misc " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/find_pubkeys-function " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/export_key_metadata-function " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/export_key_metadata-function " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 [gentoo-commits] proj/gitolite-gentoo:t/export-key-metadata " Christian Ruppert
2011-02-16 16:07 ` [gentoo-commits] proj/gitolite-gentoo:master " Christian Ruppert
2011-02-15 16:42 Christian Ruppert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3cebef1b32770f128f6795c580cabbc9b1ceecc1.idl0r@gentoo \
--to=idl0r@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox