aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2011-09-20 10:15:09 +0000
committerStig Bjørlykke <stig@bjorlykke.org>2011-09-20 10:15:09 +0000
commit05545304079f27ced223ff013fb38fe40c151ecc (patch)
tree952e5a096a49be9d03162d0934472c4bb045b472 /epan/dissectors
parentc3cb0e6dd9d51a6febe343e68529b708a83f7ffb (diff)
From Dirk via bug 6361:
Use File/Directory Dialog as a field type for UAT preferences. svn path=/trunk/; revision=39059
Diffstat (limited to 'epan/dissectors')
-rw-r--r--epan/dissectors/packet-dtls.c4
-rw-r--r--epan/dissectors/packet-ssl-utils.c17
-rw-r--r--epan/dissectors/packet-ssl.c4
3 files changed, 11 insertions, 14 deletions
diff --git a/epan/dissectors/packet-dtls.c b/epan/dissectors/packet-dtls.c
index dad0c8dbb7..608ded2a77 100644
--- a/epan/dissectors/packet-dtls.c
+++ b/epan/dissectors/packet-dtls.c
@@ -2009,7 +2009,7 @@ dtlsdecrypt_copy_cb(void* dest, const void* orig, size_t len _U_)
UAT_CSTRING_CB_DEF(sslkeylist_uats,ipaddr,ssldecrypt_assoc_t)
UAT_CSTRING_CB_DEF(sslkeylist_uats,port,ssldecrypt_assoc_t)
UAT_CSTRING_CB_DEF(sslkeylist_uats,protocol,ssldecrypt_assoc_t)
-UAT_CSTRING_CB_DEF(sslkeylist_uats,keyfile,ssldecrypt_assoc_t)
+UAT_FILENAME_CB_DEF(sslkeylist_uats,keyfile,ssldecrypt_assoc_t)
UAT_CSTRING_CB_DEF(sslkeylist_uats,password,ssldecrypt_assoc_t)
#endif
@@ -2346,7 +2346,7 @@ proto_register_dtls(void)
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, ipaddr, "IP address", ssldecrypt_uat_fld_ip_chk_cb, "IPv4 or IPv6 address"),
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, port, "Port", ssldecrypt_uat_fld_port_chk_cb, "Port Number"),
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, protocol, "Protocol", ssldecrypt_uat_fld_protocol_chk_cb, "Protocol"),
- UAT_FLD_CSTRING_OTHER(sslkeylist_uats, keyfile, "Key File", ssldecrypt_uat_fld_fileopen_chk_cb, "Path to the keyfile."),
+ UAT_FLD_FILENAME_OTHER(sslkeylist_uats, keyfile, "Key File", ssldecrypt_uat_fld_fileopen_chk_cb, "Path to the keyfile."),
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, password," Password (p12 file)", ssldecrypt_uat_fld_password_chk_cb, "Password"),
UAT_END_FIELDS
};
diff --git a/epan/dissectors/packet-ssl-utils.c b/epan/dissectors/packet-ssl-utils.c
index 2d98d1dcb8..360ff2a73d 100644
--- a/epan/dissectors/packet-ssl-utils.c
+++ b/epan/dissectors/packet-ssl-utils.c
@@ -3550,8 +3550,7 @@ ssl_print_string(const gchar* name, const StringInfo* data)
gboolean
ssldecrypt_uat_fld_ip_chk_cb(void* r _U_, const char* p, unsigned len _U_, const void* u1 _U_, const void* u2 _U_, const char** err)
{
-
- if ((gint)strlen(p) == 0) {
+ if (!p || strlen(p) == 0u) {
*err = ep_strdup_printf("No IP address given.");
return FALSE;
}
@@ -3563,16 +3562,14 @@ ssldecrypt_uat_fld_ip_chk_cb(void* r _U_, const char* p, unsigned len _U_, const
gboolean
ssldecrypt_uat_fld_port_chk_cb(void* r _U_, const char* p, unsigned len _U_, const void* u1 _U_, const void* u2 _U_, const char** err)
{
- guint i;
-
- if ((gint)strlen(p) == 0) {
+ if (!p || strlen(p) == 0u) {
*err = ep_strdup_printf("No Port given.");
return FALSE;
}
if (strcmp(p, "start_tls") != 0){
- i = atoi(p);
- if (i <= 0) {
+ const gint i = atoi(p);
+ if (i <= 0 || i > 65535) {
*err = ep_strdup_printf("Invalid port given.");
return FALSE;
}
@@ -3585,7 +3582,7 @@ ssldecrypt_uat_fld_port_chk_cb(void* r _U_, const char* p, unsigned len _U_, con
gboolean
ssldecrypt_uat_fld_protocol_chk_cb(void* r _U_, const char* p, unsigned len _U_, const void* u1 _U_, const void* u2 _U_, const char** err)
{
- if ((gint)strlen(p) == 0) {
+ if (!p || strlen(p) == 0u) {
*err = ep_strdup_printf("No protocol given.");
return FALSE;
}
@@ -3604,7 +3601,7 @@ ssldecrypt_uat_fld_fileopen_chk_cb(void* r _U_, const char* p, unsigned len _U_,
{
ws_statb64 st;
- if ((gint)strlen(p) == 0) {
+ if (!p || strlen(p) == 0u) {
*err = ep_strdup_printf("No filename given.");
return FALSE;
} else {
@@ -3624,7 +3621,7 @@ ssldecrypt_uat_fld_password_chk_cb(void* r _U_, const char* p, unsigned len _U_,
ssldecrypt_assoc_t* f = r;
FILE *fp = NULL;
- if ((gint)strlen(p) > 0) {
+ if (p && strlen(p) > 0u) {
fp = ws_fopen(f->keyfile, "rb");
if (fp) {
if (!ssl_load_pkcs12(fp, p)) {
diff --git a/epan/dissectors/packet-ssl.c b/epan/dissectors/packet-ssl.c
index 00e01b3549..8db6de71f5 100644
--- a/epan/dissectors/packet-ssl.c
+++ b/epan/dissectors/packet-ssl.c
@@ -4390,7 +4390,7 @@ ssldecrypt_copy_cb(void* dest, const void* orig, size_t len _U_)
UAT_CSTRING_CB_DEF(sslkeylist_uats,ipaddr,ssldecrypt_assoc_t)
UAT_CSTRING_CB_DEF(sslkeylist_uats,port,ssldecrypt_assoc_t)
UAT_CSTRING_CB_DEF(sslkeylist_uats,protocol,ssldecrypt_assoc_t)
-UAT_CSTRING_CB_DEF(sslkeylist_uats,keyfile,ssldecrypt_assoc_t)
+UAT_FILENAME_CB_DEF(sslkeylist_uats,keyfile,ssldecrypt_assoc_t)
UAT_CSTRING_CB_DEF(sslkeylist_uats,password,ssldecrypt_assoc_t)
#endif
@@ -4983,7 +4983,7 @@ proto_register_ssl(void)
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, ipaddr, "IP address", ssldecrypt_uat_fld_ip_chk_cb, "IPv4 or IPv6 address"),
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, port, "Port", ssldecrypt_uat_fld_port_chk_cb, "Port Number"),
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, protocol, "Protocol", ssldecrypt_uat_fld_protocol_chk_cb, "Protocol"),
- UAT_FLD_CSTRING_OTHER(sslkeylist_uats, keyfile, "Key File", ssldecrypt_uat_fld_fileopen_chk_cb, "Private keyfile."),
+ UAT_FLD_FILENAME_OTHER(sslkeylist_uats, keyfile, "Key File", ssldecrypt_uat_fld_fileopen_chk_cb, "Private keyfile."),
UAT_FLD_CSTRING_OTHER(sslkeylist_uats, password,"Password", ssldecrypt_uat_fld_password_chk_cb, "Password (for PCKS#12 keyfile)"),
UAT_END_FIELDS
};