/* Append the <arg_N> field */
FR_DBUFF_IN_MEMCPY_RETURN(&work_dbuff, vp->vp_strvalue, vp->vp_length);
- FR_PROTO_TRACE("arg[%d] = %s", arg_cnt, vp->vp_strvalue);
+ FR_PROTO_TRACE("arg[%d] --> %s", arg_cnt, vp->vp_strvalue);
len = vp->vp_length;
} else if (fr_dict_by_da(vp->da) != dict_tacacs) {
slen = fr_pair_print_value_quoted(&sbuff, vp, 0);
if (slen <= 0) return -1;
- FR_DBUFF_IN_MEMCPY_RETURN(&arg_dbuff, buffer, slen);
-
- FR_PROTO_TRACE("arg[%d] = %s", arg_cnt, buffer);
+ FR_DBUFF_IN_MEMCPY_RETURN(&arg_dbuff, buffer, (size_t) slen);
len = fr_dbuff_used(&arg_dbuff);
+
+ FR_PROTO_TRACE("arg[%d] --> %.*s", arg_cnt, len, fr_dbuff_start(&arg_dbuff));
+
fr_dbuff_set(&work_dbuff, &arg_dbuff);
}
+ FR_PROTO_TRACE("len(arg[%d]) = %d", arg_cnt, len);
arg_cnt_p[1 + arg_cnt] = len;
arg_cnt++;
}
ENCODE_FIELD_STRING8(packet->acct.req.port_len, attr_tacacs_client_port);
ENCODE_FIELD_STRING8(packet->acct.req.rem_addr_len, attr_tacacs_remote_address);
- fprintf(stderr, "ARG CNT %d at %d\n", packet->acct.req.arg_cnt, __LINE__);
-
/*
* Append 'args_body' to the end of buffer
*/
match Packet.Version-Major = Plus, Packet.Version-Minor = 0, Packet.Packet-Type = Authorization, Packet.Sequence-Number = 2, Packet.Flags = None, Packet.Session-Id = 3781589222, Packet.Length = 19, Packet-Body-Type = Response, Authorization-Status = Pass-Add, Server-Message = "", Data = 0x, addr = 1.2.3.4
encode-proto -
-match c0 02 02 00 e1 66 78 e6 00 00 00 13 02 59 f9 90 38 81 e1 bb 9d a6 13 93 fc 86 7e 4a 14 1c 24
+match c0 02 02 00 e1 66 78 e6 00 00 00 13 02 59 f5 90 38 81 ed bb 9d a6 13 93 fc 86 7e 4a 14 1c 24
#
# Accounting - Request: (Client -> Server)
match c0 03 01 00 07 9b 35 d9 00 00 00 5a 7c 8a 99 d6 88 f9 32 3c ed 21 75 25 89 18 7f d0 9f 53 64 c6 9a 0c a7 d8 37 59 ff 5b 8a 0f 08 16 bf 67 9d 02 9e 62 6b 0c e1 9e b4 a3 77 0c 23 c4 d5 5b d0 19 f2 3d 07 57 98 e4 2d f1 4d ef 5e b2 2f 84 d4 9e 5d 8f 13 05 f0 09 6a 44 66 ad 3a fb 59 0c 1d 7a d0 d5 0a 4c 3e 11
count
-match 26
+match 15