From 4df991abba0a8d25ab394b192d5e04fabe78ff55 Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Tue, 16 Apr 2013 21:10:38 +0000 Subject: [PATCH] --- yaml --- r: 362650 b: refs/heads/master c: e15465e1808542743627f13d1c0cbb7eacc82b83 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/net/irda/irlmp.h | 3 ++- trunk/net/irda/iriap.c | 3 ++- trunk/net/irda/irlmp.c | 10 +++++++++- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index f2e336d3911f..08e6e3d1d1c5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fd7fc253289c419615c1c8bbe418598019567392 +refs/heads/master: e15465e1808542743627f13d1c0cbb7eacc82b83 diff --git a/trunk/include/net/irda/irlmp.h b/trunk/include/net/irda/irlmp.h index f74109144d3f..f132924cc9da 100644 --- a/trunk/include/net/irda/irlmp.h +++ b/trunk/include/net/irda/irlmp.h @@ -256,7 +256,8 @@ static inline __u32 irlmp_get_daddr(const struct lsap_cb *self) return (self && self->lap) ? self->lap->daddr : 0; } -extern const char *irlmp_reasons[]; +const char *irlmp_reason_str(LM_REASON reason); + extern int sysctl_discovery_timeout; extern int sysctl_discovery_slots; extern int sysctl_discovery; diff --git a/trunk/net/irda/iriap.c b/trunk/net/irda/iriap.c index 29340a9a6fb9..e1b37f5a2691 100644 --- a/trunk/net/irda/iriap.c +++ b/trunk/net/irda/iriap.c @@ -303,7 +303,8 @@ static void iriap_disconnect_indication(void *instance, void *sap, { struct iriap_cb *self; - IRDA_DEBUG(4, "%s(), reason=%s\n", __func__, irlmp_reasons[reason]); + IRDA_DEBUG(4, "%s(), reason=%s [%d]\n", __func__, + irlmp_reason_str(reason), reason); self = instance; diff --git a/trunk/net/irda/irlmp.c b/trunk/net/irda/irlmp.c index 6115a44c0a24..1064621da6f6 100644 --- a/trunk/net/irda/irlmp.c +++ b/trunk/net/irda/irlmp.c @@ -66,8 +66,15 @@ const char *irlmp_reasons[] = { "LM_LAP_RESET", "LM_INIT_DISCONNECT", "ERROR, NOT USED", + "UNKNOWN", }; +const char *irlmp_reason_str(LM_REASON reason) +{ + reason = min_t(size_t, reason, ARRAY_SIZE(irlmp_reasons) - 1); + return irlmp_reasons[reason]; +} + /* * Function irlmp_init (void) * @@ -747,7 +754,8 @@ void irlmp_disconnect_indication(struct lsap_cb *self, LM_REASON reason, { struct lsap_cb *lsap; - IRDA_DEBUG(1, "%s(), reason=%s\n", __func__, irlmp_reasons[reason]); + IRDA_DEBUG(1, "%s(), reason=%s [%d]\n", __func__, + irlmp_reason_str(reason), reason); IRDA_ASSERT(self != NULL, return;); IRDA_ASSERT(self->magic == LMP_LSAP_MAGIC, return;);