]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-lldp: hide internal details 1333/head
authorDavid Herrmann <dh.herrmann@gmail.com>
Tue, 22 Sep 2015 13:19:42 +0000 (15:19 +0200)
committerDavid Herrmann <dh.herrmann@gmail.com>
Tue, 22 Sep 2015 13:19:42 +0000 (15:19 +0200)
Currently, sd-lldp.h exports "UPDATE_INFO".. and defines it to a magic
constant '10'. This is completely bogus, so fix it to follow our coding
standards:

  - Prefix exported symbols by SD_LLDP_*

  - Define a separate event-enum for event types

  - Translate internal state to external event-types

src/libsystemd-network/sd-lldp.c
src/network/networkd-link.c
src/systemd/sd-lldp.h

index 574e04b541e48cda0e7d77d2569c7ab7c94f661f..17512884f555cfaa2deaaea0b74be276e75a94c8 100644 (file)
@@ -366,10 +366,16 @@ static void lldp_set_state(sd_lldp *lldp, LLDPAgentRXState state) {
 }
 
 static void lldp_run_state_machine(sd_lldp *lldp) {
+        if (!lldp->cb)
+                return;
 
-        if (lldp->rx_state == LLDP_AGENT_RX_UPDATE_INFO)
-                if (lldp->cb)
-                        lldp->cb(lldp, LLDP_AGENT_RX_UPDATE_INFO, lldp->userdata);
+        switch (lldp->rx_state) {
+        case LLDP_AGENT_RX_UPDATE_INFO:
+                lldp->cb(lldp, SD_LLDP_EVENT_UPDATE_INFO, lldp->userdata);
+                break;
+        default:
+                break;
+        }
 }
 
 /* 10.5.5.2.1 mibDeleteObjects ()
index 215c47b8af9e120bb38cc10116bc53cec379b1af..86f1c3bb1a6a6c9f5edc57f2345c2555b59c09d5 100644 (file)
@@ -1112,13 +1112,16 @@ static void lldp_handler(sd_lldp *lldp, int event, void *userdata) {
         assert(link->network);
         assert(link->manager);
 
-        if (event != UPDATE_INFO)
-                return;
-
-        r = sd_lldp_save(link->lldp, link->lldp_file);
-        if (r < 0)
-                log_link_warning_errno(link, r, "Could not save LLDP: %m");
+        switch (event) {
+        case SD_LLDP_EVENT_UPDATE_INFO:
+                r = sd_lldp_save(link->lldp, link->lldp_file);
+                if (r < 0)
+                        log_link_warning_errno(link, r, "Could not save LLDP: %m");
 
+                break;
+        default:
+                break;
+        }
 }
 
 static int link_acquire_conf(Link *link) {
index 09551d4a1ab5ef1fa8f88b138fc061ca032562b5..0680e526b0982f00779e9c31471878925113cfae 100644 (file)
 
 #include "sd-event.h"
 
+enum {
+        SD_LLDP_EVENT_UPDATE_INFO       = 0,
+};
+
 typedef struct sd_lldp sd_lldp;
 
 typedef void (*sd_lldp_cb_t)(sd_lldp *lldp, int event, void *userdata);
 
-enum {
-        UPDATE_INFO = 10,
-};
-
 int sd_lldp_new(int ifindex, const char *ifname, const struct ether_addr *mac, sd_lldp **ret);
 void sd_lldp_free(sd_lldp *lldp);