Exemplo n.º 1
0
static void putOid(CssmOwnedData &data, unsigned long id)
{
	unsigned char buffer[sizeof(unsigned long) * 2];	// * (8/7) + 1, conservative
	unsigned char *p = buffer + sizeof(buffer);
	do {
		*--p = 0x80 | (id & 0x7F);		// last 7 bits, high bit set
	} while ((id >>= 7) > 0);
	buffer[sizeof(buffer) - 1] &= ~0x80;	// clear last high bit (end of number)
	data.append(p, buffer + sizeof(buffer) - p); // append generated byte string
}