[sr-dev] [kamailio/kamailio] db_postgres compilation fails if htonll is defined (#665)

sjthomason notifications at github.com
Thu Jun 9 18:39:54 CEST 2016


```

pg_fld.c:97:40: error: expected ‘)’ before ‘in’
 static inline uint64_t htonll(uint64_t in)
                                        ^
pg_fld.c:107:40: error: expected ‘)’ before ‘in’
 static inline uint64_t ntohll(uint64_t in)
                                        ^
```

There is a fairly specific ifdef that doesn't match other platforms that define htonll and ntohll such as Solaris:
```
#if !defined(__OS_darwin) || (defined(__OS_darwin) && !defined(NTOHLL))
```

Would it be acceptable to change these to:
```
#ifndef htonll
```

For example:
```
diff --git a/modules/db_postgres/pg_fld.c b/modules/db_postgres/pg_fld.c
index de62c14..d9b4911 100644
--- a/modules/db_postgres/pg_fld.c
+++ b/modules/db_postgres/pg_fld.c
@@ -93,7 +93,7 @@ union ull {
        uint32_t ui32[2];
 };
 
-#if !defined(__OS_darwin) || (defined(__OS_darwin) && !defined(NTOHLL))
+#ifndef htonll
 static inline uint64_t htonll(uint64_t in)
 {
        union ull* p = (union ull*)∈
@@ -103,7 +103,7 @@ static inline uint64_t htonll(uint64_t in)
 #endif
 
 
-#if !defined(__OS_darwin) || (defined(__OS_darwin) && !defined(NTOHLL))
+#ifndef ntohll
 static inline uint64_t ntohll(uint64_t in)
 {
        union ull* p = (union ull*)∈
```

---
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/665
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20160609/8474c9f4/attachment-0001.html>


More information about the sr-dev mailing list