PUD: the downlink port is in network byte order
authorFerry Huberts <f.huberts@mindef.nl>
Tue, 1 Nov 2011 10:32:26 +0000 (11:32 +0100)
committerFerry Huberts <f.huberts@mindef.nl>
Tue, 1 Nov 2011 10:32:26 +0000 (11:32 +0100)
Signed-off-by: Ferry Huberts <f.huberts@mindef.nl>
lib/pud/wireformat-java/src/main/c/org_olsr_plugin_pud_ClusterLeader.c
lib/pud/wireformat/include/OlsrdPudWireFormat/wireFormat.h

index ed449bf..6d6924f 100644 (file)
@@ -1,5 +1,6 @@
 #include "org_olsr_plugin_pud_ClusterLeader.h"
 #include "util.h"
+#include <arpa/inet.h>
 
 /*
  * Class:     org_olsr_plugin_pud_ClusterLeader
@@ -53,8 +54,8 @@ JNIEXPORT jint JNICALL Java_org_olsr_plugin_pud_ClusterLeader_getClusterLeaderDo
        UplinkMessage * uplinkMessage = getUplinkMessage(env, this, &dataObject,
                        &isCopy);
 
-       unsigned short downlinkPort = getClusterLeaderDownlinkPort(
-                       getClusterLeaderMessage(uplinkMessage));
+       unsigned short downlinkPort = ntohs(getClusterLeaderDownlinkPort(
+                       getClusterLeaderMessage(uplinkMessage)));
 
        releaseUplinkMessage(env, uplinkMessage, dataObject, isCopy, JNI_ABORT);
 
index 272b6d0..f7eba96 100644 (file)
@@ -249,7 +249,7 @@ typedef enum _UplinkMessageType {
 typedef struct _UplinkClusterLeader {
        uint8_t version; /**< the version of the message */
        uint8_t validityTime; /**< the validity time of the sentence */
-       uint16_t downlinkPort; /**< the UDP port on which downlink messages are expected */
+       uint16_t downlinkPort; /**< the UDP port on which downlink messages are expected (in network byte order) */
        union _leader {
                struct _v4 {
                        struct in_addr originator;
@@ -946,7 +946,7 @@ static inline void setClusterLeaderVersion(
  @param clusterLeaderMessage
  A pointer to the cluster leader message
  @return
- The downlink port of the cluster leader message
+ The downlink port of the cluster leader message (in network byte order)
  */
 static inline uint16_t getClusterLeaderDownlinkPort(
                UplinkClusterLeader * clusterLeaderMessage) {
@@ -959,7 +959,7 @@ static inline uint16_t getClusterLeaderDownlinkPort(
  @param clusterLeaderMessage
  A pointer to the cluster leader message
  @param port
- The downlink port of the cluster leader message
+ The downlink port of the cluster leader message (in network byte order)
  */
 static inline void setClusterLeaderDownlinkPort(
                UplinkClusterLeader * clusterLeaderMessage, uint16_t port) {