int ret;
struct pattern_match_data pmd = {
.table = attribute_table,
- .loop_col_num = ATTCOL_BITNUM,
+ .loop_col_num = ATTCOL_NAME,
.match_col_num = ATTCOL_NAME,
.patterns = {.data = (char *)aca->query.data + sizeof(flags),
.size = aca->query.size - sizeof(flags)},
.action = print_attribute
};
if (flags & LSATT_FLAG_SORT_BY_ID)
- pmd.loop_col_num = ATTCOL_NAME;
+ pmd.loop_col_num = ATTCOL_BITNUM;
if (flags & LSATT_FLAG_REVERSE)
pmd.pm_flags |= PM_REVERSE_LOOP;
ret = for_each_matching_row(&pmd);
out:
if (ret < 0)
para_printf(&aca->pbout, "%s: %s\n", p, para_strerror(-ret));
- return 0;
+ return ret;
}
int com_addatt(struct command_context *cc)
static int att_logical_or(struct osl_row *row, void *data)
{
- uint64_t *att_mask = data;
+ uint64_t *att_mask = data, one = 1;
struct osl_object bitnum_obj;
int ret = osl_get_object(attribute_table, row, ATTCOL_BITNUM, &bitnum_obj);
if (ret < 0)
return ret;
- *att_mask |= 1 << *(unsigned char *)bitnum_obj.data;
+ *att_mask |= one << *(unsigned char *)bitnum_obj.data;
return 0;
}
return ret;
}
attribute_table = NULL;
- if (ret >= 0 || ret == -OSL_ERRNO_TO_PARA_ERROR(E_OSL_NOENT))
+ if (ret == -OSL_ERRNO_TO_PARA_ERROR(E_OSL_NOENT))
return 1;
return ret;
}