diff mbox series

[ovs-dev,branch,2.9] dhparams: Fix .c file generation with OpenSSL >= 1.1.1-pre9

Message ID c1fc5983edf88ade29870ecc23df44e2b7278d07.1537546874.git.tredaelli@redhat.com
State Accepted
Headers show
Series [ovs-dev,branch,2.9] dhparams: Fix .c file generation with OpenSSL >= 1.1.1-pre9 | expand

Commit Message

Timothy Redaelli Sept. 21, 2018, 4:25 p.m. UTC
Since OpenSSL upstream commit 201b305a2409
("apps/dsaparam.c generates code that is intended to be pasted or included into
an existing source file: the function is static, and the code doesn't include
dsa.h.  Match the generated C source style of dsaparam.") "openssl dhparam -C"
generates the get_dh functions as static, but the functions are used inside
stream-ssl.c and so the static keyword cannot be used.

This commit removes the static keyword from the get_dh functions during
dhparams.c file generation by restoring the current behaviour.

Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
(cherry picked from commit dc041eae5019a936618c398a2a1d106f65604ccc)
---
Backport notice:
On OVS 2.9.x the dhparams.c file is generated each time at build time
and generate-dhparams-c doesn't exists. This commit does the same thing,
but by modifying dhparam.c generation on lib/automake.mk instead.

This is needed to build OVS 2.9 with new OpenSSL versions since
dhparams.c is not cached on OVS 2.9.x.
---
 lib/automake.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

0-day Robot Sept. 21, 2018, 4:54 p.m. UTC | #1
Bleep bloop.  Greetings Timothy Redaelli, I am a robot and I have tried out your patch.
Thanks for your contribution.

I encountered some error that I wasn't expecting.  See the details below.


git-am:
Failed to merge in the changes.
Patch failed at 0001 dhparams: Fix .c file generation with OpenSSL >= 1.1.1-pre9
The copy of the patch that failed is found in:
   /var/lib/jenkins/jobs/upstream_build_from_pw/workspace/.git/rebase-apply/patch
When you have resolved this problem, run "git am --resolved".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".


Please check this out.  If you feel there has been an error, please email aconole@bytheb.org

Thanks,
0-day Robot
Ben Pfaff Sept. 21, 2018, 8:15 p.m. UTC | #2
On Fri, Sep 21, 2018 at 06:25:22PM +0200, Timothy Redaelli wrote:
> Since OpenSSL upstream commit 201b305a2409
> ("apps/dsaparam.c generates code that is intended to be pasted or included into
> an existing source file: the function is static, and the code doesn't include
> dsa.h.  Match the generated C source style of dsaparam.") "openssl dhparam -C"
> generates the get_dh functions as static, but the functions are used inside
> stream-ssl.c and so the static keyword cannot be used.
> 
> This commit removes the static keyword from the get_dh functions during
> dhparams.c file generation by restoring the current behaviour.
> 
> Signed-off-by: Timothy Redaelli <tredaelli@redhat.com>
> Signed-off-by: Ben Pfaff <blp@ovn.org>
> (cherry picked from commit dc041eae5019a936618c398a2a1d106f65604ccc)
> ---
> Backport notice:
> On OVS 2.9.x the dhparams.c file is generated each time at build time
> and generate-dhparams-c doesn't exists. This commit does the same thing,
> but by modifying dhparam.c generation on lib/automake.mk instead.
> 
> This is needed to build OVS 2.9 with new OpenSSL versions since
> dhparams.c is not cached on OVS 2.9.x.

Thanks, applied to branch-2.9.
diff mbox series

Patch

diff --git a/lib/automake.mk b/lib/automake.mk
index 8ecad1241..70461ec8c 100644
--- a/lib/automake.mk
+++ b/lib/automake.mk
@@ -438,7 +438,7 @@  lib/dhparams.c: lib/dh1024.pem lib/dh2048.pem lib/dh4096.pem
 	 openssl dhparam -C -in $(srcdir)/lib/dh1024.pem -noout &&	\
 	 openssl dhparam -C -in $(srcdir)/lib/dh2048.pem -noout &&	\
 	 openssl dhparam -C -in $(srcdir)/lib/dh4096.pem -noout)	\
-	| sed 's/\(get_dh[0-9]*\)()/\1(void)/' > lib/dhparams.c.tmp &&  \
+	| sed 's/^static DH/DH/; s/\(get_dh[0-9]*\)()/\1(void)/' > lib/dhparams.c.tmp &&  \
 	mv lib/dhparams.c.tmp lib/dhparams.c
 else
 lib_libopenvswitch_la_SOURCES += lib/stream-nossl.c