From 18707dc674c5717eb04ed108a683396c5dc7e63b Mon Sep 17 00:00:00 2001 From: Peter Wu Date: Thu, 19 Sep 2013 11:18:10 +0200 Subject: Distinguish GCM ciphers, fix RC2 type RC2 is a block, not a stream. I thought I fixed this some time ago... --- generate-wireshark-cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'generate-wireshark-cs') diff --git a/generate-wireshark-cs b/generate-wireshark-cs index 5814fd9..4bc1fa1 100755 --- a/generate-wireshark-cs +++ b/generate-wireshark-cs @@ -102,6 +102,8 @@ p() { ;; esac + # GCM's IV size is always 4 regardless of underlying block cipher + [[ $1 == *_GCM_* ]] && blocksize=4 || case $cipher in AES|AES256|CAMELLIA128|CAMELLIA256|SEED) blocksize=16 ;; @@ -136,11 +138,11 @@ p() { warn "Export cipher, actual keysize may not be accurate: $hexid $1" fi - # mode=STREAM + [[ $1 == *_GCM_* ]] && mode=GCM || case $cipher in - AES|AES256|DES|3DES|CAMELLIA128|CAMELLIA256|SEED|IDEA) + AES|AES256|DES|3DES|CAMELLIA128|CAMELLIA256|SEED|IDEA|RC2) mode=CBC ;; - RC2|RC4|NULL) + RC4|NULL) mode=STREAM ;; *) warn "Unknown mode in $hexid $1 (cipher=$cipher)" -- cgit v1.2.1