Пример #1
0
int bitmask_set_bit_to(struct bitmask *bm, unsigned int bits, int to)
{
	unsigned int byte = bits / 8;
	unsigned int bit = bits % 8;
	unsigned char *ptr;

	if (byte > SIZE_OCTETS(bm->size_bits))
		return -EINVAL;

	if (to == 0)
		bm->buf[byte] &= ~(1 << bit);
	else
		bm->buf[byte] |= (1 << bit);

	return 0;
}
Пример #2
0
void bitmask_clear(struct bitmask *bm)
{
	memset(bm->buf, 0, SIZE_OCTETS(bm->size_bits));
}