From e521150b8f6bed678527da1cf96e75026b86fe4f Mon Sep 17 00:00:00 2001 From: "Ondrej Zajicek (work)" Date: Thu, 18 May 2017 14:51:36 +0200 Subject: [PATCH] Fix VPN-RD parsing on 32-bit systems When shift count >= width of type the behavior is undefined. --- conf/cf-lex.l | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/conf/cf-lex.l b/conf/cf-lex.l index a0e3c275..a24f5ad7 100644 --- a/conf/cf-lex.l +++ b/conf/cf-lex.l @@ -124,7 +124,8 @@ include ^{WHITE}*include{WHITE}*\".*\"{WHITE}*; } {DIGIT}+:{DIGIT}+ { - unsigned long int l, len1 UNUSED, len2; + uint len1 UNUSED, len2; + u64 l; char *e; errno = 0; @@ -155,7 +156,8 @@ include ^{WHITE}*include{WHITE}*\".*\"{WHITE}*; } [02]:{DIGIT}+:{DIGIT}+ { - unsigned long int l, len1, len2; + uint len1, len2; + u64 l; char *e; if (yytext[0] == '0')