ssize_t slen;
fr_pair_t const *vp = fr_dcursor_current(cursor);
fr_dict_attr_t const *da = da_stack->da[depth];
- fr_dbuff_t work_dbuff = FR_DBUFF_MAX_NO_ADVANCE(dbuff, 253);
+ fr_dbuff_t work_dbuff = FR_DBUFF_MAX_NO_ADVANCE(dbuff, RADIUS_MAX_STRING_LENGTH);
for (;;) {
FR_PROTO_STACK_PRINT(da_stack, depth);
fr_dbuff_marker(&len_m, &work_dbuff); /* Mark the start of the length field */
FR_DBUFF_ADVANCE_RETURN(&work_dbuff, 1); /* One byte for the length */
- slen = encode_tlv_children(&FR_DBUFF_MAX(&work_dbuff, 253), da_stack, depth, cursor, encode_ctx);
+ slen = encode_tlv_children(&FR_DBUFF_MAX(&work_dbuff, RADIUS_MAX_STRING_LENGTH), da_stack, depth, cursor, encode_ctx);
if (slen <= 0) return slen;
fr_dbuff_in(&len_m, (uint8_t)(slen + 2));
* what we were capable of encoding.
*/
- while (check_len > (255 - hdr_len)) {
+ while (check_len > (UINT8_MAX - hdr_len)) {
total += hdr_len;
- check_len -= (255 - hdr_len);
+ check_len -= (UINT8_MAX - hdr_len);
}
/*
*/
for (;;) {
/* Extend current attribute as much as possible. */
- int sublen = 255 - current_hdr_len;
+ int sublen = UINT8_MAX - current_hdr_len;
if (len < sublen) sublen = len;
fr_dbuff_set(&dest, fr_dbuff_current(&hdr) + 1);
fr_dbuff_in(&dest, (uint8_t)(flags | 0x80));
/* Make room for another header. */
- fr_dbuff_set(&src, fr_dbuff_current(&hdr) + 255);
+ fr_dbuff_set(&src, fr_dbuff_current(&hdr) + UINT8_MAX);
fr_dbuff_set(&dest, fr_dbuff_current(&src) + hdr_len);
fr_dbuff_move(&dest, &src, len);
/* Copy current header into new header and advance to it... */
fr_dbuff_set(&src, &hdr);
- fr_dbuff_advance(&hdr, 255);
+ fr_dbuff_advance(&hdr, UINT8_MAX);
fr_dbuff_set(&dest, &hdr);
fr_dbuff_move(&dest, &src, hdr_len);
if (extra) {
attr_dbuff = FR_DBUFF_COPY(&work_dbuff);
} else {
- attr_dbuff = FR_DBUFF_MAX(&work_dbuff, 255);
+ attr_dbuff = FR_DBUFF_MAX(&work_dbuff, UINT8_MAX);
}
if (da_stack->da[depth]->type == FR_TYPE_TLV) {
* and copy the existing header over. Set the "M" flag ONLY
* after copying the rest of the data.
*/
- if (slen > (255 - hlen)) {
+ if (slen > (UINT8_MAX - hlen)) {
slen = attr_shift(&work_dbuff, &hdr, 4, slen, 3, 0);
fr_dbuff_set(dbuff, &work_dbuff);
return slen;
left = slen;
/* no more than 253 octets */
- if (left > 253) left = 253;
+ if (left > RADIUS_MAX_STRING_LENGTH) left = RADIUS_MAX_STRING_LENGTH;
FR_DBUFF_IN_MEMCPY_RETURN(&work_dbuff, p, left);
case FR_TYPE_STRUCT:
case FR_TYPE_LEAF:
if (((fr_dict_vendor_num_by_da(da_stack->da[depth]) == 0) && (da_stack->da[depth]->attr == 0)) ||
- (da_stack->da[depth]->attr > 255)) {
+ (da_stack->da[depth]->attr > UINT8_MAX)) {
fr_strerror_printf("%s: Called with non-standard attribute %u", __FUNCTION__,
da_stack->da[depth]->attr);
return PAIR_ENCODE_SKIPPED;
hlen = 2;
FR_DBUFF_IN_BYTES_RETURN(&work_dbuff, (uint8_t)da_stack->da[depth]->attr, hlen);
- slen = encode_value(&FR_DBUFF_MAX(&work_dbuff, 253), da_stack, depth, cursor, encode_ctx);
+ slen = encode_value(&FR_DBUFF_MAX(&work_dbuff, RADIUS_MAX_STRING_LENGTH), da_stack, depth, cursor, encode_ctx);
if (slen <= 0) return slen;
fr_dbuff_advance(&hdr, 1);
size_t hdr_len;
fr_dbuff_marker_t hdr, length_field, vsa_length_field;
fr_dict_attr_t const *da, *dv;
- fr_dbuff_t work_dbuff = FR_DBUFF_MAX_NO_ADVANCE(dbuff, 255);
+ fr_dbuff_t work_dbuff = FR_DBUFF_MAX_NO_ADVANCE(dbuff, UINT8_MAX);
FR_PROTO_STACK_PRINT(da_stack, depth);
FR_DBUFF_IN_BYTES_RETURN(&work_dbuff, 0x03, 0x00); /* length + continuation, both may be overwritten later */
/*
- * We don't bound the size of work_dbuff; it can use more than 255 bytes
+ * We don't bound the size of work_dbuff; it can use more than UINT8_MAX bytes
* because of the "continuation" byte.
*/
* and copy the existing header over. Set the "C" flag
* ONLY after copying the rest of the data.
*/
- if (slen > 253) {
+ if (slen > RADIUS_MAX_STRING_LENGTH) {
slen = attr_shift(&work_dbuff, &hdr, 2, slen, 8, 7);
fr_dbuff_set(dbuff, &work_dbuff);
return slen;
* normal RADIUS header, 4-byte vendor, etc.
*/
if (da_stack->da[depth + 1]->attr == VENDORPEC_WIMAX) {
- slen = encode_wimax(&FR_DBUFF_MAX(&work_dbuff, 253), da_stack, depth, &child_cursor, encode_ctx);
+ slen = encode_wimax(&FR_DBUFF_MAX(&work_dbuff, RADIUS_MAX_STRING_LENGTH), da_stack, depth, &child_cursor, encode_ctx);
} else {
- slen = encode_vendor(&FR_DBUFF_MAX(&work_dbuff, 253), da_stack, depth, &child_cursor, encode_ctx);
+ slen = encode_vendor(&FR_DBUFF_MAX(&work_dbuff, RADIUS_MAX_STRING_LENGTH), da_stack, depth, &child_cursor, encode_ctx);
}
if (slen <= 0) {
if (slen == PAIR_ENCODE_SKIPPED) continue;
* in the original standards space.
*/
if (((fr_dict_vendor_num_by_da(da_stack->da[depth]) == 0) && (da_stack->da[depth]->attr == 0)) ||
- (da_stack->da[depth]->attr > 255)) {
+ (da_stack->da[depth]->attr > UINT8_MAX)) {
fr_strerror_printf("%s: Called with non-standard attribute %u", __FUNCTION__, vp->da->attr);
return PAIR_ENCODE_SKIPPED;
}