*
* \param fd The afs socket.
* \param query Unused.
+ *
+ * \return Standard. Invalid paths are reported, but are not considered an
+ * error.
*/
-void playlist_check_callback(int fd, __a_unused const struct osl_object *query)
+int playlist_check_callback(int fd, __a_unused const struct osl_object *query)
{
+ int ret;
struct para_buffer pb = {
.max_size = shm_get_shmmax(),
.private_data = &(struct afs_max_size_handler_data) {
.max_size_handler = afs_max_size_handler,
};
para_printf(&pb, "checking playlists...\n");
- osl_rbtree_loop(playlists_table, BLOBCOL_ID, &pb,
- check_playlist);
- if (pb.offset)
- pass_buffer_as_shm(fd, SBD_OUTPUT, pb.buf, pb.offset);
- free(pb.buf);
+ ret = osl(osl_rbtree_loop(playlists_table, BLOBCOL_ID, &pb,
+ check_playlist));
+ flush_and_free_pb(&pb);
+ return ret;
}
/**