]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - aft.c
Simplify pass_buffer_as_shm().
[paraslash.git] / aft.c
diff --git a/aft.c b/aft.c
index dffe3a31526529b78099c3b1339710939b4309bc..c724670391bcbdde581d6cfc6c45342ef1f57650 100644 (file)
--- a/aft.c
+++ b/aft.c
@@ -21,6 +21,7 @@
 #include "fd.h"
 #include "ipc.h"
 #include "portable_io.h"
+#include "sideband.h"
 #include "command.h"
 
 static struct osl_table *audio_file_table;
@@ -1398,7 +1399,7 @@ static void com_ls_callback(int fd, const struct osl_object *query)
                }
 out:
        if (b.offset)
-               pass_buffer_as_shm(b.buf, b.offset, &fd);
+               pass_buffer_as_shm(fd, b.buf, b.offset);
        free(b.buf);
        free(opts->data);
        free(opts->data_ptr);
@@ -1520,7 +1521,7 @@ int com_ls(struct command_context *cc)
        opts.mode = mode;
        opts.num_patterns = cc->argc - i;
        ret = send_option_arg_callback_request(&query, opts.num_patterns,
-               cc->argv + i, com_ls_callback, sc_send_result, cc);
+               cc->argv + i, com_ls_callback, afs_cb_result_handler, cc);
        return ret;
 }
 
@@ -1806,7 +1807,7 @@ out:
        if (ret < 0)
                para_printf(&msg, "%s\n", para_strerror(-ret));
        if (msg.offset)
-               pass_buffer_as_shm(msg.buf, msg.offset, &fd);
+               pass_buffer_as_shm(fd, msg.buf, msg.offset);
        free(msg.buf);
 }
 
@@ -1825,7 +1826,7 @@ static void path_brother_callback(int fd, const struct osl_object *query)
        int ret = aft_get_row_of_path(path, &path_brother);
        if (ret < 0)
                return;
-       pass_buffer_as_shm((char *)&path_brother, sizeof(path_brother), &fd);
+       pass_buffer_as_shm(fd, (char *)&path_brother, sizeof(path_brother));
 }
 
 static void hash_sister_callback(int fd, const struct osl_object *query)
@@ -1836,7 +1837,7 @@ static void hash_sister_callback(int fd, const struct osl_object *query)
        hash_sister = find_hash_sister(hash);
        if (!hash_sister)
                return;
-       pass_buffer_as_shm((char *)&hash_sister, sizeof(hash_sister), &fd);
+       pass_buffer_as_shm(fd, (char *)&hash_sister, sizeof(hash_sister));
 }
 
 static int get_row_pointer_from_result(struct osl_object *result, void *private)
@@ -1913,7 +1914,8 @@ static int add_one_audio_file(const char *path, void *private_data)
        }
        save_add_callback_buffer(hash, path, afhi_ptr, pad->flags, format_num, &obj);
        /* Ask afs to consider this entry for adding. */
-       ret = send_callback_request(com_add_callback, &obj, sc_send_result, pad->cc);
+       ret = send_callback_request(com_add_callback, &obj,
+               afs_cb_result_handler, pad->cc);
        goto out_free;
 
 out_unmap:
@@ -2113,7 +2115,7 @@ static void com_touch_callback(int fd, const struct osl_object *query)
        else if (pmd.num_matches == 0)
                ret2 = para_printf(&tad.pb, "no matches\n");
        if (ret2 >= 0 && tad.pb.offset)
-               pass_buffer_as_shm(tad.pb.buf, tad.pb.offset, &fd);
+               pass_buffer_as_shm(fd, tad.pb.buf, tad.pb.offset);
        free(tad.pb.buf);
 }
 
@@ -2185,7 +2187,7 @@ int com_touch(struct command_context *cc)
        if (i >= cc->argc)
                return -E_AFT_SYNTAX;
        ret = send_option_arg_callback_request(&query, cc->argc - i,
-               cc->argv + i, com_touch_callback, sc_send_result, cc);
+               cc->argv + i, com_touch_callback, afs_cb_result_handler, cc);
        if (ret < 0)
                sc_send_va_buffer(&cc->scc, "%s\n", para_strerror(-ret));
        return ret;
@@ -2260,7 +2262,7 @@ static void com_rm_callback(int fd, const struct osl_object *query)
                        pmd.num_matches);
        }
        if (ret >= 0 && crd.pb.offset)
-               pass_buffer_as_shm(crd.pb.buf, crd.pb.offset, &fd);
+               pass_buffer_as_shm(fd, crd.pb.buf, crd.pb.offset);
        free(crd.pb.buf);
 }
 
@@ -2296,7 +2298,7 @@ int com_rm(struct command_context *cc)
        if (i >= cc->argc)
                return -E_AFT_SYNTAX;
        ret = send_option_arg_callback_request(&query, cc->argc - i,
-               cc->argv + i, com_rm_callback, sc_send_result, cc);
+               cc->argv + i, com_rm_callback, afs_cb_result_handler, cc);
        if (ret < 0)
                sc_send_va_buffer(&cc->scc, "%s\n", para_strerror(-ret));
        return ret;
@@ -2406,7 +2408,7 @@ out:
                        para_printf(&cad.pb, "nothing copied\n");
        }
        if (cad.pb.offset)
-               pass_buffer_as_shm(cad.pb.buf, cad.pb.offset, &fd);
+               pass_buffer_as_shm(fd, cad.pb.buf, cad.pb.offset);
        free(cad.pb.buf);
 }
 
@@ -2455,7 +2457,7 @@ int com_cpsi(struct command_context *cc)
        if (!(flags & ~CPSI_FLAG_VERBOSE)) /* no copy flags given */
                flags = ~(unsigned)CPSI_FLAG_VERBOSE | flags;
        ret = send_option_arg_callback_request(&options, cc->argc - i,
-               cc->argv + i, com_cpsi_callback, sc_send_result, cc);
+               cc->argv + i, com_cpsi_callback, afs_cb_result_handler, cc);
        if (ret < 0)
                sc_send_va_buffer(&cc->scc, "%s\n", para_strerror(-ret));
        return ret;
@@ -2469,7 +2471,7 @@ static void afs_stat_callback(int fd, const struct osl_object *query)
 
        if (!buf)
                return;
-       pass_buffer_as_shm(buf, strlen(buf), &fd);
+       pass_buffer_as_shm(fd, buf, strlen(buf));
 }
 
 /**
@@ -2491,7 +2493,8 @@ int send_afs_status(struct command_context *cc, int parser_friendly)
        struct osl_object query = {.data = &parser_friendly,
                .size = sizeof(parser_friendly)};
 
-       return send_callback_request(afs_stat_callback, &query, sc_send_result, cc);
+       return send_callback_request(afs_stat_callback, &query,
+               afs_cb_result_handler, cc);
 }
 
 /* TODO: optionally fix problems by removing offending rows */
@@ -2559,7 +2562,7 @@ void aft_check_callback(int fd, __a_unused const struct osl_object *query)
                return;
        audio_file_loop(&pb, check_audio_file);
        if (pb.offset)
-               pass_buffer_as_shm(pb.buf, pb.offset, &fd);
+               pass_buffer_as_shm(fd, pb.buf, pb.offset);
        free(pb.buf);
 }