<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Wes,<br>
<br>
If you remember your test case, wouldn't this code in parser.l do
the trick:<br>
<<EOF>> {<br>
static int once = 0;<br>
if (once = !once) {<br>
stacktop->line++;<br>
} else if(parser_y_eof()) {<br>
yyterminate();<br>
}<br>
}<br>
<br>
On my side using Nick's ipsec.unmanaged.*.conf files, here is what
it tells:<br>
[philippe@victor openswan-2.6.38]$ sudo systemctl stop
ipsec.service<br>
<b>[philippe@victor libreswan]$ sudo make install</b><br>
[philippe@victor openswan-2.6.38]$ sudo systemctl start
ipsec.service<br>
[philippe@victor openswan-2.6.38]$ sudo /usr/local/sbin/ipsec
addconn --verbose --autoall<br>
opening file: /etc/ipsec.conf<br>
debugging mode enabled<br>
including file
'/etc/ipsec.d/ipsec.*.conf'(/etc/ipsec.d/ipsec.*.conf) from line
/etc/ipsec.conf:24<br>
end of file /etc/ipsec.d/ipsec.unmanaged.paulin.conf<br>
resuming /etc/ipsec.conf line 24<br>
end of file /etc/ipsec.conf<br>
Loading default conn<br>
starter: case KH_NOTSET: empty<br>
starter: case KH_NOTSET: empty<br>
Loading conn david<br>
Loading conn mumin<br>
starter: case KH_DEFAULTROUTE: empty<br>
Loading conn paulin<br>
starter: case KH_DEFAULTROUTE: empty<br>
loading all conns according to their auto= settings<br>
Pass #1: Loading auto=add and auto=route connections<br>
mumin<br>
parse_src = 1, parse_gateway = 0, has_dst = 0<br>
dst via 192.168.1.1 dev eth0 src <br>
dst 169.254.0.0 via dev eth0 src <br>
dst 192.168.1.0 via dev eth0 src 192.168.1.2<br>
set addr: 192.168.1.2<br>
dst 127.0.0.0 via dev lo src 127.0.0.1<br>
dst 127.0.0.0 via dev lo src 127.0.0.1<br>
dst 127.0.0.1 via dev lo src 127.0.0.1<br>
dst 127.255.255.255 via dev lo src 127.0.0.1<br>
dst 192.168.1.0 via dev eth0 src 192.168.1.2<br>
dst 192.168.1.2 via dev eth0 src 192.168.1.2<br>
dst 192.168.1.255 via dev eth0 src 192.168.1.2<br>
002 "mumin": deleting connection<br>
002 added connection description "mumin"<br>
paulin<br>
parse_src = 1, parse_gateway = 0, has_dst = 0<br>
dst via 192.168.1.1 dev eth0 src <br>
dst 169.254.0.0 via dev eth0 src <br>
dst 192.168.1.0 via dev eth0 src 192.168.1.2<br>
set addr: 192.168.1.2<br>
dst 127.0.0.0 via dev lo src 127.0.0.1<br>
dst 127.0.0.0 via dev lo src 127.0.0.1<br>
dst 127.0.0.1 via dev lo src 127.0.0.1<br>
dst 127.255.255.255 via dev lo src 127.0.0.1<br>
dst 192.168.1.0 via dev eth0 src 192.168.1.2<br>
dst 192.168.1.2 via dev eth0 src 192.168.1.2<br>
dst 192.168.1.255 via dev eth0 src 192.168.1.2<br>
002 "paulin": deleting connection<br>
002 added connection description "paulin"<br>
Pass #2: Loading auto=start connections<br>
<br>
[philippe@victor openswan-2.6.38]$ <br>
<br>
<pre class="moz-signature" cols="72">Philippe Vouters (Fontainebleau/France)
URL: <a class="moz-txt-link-freetext" href="http://vouters.dyndns.org/">http://vouters.dyndns.org/</a>
SIP: <a class="moz-txt-link-abbreviated" href="mailto:sip:Vouters@sip.linphone.org">sip:Vouters@sip.linphone.org</a></pre>
Le 08/01/2013 15:51, Paul Wouters a écrit :<br>
</div>
<blockquote cite="mid:alpine.LFD.2.03.1301080948270.5796@nohats.ca"
type="cite">On Tue, 8 Jan 2013, Philippe Vouters wrote:
<br>
<br>
<blockquote type="cite">Nick problem with his mumin conn is
related to this change in parser.l
<br>
causing a premature exit on file statements.
<br>
<<EOF>> {
<br>
/*
<br>
* Who did remove the Openswan 2.6.38 code reproduced below and
<br>
* wrote this block hereafter commented out ?
<br>
*/
<br>
/*
<br>
static int once = 0;
<br>
if (once = !once) {
<br>
stacktop->line++;
<br>
} else {
<br>
yyterminate();
<br>
}
<br>
*/
<br>
/* From Openswan 2.6.38 */
<br>
if(parser_y_eof()) {
<br>
yyterminate();
<br>
}
<br>
<br>
}
<br>
</blockquote>
<br>
This change was made by Wes to fix an issue where the parser would
crash
<br>
if the last line in the file had no EOL.
<br>
<br>
git blame lib/libipsecconf/parser.l|grep "static int once"
<br>
6ca2edb0 lib/libipsecconf/parser.l (Wes Hardaker 2012-12-19
<br>
18:58:23 -0800 300) static int once = 0;
<br>
<br>
commit 6ca2edb045895bbcbf116d19492c43949104956e
<br>
Author: Wes Hardaker <a class="moz-txt-link-rfc2396E" href="mailto:opensource@hardakers.net"><opensource@hardakers.net></a>
<br>
Date: Wed Dec 19 18:58:23 2012 -0800
<br>
<br>
Rewrite the EOF parser to at least warn on an EOF at an EOL
<br>
<br>
<br>
<br>
</blockquote>
<br>
</body>
</html>