Latest -CURRENT iked(8) dumps core on a seemingly invalid transformation,
although this specific value is listed in iked.conf(8).  Using "aes-256"
for example works, turns out this effects only those that are specified
with "[ESP only]" in the manual. ESP is the default and manually
specifying it to ensure the transformation is valid does not help.

Minimal reproducer:

        # cat /etc/iked.conf
        ikev2 from any to any ikesa enc aes-256-gcm
        # ./obj/iked -n
        /etc/iked.conf: 1: aes-256-gcm not a valid transform
        Segmentation fault (core dumped)

Backtrace of above invocation:

[New process 464271]
Core was generated by `iked'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x000003dfe6c5946d in copy_transforms (type=1, xfs=0x3e285cf7fd0, nxfs=1, 
dst=0x7f7ffffca448, ndst=0x7f7ffffca43c, src=0x3dfe6c605a0 
<ikev2_default_ike_transforms>, nsrc=11) at /s/sbin/iked/parse.y:2647
2647                            b->xform_id = xf->id;
#0  0x000003dfe6c5946d in copy_transforms (type=1, xfs=0x3e285cf7fd0, nxfs=1, 
dst=0x7f7ffffca448, ndst=0x7f7ffffca43c, src=0x3dfe6c605a0 
<ikev2_default_ike_transforms>, nsrc=11) at /s/sbin/iked/parse.y:2647
#1  0x000003dfe6c5a0c3 in create_ike (name=0x0, af=0, ipproto=0 '\000', 
hosts=0x3e2a547d360, peers=0x3e200e4d490, ike_sa=0x3e215d80d10, ipsec_sa=0x0, 
saproto=3 '\003', flags=0 '\000', srcid=0x0, dstid=0x0, ikelifetime=0, 
lt=0x3e200e4e8e0, authtype=0x3e200e4ecf0, filter=0x0, ikecfg=0x0) at 
/s/sbin/iked/parse.y:2832
#2  0x000003dfe6c53e65 in yyparse () at /s/sbin/iked/parse.y:482
#3  0x000003dfe6c52a4b in parse_config (filename=0x3e23aca9560 
"/etc/iked.conf", x_env=0x3e23aca9560) at /s/sbin/iked/parse.y:1596
#4  0x000003dfe6c12a79 in parent_configure (env=0x3e23aca9560) at 
/s/sbin/iked/iked.c:198
#5  0x000003dfe6c1267c in main (argc=0, argv=0x7f7ffffcd598) at 
/s/sbin/iked/iked.c:183

`xf' is NULL but gets dereferenced.

I have not tried older versions of iked(8) and can only take a closer
look at it this weekend, so pardon the scarse report.

Reply via email to