]> git.ipfire.org Git - thirdparty/ulogd2.git/commitdiff
sqlite3: correct binding of ipv4 addresses and 64-bit integers
authorJeremy Sowden <jeremy@azazel.net>
Mon, 21 Aug 2023 19:42:35 +0000 (20:42 +0100)
committerFlorian Westphal <fw@strlen.de>
Thu, 14 Sep 2023 12:22:49 +0000 (14:22 +0200)
Hitherto we have bound ipv4 addresses as 64-bit ints and 64-bit ints as
32-bit.

Move a `ULOGD_RET_BOOL` case for consistency and fix some nearby
formatting.

Fix some nearby formatting.

Signed-off-by: Jeremy Sowden <jeremy@azazel.net>
Signed-off-by: Florian Westphal <fw@strlen.de>
output/sqlite3/ulogd_output_SQLITE3.c

index 0a9ad67edcff2d2defa98c0aa28b5a937e500bd0..3a823892a2dd56282353669957dfeae259c82db5 100644 (file)
@@ -145,6 +145,10 @@ sqlite3_interp(struct ulogd_pluginstance *pi)
                }
 
                switch (f->key->type) {
+               case ULOGD_RET_BOOL:
+                       ret = sqlite3_bind_int(priv->p_stmt, i, k_ret->u.value.b);
+                       break;
+
                case ULOGD_RET_INT8:
                        ret = sqlite3_bind_int(priv->p_stmt, i, k_ret->u.value.i8);
                        break;
@@ -158,7 +162,7 @@ sqlite3_interp(struct ulogd_pluginstance *pi)
                        break;
 
                case ULOGD_RET_INT64:
-                       ret = sqlite3_bind_int(priv->p_stmt, i, k_ret->u.value.i64);
+                       ret = sqlite3_bind_int64(priv->p_stmt, i, k_ret->u.value.i64);
                        break;
                        
                case ULOGD_RET_UINT8:
@@ -174,17 +178,16 @@ sqlite3_interp(struct ulogd_pluginstance *pi)
                        break;
 
                case ULOGD_RET_IPADDR:
-               case ULOGD_RET_UINT64:
-                       ret = sqlite3_bind_int64(priv->p_stmt, i, k_ret->u.value.ui64);
+                       ret = sqlite3_bind_int(priv->p_stmt, i, k_ret->u.value.ui32);
                        break;
 
-               case ULOGD_RET_BOOL:
-                       ret = sqlite3_bind_int(priv->p_stmt, i, k_ret->u.value.b);
+               case ULOGD_RET_UINT64:
+                       ret = sqlite3_bind_int64(priv->p_stmt, i, k_ret->u.value.ui64);
                        break;
 
                case ULOGD_RET_STRING:
                        ret = sqlite3_bind_text(priv->p_stmt, i, k_ret->u.value.ptr,
-                                                                       strlen(k_ret->u.value.ptr), SQLITE_STATIC);
+                                               strlen(k_ret->u.value.ptr), SQLITE_STATIC);
                        break;
 
                default: