static void send_fs_objects (CcnetProcessor *processor, char *content, int clen) { char *object_id; int n_objects; int i; if (clen % 41 != 1 || content[clen-1] != '\0') { seaf_warning ("[putfs] Bad fs object list.\n"); ccnet_processor_send_response (processor, SC_BAD_OL, SS_BAD_OL, NULL, 0); ccnet_processor_done (processor, FALSE); return; } n_objects = clen/41; g_debug ("[putfs] send fs objects %d:\n%s", n_objects, content); object_id = content; for (i = 0; i < n_objects; ++i) { object_id[40] = '\0'; g_debug ("[putfs] send fs object #%d:%s\n", i, object_id); if (send_fs_object (processor, object_id) == FALSE) return; object_id += 41; } }
static void fs_object_read_cb (OSAsyncResult *res, void *data) { CcnetProcessor *processor = data; if (!res->success) { seaf_warning ("Failed to read fs object %.8s.\n", res->obj_id); ccnet_processor_send_response (processor, SC_NOT_FOUND, SS_NOT_FOUND, res->obj_id, 41); ccnet_processor_done (processor, FALSE); return; } send_fs_object (processor, res->obj_id, res->data, res->len); }
static void send_fs_objects (CcnetProcessor *processor, char *content, int clen) { char *object_id; int n_objects; int i; if (clen % 41 != 1 || content[clen-1] != '\0') { g_warning ("Bad fs object list.\n"); ccnet_processor_send_update (processor, SC_BAD_OL, SS_BAD_OL, NULL, 0); ccnet_processor_done (processor, FALSE); return; } n_objects = clen/41; object_id = content; for (i = 0; i < n_objects; ++i) { object_id[40] = '\0'; if (send_fs_object (processor, object_id) == FALSE) return; object_id += 41; } }