]> git.ipfire.org Git - pakfire.git/commitdiff
builder: Move function to send messages into the socket
authorMichael Tremer <michael.tremer@ipfire.org>
Wed, 25 Jun 2025 16:49:04 +0000 (16:49 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Wed, 25 Jun 2025 16:49:04 +0000 (16:49 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/pakfire/builder.c
src/pakfire/builder.h
src/pakfire/daemon.c

index 05fd360056148ae31228e437edb09d9a8674fbda..70f873ac687d734eeeffe54a8c2e3e7301d55fbb 100644 (file)
@@ -26,6 +26,7 @@
 #include <pakfire/client.h>
 #include <pakfire/ctx.h>
 #include <pakfire/builder.h>
+#include <pakfire/json.h>
 #include <pakfire/util.h>
 #include <pakfire/xfer.h>
 
@@ -239,3 +240,35 @@ int pakfire_builder_close(struct pakfire_xfer* xfer, int code, void* data) {
 
        return 0;
 }
+
+int pakfire_builder_send_message(struct pakfire_builder* self, struct json_object* message) {
+       const char* m = NULL;
+       size_t length = 0;
+       int r;
+
+       // Return an error if we are not connected
+       if (!self->control)
+               return -ENOTCONN;
+
+       // Serialize to string
+       m = pakfire_json_to_string(message, &length);
+       if (!m) {
+               ERROR(self->ctx, "Failed to serialize message: %m\n");
+               return -errno;
+       }
+
+       // Send the message
+       r = pakfire_xfer_send_message(self->control, m, length);
+       if (r < 0) {
+               switch (-r) {
+                       case EAGAIN:
+                               break;
+
+                       default:
+                               ERROR(self->ctx, "Failed to send message: %s\n", strerror(-r));
+                               return r;
+               }
+       }
+
+       return 0;
+}
index 01b14bc7a0f15ee07d26a6aff8cc545ce027b195..1b722d8629bcbd8c53abaea6febcd6473e5db469 100644 (file)
@@ -39,4 +39,6 @@ int pakfire_builder_connect(struct pakfire_builder* self);
 int pakfire_builder_connected(struct pakfire_xfer* xfer, void* data);
 int pakfire_builder_close(struct pakfire_xfer* xfer, int code, void* data);
 
+int pakfire_builder_send_message(struct pakfire_builder* self, struct json_object* message);
+
 #endif /* PAKFIRE_BUILDER_H */
index 37241cbb98f23194148a68791a3f046057fe4fce..5e51c3e69ad50d61dc79c4bc63faa26f25ae50d5 100644 (file)
@@ -938,40 +938,3 @@ int pakfire_daemon_job_finished(struct pakfire_daemon* daemon, struct pakfire_jo
 
        return 0;
 }
-
-int pakfire_daemon_send_message(struct pakfire_daemon* self, struct json_object* message) {
-       const char* m = NULL;
-       size_t length = 0;
-       int r;
-
-#if 0
-       // Return an error if we are not connected
-       if (!self->control)
-               return -ENOTCONN;
-#endif
-
-       // Serialize to string
-       m = json_object_to_json_string_length(message,
-                       JSON_C_TO_STRING_SPACED | JSON_C_TO_STRING_PRETTY, &length);
-       if (!m) {
-               ERROR(self->ctx, "Failed to serialize message: %m\n");
-               return -errno;
-       }
-
-#if 0
-       // Send the message
-       r = pakfire_xfer_send_message(self->control, m, length);
-       if (r < 0) {
-               switch (-r) {
-                       case EAGAIN:
-                               break;
-
-                       default:
-                               ERROR(self->ctx, "Failed to send message: %s\n", strerror(-r));
-                               return r;
-               }
-       }
-#endif
-
-       return 0;
-}