* Convert a struct afs_info to an osl object.
*
* \param afsi Pointer to the audio file info to be converted.
* Convert a struct afs_info to an osl object.
*
* \param afsi Pointer to the audio file info to be converted.
*
* \param afsi Points to the audio_file info structure to be filled in.
* \param obj The osl object holding the data.
*
*
* \param afsi Points to the audio_file info structure to be filled in.
* \param obj The osl object holding the data.
*
return osl(osl_get_row(audio_file_table, AFTCOL_HASH, &obj, row));
}
return osl(osl_get_row(audio_file_table, AFTCOL_HASH, &obj, row));
}
{
return osl(osl_get_object(audio_file_table, row, AFTCOL_AFSI, obj));
}
{
return osl(osl_get_object(audio_file_table, row, AFTCOL_AFSI, obj));
}
* Get the audio file selector info, given the path of an audio table.
*
* \param path The full path of the audio file.
* \param afsi Result pointer.
*
* Get the audio file selector info, given the path of an audio table.
*
* \param path The full path of the audio file.
* \param afsi Result pointer.
*
static int write_attribute_items(struct para_buffer *b,
const char *att_bitmap, struct afs_info *afsi)
{
static int write_attribute_items(struct para_buffer *b,
const char *att_bitmap, struct afs_info *afsi)
{
- ret = mmap_full_file(path, O_RDONLY, &map.data,
- &map.size, &afd->fd);
+ ret = mmap_full_file(path, O_RDONLY, &map.data, &map.size, &afd->fd);
para_printf(&cad.pb, "copied requested afsi from %s "
"to %u files\n", source_path, pmd.num_matches);
para_printf(&cad.pb, "copied requested afsi from %s "
"to %u files\n", source_path, pmd.num_matches);
if (cad.pb.offset)
pass_buffer_as_shm(fd, SBD_OUTPUT, cad.pb.buf, cad.pb.offset);
free(cad.pb.buf);
if (cad.pb.offset)
pass_buffer_as_shm(fd, SBD_OUTPUT, cad.pb.buf, cad.pb.offset);
free(cad.pb.buf);
* is used to pass the status items from the afs process to the command handler
* via a shared memory area and a pipe.
*
* is used to pass the status items from the afs process to the command handler
* via a shared memory area and a pipe.
*
case ATTRIBUTE_REMOVE: {
const struct rmatt_event_data *red = data;
ret = para_printf(pb, "clearing attribute %s (bit %u) from all "
case ATTRIBUTE_REMOVE: {
const struct rmatt_event_data *red = data;
ret = para_printf(pb, "clearing attribute %s (bit %u) from all "