~csurbhi/+junk/cryptsetup.initramfs-fix

« back to all changes in this revision

Viewing changes to debian/initramfs/cryptroot-hook

  • Committer: Steve Langasek
  • Date: 2010-02-03 00:09:34 UTC
  • Revision ID: steve.langasek@canonical.com-20100203000934-s8oarmyvialchfni
debian/initramfs/cryptroot-hook: Properly anchor our regexps when
grepping /etc/crypttab so that we don't incorrectly match device names
that are substrings of one another.

Show diffs side-by-side

added added

removed removed

Lines of Context:
82
82
                fi
83
83
 
84
84
                # Detect devices required by decrypt_derived
85
 
                derived="$(grep "^${device#/dev/mapper/}.*decrypt_derived" /etc/crypttab 2>/dev/null | awk '{print $3}')"
 
85
                derived="$(grep "^${device#/dev/mapper/}\b.*decrypt_derived" /etc/crypttab 2>/dev/null | awk '{print $3}')"
86
86
                if [ -n "$derived" ]; then
87
87
                        if grep -q "^$derived" /etc/crypttab; then
88
88
                                candidates="$candidates /dev/mapper/$derived"
125
125
        local node
126
126
        node="$1"
127
127
 
128
 
        grep -q ^$node /etc/crypttab
 
128
        grep -q "^$node\b" /etc/crypttab
129
129
        return $?
130
130
}
131
131
 
173
173
                return 1
174
174
        fi
175
175
 
176
 
        opt=$( grep ^$target /etc/crypttab | head -1 | sed 's/[[:space:]]\+/ /g' )
 
176
        opt=$( grep "^$target\b" /etc/crypttab | head -1 | sed 's/[[:space:]]\+/ /g' )
177
177
        source=$( echo $opt | cut -d " " -f2 )
178
178
        key=$( echo $opt | cut -d " " -f3 )
179
179
        rootopts=$( echo $opt | cut -d " " -f4- )