diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2023-06-09 00:10:02 +0200 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2023-06-09 00:10:13 +0200 |
commit | cc7c91c8ea38ac4cd226469481c2f6d63805331b (patch) | |
tree | 3f7816ae011b83f6baca597e3342e794721a51b2 /src | |
parent | add {file,net}_close as a wrapper to close(2) (diff) | |
download | cimple-cc7c91c8ea38ac4cd226469481c2f6d63805331b.tar.gz cimple-cc7c91c8ea38ac4cd226469481c2f6d63805331b.zip |
msg: add msg_send_from_argv shortcut
Diffstat (limited to 'src')
-rw-r--r-- | src/msg.c | 17 | ||||
-rw-r--r-- | src/msg.h | 2 |
2 files changed, 19 insertions, 0 deletions
@@ -170,6 +170,23 @@ destroy_buf: return ret; } +int msg_send_from_argv(int fd, const char **argv) +{ + struct msg *msg = NULL; + int ret = 0; + + ret = msg_from_argv(&msg, argv); + if (ret < 0) + return ret; + + ret = msg_send(fd, msg); + msg_free(msg); + if (ret < 0) + return ret; + + return ret; +} + int msg_recv(int fd, struct msg **_msg) { struct buf *buf = NULL; @@ -30,6 +30,8 @@ int msg_is_error(const struct msg *); int msg_recv(int fd, struct msg **); int msg_send(int fd, const struct msg *); +int msg_send_from_argv(int fd, const char **argv); + int msg_communicate(int fd, const struct msg *, struct msg **response); int msg_connect_and_communicate(const char *host, const char *port, const struct msg *, struct msg **); |