/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to mandos-keygen

  • Committer: Teddy Hogeborn
  • Date: 2016-03-17 20:40:55 UTC
  • Revision ID: teddy@recompile.se-20160317204055-bhsh5xsidq7w5cxu
Client: Fix plymouth agent; broken since 1.7.2.

Fix an very old memory bug in the plymouth agent (which has been
present since its apperance in version 1.2), but which was only
recently detected at run time due to the new -fsanitize=address
compile- time flag, which has been used since version 1.7.2.  This
detection of a memory access violation causes the program to abort,
making the Plymouth graphical boot system unable to accept interactive
input of passwords when using the Mandos client.

* plugins.d/plymouth.c (exec_and_wait): Fix memory allocation bug when
  allocating new_argv.  Also tolerate a zero-length argv.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
3
3
# Mandos key generator - create a new OpenPGP key for a Mandos client
4
4
5
 
# Copyright © 2008-2017 Teddy Hogeborn
6
 
# Copyright © 2008-2017 Björn Påhlsson
 
5
# Copyright © 2008-2016 Teddy Hogeborn
 
6
# Copyright © 2008-2016 Björn Påhlsson
7
7
8
8
# This program is free software: you can redistribute it and/or modify
9
9
# it under the terms of the GNU General Public License as published by
21
21
# Contact the authors at <mandos@recompile.se>.
22
22
23
23
 
24
 
VERSION="1.7.15"
 
24
VERSION="1.7.6"
25
25
 
26
26
KEYDIR="/etc/keys/mandos"
27
27
KEYTYPE=RSA
218
218
        #Handle: <no-spaces>
219
219
        #%pubring pubring.gpg
220
220
        #%secring secring.gpg
221
 
        %no-protection
222
221
        %commit
223
222
        EOF
224
223
    
286
285
    esac
287
286
    
288
287
    if [ $SSH -eq 1 ]; then
289
 
        for ssh_keytype in ecdsa-sha2-nistp256 ed25519 rsa; do
 
288
        for ssh_keytype in ed25519 rsa; do
290
289
            set +e
291
290
            ssh_fingerprint="`ssh-keyscan -t $ssh_keytype localhost 2>/dev/null`"
292
291
            set -e
325
324
            cat "$PASSFILE"
326
325
        else
327
326
            tty --quiet && stty -echo
328
 
            echo -n "Enter passphrase: " >/dev/tty
329
 
            read -r first
 
327
            echo -n "Enter passphrase: " >&2
 
328
            read first
330
329
            tty --quiet && echo >&2
331
 
            echo -n "Repeat passphrase: " >/dev/tty
332
 
            read -r second
 
330
            echo -n "Repeat passphrase: " >&2
 
331
            read second
333
332
            if tty --quiet; then
334
333
                echo >&2
335
334
                stty echo