From 046d9e7cd578896aec535c6cceee0d4213a9c37a Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Tue, 20 Feb 2007 13:40:30 +0000 Subject: [PATCH] Added ec_device_id_print(). --- master/device_id.c | 23 +++++++++++++++++++++++ master/device_id.h | 1 + 2 files changed, 24 insertions(+) diff --git a/master/device_id.c b/master/device_id.c index 8cc86cbd..586e7be3 100644 --- a/master/device_id.c +++ b/master/device_id.c @@ -197,3 +197,26 @@ int ec_device_id_check(const ec_device_id_t *dev_id, } /*****************************************************************************/ + +ssize_t ec_device_id_print(const ec_device_id_t *dev_id, char *buffer) +{ + off_t off = 0; + unsigned int i; + + switch (dev_id->type) { + case ec_device_id_empty: + off += sprintf(buffer + off, "none"); + break; + case ec_device_id_mac: + off += sprintf(buffer + off, "MAC "); + for (i = 0; i < ETH_ALEN; i++) { + off += sprintf(buffer + off, "%02X", dev_id->octets[i]); + if (i < ETH_ALEN - 1) off += sprintf(buffer + off, ":"); + } + break; + } + + return off; +} + +/*****************************************************************************/ diff --git a/master/device_id.h b/master/device_id.h index ef1f4f52..7eb61da7 100644 --- a/master/device_id.h +++ b/master/device_id.h @@ -67,6 +67,7 @@ int ec_device_id_process_params(const char *, const char *, void ec_device_id_clear_list(struct list_head *); int ec_device_id_check(const ec_device_id_t *, const struct net_device *, const char *, unsigned int); +ssize_t ec_device_id_print(const ec_device_id_t *, char *); /*****************************************************************************/