cvsdist e21e184
#!/bin/sh
cvsdist e21e184
cvsdist e32c112
# Quit out if anything fails.
cvsdist 0cfdac5
set -e
cvsdist 0cfdac5
cvsdist 821b825
# Clean out patent-or-otherwise-encumbered code.
cvsdist e21e184
# MDC-2: 4,908,861 13/03/2007
cvsdist e21e184
# IDEA:  5,214,703 25/05/2010
cvsdist e21e184
# RC5:   5,724,428 03/03/2015
cvsdist e32c112
# EC:    ????????? ??/??/2015
cvsdist e21e184
cvsdist 0cfdac5
# Remove assembler portions of IDEA, MDC2, and RC5.
cvsdist 4f250d3
(find crypto/{idea,mdc2,rc5}/asm -type f | xargs -r rm -fv)
cvsdist e21e184
cvsdist e32c112
# IDEA, MDC2, RC5, EC.
e96bebc
for a in idea mdc2 rc5 ec ecdh ecdsa; do
cvsdist 0cfdac5
  for c in `find crypto/$a -name "*.c" -a \! -name "*test*" -type f` ; do
cvsdist e21e184
	echo Destroying $c
cvsdist 821b825
	> $c
cvsdist 0cfdac5
  done
cvsdist e21e184
done
cvsdist 0cfdac5
e96bebc
for c in `find crypto/evp -name "*_rc5.c" -o -name "*_idea.c" -o -name "*_mdc2.c" -o -name "*_ecdsa.c"`; do
cvsdist e21e184
	echo Destroying $c
cvsdist 821b825
	> $c
cvsdist e21e184
done
cvsdist 0cfdac5
cvsdist 00ff72a
for h in `find crypto ssl apps test -name "*.h"` ; do
cvsdist e32c112
	echo Removing IDEA, MDC2, RC5, and EC references from $h
cvsdist e21e184
	cat $h | \
cvsdist e21e184
	awk    'BEGIN {ech=1;} \
e96bebc
		/^#[ \t]*ifndef.*NO_IDEA/ {ech--; next;} \
e96bebc
		/^#[ \t]*ifndef.*NO_MDC2/ {ech--; next;} \
e96bebc
		/^#[ \t]*ifndef.*NO_RC5/ {ech--; next;} \
e96bebc
		/^#[ \t]*ifndef.*NO_EC/ {ech--; next;} \
e96bebc
		/^#[ \t]*ifndef.*NO_ECDH/ {ech--; next;} \
e96bebc
		/^#[ \t]*ifndef.*NO_ECDSA/ {ech--; next;} \
e96bebc
                /^#[ \t]*if/ {if(ech < 1) ech--;} \
cvsdist e21e184
		{if(ech>0) {;print $0};} \
e96bebc
		/^#[ \t]*endif/ {if(ech < 1) ech++;}' > $h.hobbled && \
cvsdist e21e184
	mv $h.hobbled $h
cvsdist e21e184
done
cvsdist 821b825
cvsdist e21e184
# Make the makefiles happy.
cvsdist e21e184
touch crypto/rc5/asm/rc5-586.pl