diff options
author | gerald <gerald@f5534014-38df-0310-8fa8-9805f1628bb7> | 2011-04-26 21:59:11 +0000 |
---|---|---|
committer | gerald <gerald@f5534014-38df-0310-8fa8-9805f1628bb7> | 2011-04-26 21:59:11 +0000 |
commit | 3122bf11c62ee942d2f9708c39283efdc96c307b (patch) | |
tree | 85d7982fbcded140cf5573aa8376dbd89a05ba70 /epan/dissectors/packet-ssl-utils.h | |
parent | 7f8faef350c859c2d5d03e0851a705df0f9e729d (diff) |
From Ivan Sy via bug 3343:
- Support for DTLS and SSL RSA keys list using User Accessible Table
- Support for IPv6 SSL as posted by bug#3343 comment#1
- 'any' and 'anyipv4' for IPv4 wildcard
- 'anyipv6' for IPv6 wildcard
- UAT fields validation.
From me:
- Update paramaters to match UAT API changes.
- Change the UAT filename.
- Fix buffer overflow for IPv6 addresses.
- Allow the use of hostnames along with numeric addresses.
- Don't convert strings to addresses twice.
- Don't use the same variable name for different data types.
- Make "any" mean "any IPv4 or any IPv6".
- Bend the concept of obsolete preferences slightly so that we can convert
and old-style key list to a UAT.
- Clean up whitespace.
- Don't point to a User's Guide section for now; it may make more sense to
keep using the wiki page.
SSL dissector changes have been tested. DTLS dissector changes have not.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@36875 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/dissectors/packet-ssl-utils.h')
-rw-r--r-- | epan/dissectors/packet-ssl-utils.h | 34 |
1 files changed, 31 insertions, 3 deletions
diff --git a/epan/dissectors/packet-ssl-utils.h b/epan/dissectors/packet-ssl-utils.h index ea0b5eb70d..157a63f1dc 100644 --- a/epan/dissectors/packet-ssl-utils.h +++ b/epan/dissectors/packet-ssl-utils.h @@ -346,6 +346,21 @@ typedef struct _Ssl_private_key { SSL_PRIVATE_KEY *sexp_pkey; } Ssl_private_key_t; +/* User Access Table */ +typedef struct _ssldecrypt_assoc_t { + char* ipaddr; + char* port; + char* protocol; + char* keyfile; + char* password; +} ssldecrypt_assoc_t; + +gboolean ssldecrypt_uat_fld_ip_chk_cb(void*, const char*, unsigned, const void*, const void*, const char** err); +gboolean ssldecrypt_uat_fld_port_chk_cb(void*, const char*, unsigned, const void*, const void*, const char** err); +gboolean ssldecrypt_uat_fld_protocol_chk_cb(void*, const char*, unsigned, const void*, const void*, const char** err); +gboolean ssldecrypt_uat_fld_fileopen_chk_cb(void*, const char*, unsigned, const void*, const void*, const char** err); +gboolean ssldecrypt_uat_fld_password_chk_cb(void*, const char*, unsigned, const void*, const void*, const char** err); + /** Initialize decryption engine/ssl layer. To be called once per execution */ extern void ssl_lib_init(void); @@ -487,7 +502,7 @@ ssl_common_init(GHashTable **session_hash, StringInfo *decrypted_data, StringInf /* parse ssl related preferences (private keys and ports association strings) */ extern void -ssl_parse_key_list(const gchar * keys_list, GHashTable *key_hash, GTree* associations, dissector_handle_t handle, gboolean tcp); +ssl_parse_key_list(const ssldecrypt_assoc_t * uats, GHashTable *key_hash, GTree* associations, dissector_handle_t handle, gboolean tcp); /* store master secret into session data cache */ extern void @@ -525,6 +540,19 @@ ssl_debug_printf(const gchar* fmt _U_,...) #define ssl_set_debug(name) #define ssl_debug_flush() -#endif +#endif /* SSL_DECRYPT_DEBUG */ -#endif +#endif /* SSL_UTILS_H */ + +/* + * Editor modelines - http://www.wireshark.org/tools/modelines.html + * + * Local variables: + * c-basic-offset: 4 + * tab-width: 8 + * indent-tabs-mode: nil + * End: + * + * vi: set shiftwidth=4 tabstop=8 expandtab + * :indentSize=4:tabSize=8:noTabs=true: + */ |