]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - blob.c
afs: Provide generic counter for matching rows.
[paraslash.git] / blob.c
diff --git a/blob.c b/blob.c
index 25aa2a6dc323ed99efba3a78d247c25b27205da1..b3daf5c35744c5727ab8a8f52f127b83c1454073 100644 (file)
--- a/blob.c
+++ b/blob.c
@@ -80,12 +80,13 @@ static struct osl_column_description blob_cols[] = {
        DEFINE_BLOB_TABLE_DESC(table_name); \
        DEFINE_BLOB_TABLE_PTR(table_name);
 
-/** \cond doxygen isn't smart enough to recognize these */
+/* doxygen isn't smart enough to recognize these */
+/** \cond blob_table */
 INIT_BLOB_TABLE(lyrics);
 INIT_BLOB_TABLE(images);
 INIT_BLOB_TABLE(moods);
 INIT_BLOB_TABLE(playlists);
-/** \endcond */
+/** \endcond blob_table */
 
 /** Flags that may be passed to the \p ls functions of each blob  type. */
 enum blob_ls_flags {
@@ -130,7 +131,7 @@ static void com_lsblob_callback(struct osl_table *table,
        struct lsblob_action_data lbad = {
                .flags = *(uint32_t *)query->data,
                .pb = {
-                       .max_size = SHMMAX,
+                       .max_size = shm_get_shmmax(),
                        .private_data = &fd,
                        .max_size_handler = pass_buffer_as_shm
                }
@@ -237,8 +238,6 @@ static int com_catblob(callback_function *f, struct stream_cipher_context *scc,
 struct rmblob_data {
        /** Message buffer. */
        struct para_buffer pb;
-       /** Number of removed blobs. */
-       unsigned num_removed;
 };
 
 static int remove_blob(struct osl_table *table, struct osl_row *row,
@@ -250,7 +249,6 @@ static int remove_blob(struct osl_table *table, struct osl_row *row,
                para_printf(&rmbd->pb, "%s: %s\n", name, para_strerror(-ret));
                return ret;
        }
-       rmbd->num_removed++;
        return 1;
 }
 
@@ -259,9 +257,8 @@ static void com_rmblob_callback(struct osl_table *table, int fd,
 {
        int ret, ret2 = 0;
        struct rmblob_data rmbd = {
-               .num_removed = 0,
                .pb = {
-                       .max_size = SHMMAX,
+                       .max_size = shm_get_shmmax(),
                        .private_data = &fd,
                        .max_size_handler = pass_buffer_as_shm
                }
@@ -281,10 +278,10 @@ static void com_rmblob_callback(struct osl_table *table, int fd,
                if (ret2 < 0)
                        goto out;
        }
-       if (!rmbd.num_removed)
+       if (pmd.num_matches == 0)
                ret2 = para_printf(&rmbd.pb, "no matches, nothing removed\n");
        else {
-               ret2 = para_printf(&rmbd.pb, "removed %d blobs\n", rmbd.num_removed);
+               ret2 = para_printf(&rmbd.pb, "removed %d blobs\n", pmd.num_matches);
                afs_event(BLOB_RENAME, NULL, table);
        }
 out:
@@ -662,9 +659,10 @@ static int blob_open(struct osl_table **table,
        DEFINE_GET_DEF_BY_NAME(table_name, cmd_prefix); \
        DEFINE_GET_NAME_AND_DEF_BY_ROW(table_name, cmd_prefix); \
 
-/** \cond doxygen isn't smart enough to recognize these */
+/* doxygen isn't smart enough to recognize these */
+/** \cond blob_function */
 DEFINE_BLOB_FUNCTIONS(lyrics, lyr);
 DEFINE_BLOB_FUNCTIONS(images, img);
 DEFINE_BLOB_FUNCTIONS(moods, mood);
 DEFINE_BLOB_FUNCTIONS(playlists, pl);
-/** \endcond */
+/** \endcond blob_function */