telepathy-glib: reject_reason_get_dbus_error: streamline boilerplate with a macro
Guillaume Desmottes
gdesmott at kemper.freedesktop.org
Wed May 9 03:15:55 PDT 2012
Module: telepathy-glib
Branch: master
Commit: 694563fee1ff738e2c2fed14555c1bd2f15a9c34
URL: http://cgit.freedesktop.org/telepathy/telepathy-glib/commit/?id=694563fee1ff738e2c2fed14555c1bd2f15a9c34
Author: Simon McVittie <simon.mcvittie at collabora.co.uk>
Date: Tue Dec 14 15:41:19 2010 +0000
reject_reason_get_dbus_error: streamline boilerplate with a macro
---
telepathy-glib/tls-certificate.c | 42 +++++++++++++------------------------
1 files changed, 15 insertions(+), 27 deletions(-)
diff --git a/telepathy-glib/tls-certificate.c b/telepathy-glib/tls-certificate.c
index 37c897e..06a1e77 100644
--- a/telepathy-glib/tls-certificate.c
+++ b/telepathy-glib/tls-certificate.c
@@ -279,33 +279,21 @@ reject_reason_get_dbus_error (TpTLSCertificateRejectReason reason)
switch (reason)
{
- case TP_TLS_CERTIFICATE_REJECT_REASON_UNTRUSTED:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_UNTRUSTED);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_EXPIRED:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_EXPIRED);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_NOT_ACTIVATED:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_NOT_ACTIVATED);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_FINGERPRINT_MISMATCH:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_FINGERPRINT_MISMATCH);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_HOSTNAME_MISMATCH:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_HOSTNAME_MISMATCH);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_SELF_SIGNED:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_SELF_SIGNED);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_REVOKED:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_REVOKED);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_INSECURE:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_INSECURE);
- break;
- case TP_TLS_CERTIFICATE_REJECT_REASON_LIMIT_EXCEEDED:
- retval = tp_error_get_dbus_name (TP_ERROR_CERT_LIMIT_EXCEEDED);
- break;
+#define EASY_CASE(x) \
+ case TP_TLS_CERTIFICATE_REJECT_REASON_ ## x: \
+ retval = tp_error_get_dbus_name (TP_ERROR_CERT_ ## x); \
+ break
+ EASY_CASE (UNTRUSTED);
+ EASY_CASE (EXPIRED);
+ EASY_CASE (NOT_ACTIVATED);
+ EASY_CASE (FINGERPRINT_MISMATCH);
+ EASY_CASE (HOSTNAME_MISMATCH);
+ EASY_CASE (SELF_SIGNED);
+ EASY_CASE (REVOKED);
+ EASY_CASE (INSECURE);
+ EASY_CASE (LIMIT_EXCEEDED);
+#undef EASY_CASE
+
case TP_TLS_CERTIFICATE_REJECT_REASON_UNKNOWN:
default:
retval = tp_error_get_dbus_name (TP_ERROR_CERT_INVALID);
More information about the telepathy-commits
mailing list