From 526f6798772be5d082d1d4362c434f9e2d36a047 Mon Sep 17 00:00:00 2001 From: Zdenek Dohnal Date: Fri, 8 Sep 2023 10:03:06 +0200 Subject: [PATCH 1/2] Fix MD5 deps on MacOS --- cups/md5.c | 179 ++++++++++++++++++++++++++--------------------------- 1 file changed, 89 insertions(+), 90 deletions(-) diff --git a/cups/md5.c b/cups/md5.c index 38d23b4a2a..8a0aee663a 100644 --- a/cups/md5.c +++ b/cups/md5.c @@ -1,9 +1,10 @@ /* * Private MD5 implementation for CUPS. * - * Copyright 2007-2017 by Apple Inc. - * Copyright 2005 by Easy Software Products - * Copyright (C) 1999 Aladdin Enterprises. All rights reserved. + * Copyright © 2023 by OpenPrinting. + * Copyright © 2007-2017 by Apple Inc. + * Copyright © 2005 by Easy Software Products + * Copyright © 1999 Aladdin Enterprises. All rights reserved. * * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages @@ -43,71 +44,70 @@ #include "md5-internal.h" #include "string-private.h" -#if !defined(__APPLE__) -# define T1 0xd76aa478 -# define T2 0xe8c7b756 -# define T3 0x242070db -# define T4 0xc1bdceee -# define T5 0xf57c0faf -# define T6 0x4787c62a -# define T7 0xa8304613 -# define T8 0xfd469501 -# define T9 0x698098d8 -# define T10 0x8b44f7af -# define T11 0xffff5bb1 -# define T12 0x895cd7be -# define T13 0x6b901122 -# define T14 0xfd987193 -# define T15 0xa679438e -# define T16 0x49b40821 -# define T17 0xf61e2562 -# define T18 0xc040b340 -# define T19 0x265e5a51 -# define T20 0xe9b6c7aa -# define T21 0xd62f105d -# define T22 0x02441453 -# define T23 0xd8a1e681 -# define T24 0xe7d3fbc8 -# define T25 0x21e1cde6 -# define T26 0xc33707d6 -# define T27 0xf4d50d87 -# define T28 0x455a14ed -# define T29 0xa9e3e905 -# define T30 0xfcefa3f8 -# define T31 0x676f02d9 -# define T32 0x8d2a4c8a -# define T33 0xfffa3942 -# define T34 0x8771f681 -# define T35 0x6d9d6122 -# define T36 0xfde5380c -# define T37 0xa4beea44 -# define T38 0x4bdecfa9 -# define T39 0xf6bb4b60 -# define T40 0xbebfbc70 -# define T41 0x289b7ec6 -# define T42 0xeaa127fa -# define T43 0xd4ef3085 -# define T44 0x04881d05 -# define T45 0xd9d4d039 -# define T46 0xe6db99e5 -# define T47 0x1fa27cf8 -# define T48 0xc4ac5665 -# define T49 0xf4292244 -# define T50 0x432aff97 -# define T51 0xab9423a7 -# define T52 0xfc93a039 -# define T53 0x655b59c3 -# define T54 0x8f0ccc92 -# define T55 0xffeff47d -# define T56 0x85845dd1 -# define T57 0x6fa87e4f -# define T58 0xfe2ce6e0 -# define T59 0xa3014314 -# define T60 0x4e0811a1 -# define T61 0xf7537e82 -# define T62 0xbd3af235 -# define T63 0x2ad7d2bb -# define T64 0xeb86d391 +#define T1 0xd76aa478 +#define T2 0xe8c7b756 +#define T3 0x242070db +#define T4 0xc1bdceee +#define T5 0xf57c0faf +#define T6 0x4787c62a +#define T7 0xa8304613 +#define T8 0xfd469501 +#define T9 0x698098d8 +#define T10 0x8b44f7af +#define T11 0xffff5bb1 +#define T12 0x895cd7be +#define T13 0x6b901122 +#define T14 0xfd987193 +#define T15 0xa679438e +#define T16 0x49b40821 +#define T17 0xf61e2562 +#define T18 0xc040b340 +#define T19 0x265e5a51 +#define T20 0xe9b6c7aa +#define T21 0xd62f105d +#define T22 0x02441453 +#define T23 0xd8a1e681 +#define T24 0xe7d3fbc8 +#define T25 0x21e1cde6 +#define T26 0xc33707d6 +#define T27 0xf4d50d87 +#define T28 0x455a14ed +#define T29 0xa9e3e905 +#define T30 0xfcefa3f8 +#define T31 0x676f02d9 +#define T32 0x8d2a4c8a +#define T33 0xfffa3942 +#define T34 0x8771f681 +#define T35 0x6d9d6122 +#define T36 0xfde5380c +#define T37 0xa4beea44 +#define T38 0x4bdecfa9 +#define T39 0xf6bb4b60 +#define T40 0xbebfbc70 +#define T41 0x289b7ec6 +#define T42 0xeaa127fa +#define T43 0xd4ef3085 +#define T44 0x04881d05 +#define T45 0xd9d4d039 +#define T46 0xe6db99e5 +#define T47 0x1fa27cf8 +#define T48 0xc4ac5665 +#define T49 0xf4292244 +#define T50 0x432aff97 +#define T51 0xab9423a7 +#define T52 0xfc93a039 +#define T53 0x655b59c3 +#define T54 0x8f0ccc92 +#define T55 0xffeff47d +#define T56 0x85845dd1 +#define T57 0x6fa87e4f +#define T58 0xfe2ce6e0 +#define T59 0xa3014314 +#define T60 0x4e0811a1 +#define T61 0xf7537e82 +#define T62 0xbd3af235 +#define T63 0x2ad7d2bb +#define T64 0xeb86d391 static void _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) @@ -117,10 +117,10 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) c = pms->abcd[2], d = pms->abcd[3]; unsigned int t; -# ifndef ARCH_IS_BIG_ENDIAN -# define ARCH_IS_BIG_ENDIAN 1 /* slower, default implementation */ -# endif -# if ARCH_IS_BIG_ENDIAN +#ifndef ARCH_IS_BIG_ENDIAN +# define ARCH_IS_BIG_ENDIAN 1 /* slower, default implementation */ +#endif +#if ARCH_IS_BIG_ENDIAN /* * On big-endian machines, we must arrange the bytes in the right @@ -131,10 +131,10 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) int i; for (i = 0; i < 16; ++i, xp += 4) - X[i] = (unsigned)xp[0] | ((unsigned)xp[1] << 8) | - ((unsigned)xp[2] << 16) | ((unsigned)xp[3] << 24); + X[i] = (unsigned)xp[0] + ((unsigned)xp[1] << 8) + + ((unsigned)xp[2] << 16) + ((unsigned)xp[3] << 24); -# else /* !ARCH_IS_BIG_ENDIAN */ +#else /* !ARCH_IS_BIG_ENDIAN */ /* * On little-endian machines, we can process properly aligned data @@ -151,15 +151,15 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) memcpy(xbuf, data, 64); X = xbuf; } -# endif +#endif -# define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32 - (n)))) +#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32 - (n)))) /* Round 1. */ /* Let [abcd k s i] denote the operation a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s). */ -# define F(x, y, z) (((x) & (y)) | (~(x) & (z))) -# define SET(a, b, c, d, k, s, Ti)\ +#define F(x, y, z) (((x) & (y)) | (~(x) & (z))) +#define SET(a, b, c, d, k, s, Ti)\ t = a + F(b,c,d) + X[k] + Ti;\ a = ROTATE_LEFT(t, s) + b /* Do the following 16 operations. */ @@ -179,13 +179,13 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) SET(d, a, b, c, 13, 12, T14); SET(c, d, a, b, 14, 17, T15); SET(b, c, d, a, 15, 22, T16); -# undef SET +#undef SET /* Round 2. */ /* Let [abcd k s i] denote the operation a = b + ((a + G(b,c,d) + X[k] + T[i]) <<< s). */ -# define G(x, y, z) (((x) & (z)) | ((y) & ~(z))) -# define SET(a, b, c, d, k, s, Ti)\ +#define G(x, y, z) (((x) & (z)) | ((y) & ~(z))) +#define SET(a, b, c, d, k, s, Ti)\ t = a + G(b,c,d) + X[k] + Ti;\ a = ROTATE_LEFT(t, s) + b /* Do the following 16 operations. */ @@ -205,13 +205,13 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) SET(d, a, b, c, 2, 9, T30); SET(c, d, a, b, 7, 14, T31); SET(b, c, d, a, 12, 20, T32); -# undef SET +#undef SET /* Round 3. */ /* Let [abcd k s t] denote the operation a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s). */ -# define H(x, y, z) ((x) ^ (y) ^ (z)) -# define SET(a, b, c, d, k, s, Ti)\ +#define H(x, y, z) ((x) ^ (y) ^ (z)) +#define SET(a, b, c, d, k, s, Ti)\ t = a + H(b,c,d) + X[k] + Ti;\ a = ROTATE_LEFT(t, s) + b /* Do the following 16 operations. */ @@ -231,13 +231,13 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) SET(d, a, b, c, 12, 11, T46); SET(c, d, a, b, 15, 16, T47); SET(b, c, d, a, 2, 23, T48); -# undef SET +#undef SET /* Round 4. */ /* Let [abcd k s t] denote the operation a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s). */ -# define I(x, y, z) ((y) ^ ((x) | ~(z))) -# define SET(a, b, c, d, k, s, Ti)\ +#define I(x, y, z) ((y) ^ ((x) | ~(z))) +#define SET(a, b, c, d, k, s, Ti)\ t = a + I(b,c,d) + X[k] + Ti;\ a = ROTATE_LEFT(t, s) + b /* Do the following 16 operations. */ @@ -257,7 +257,7 @@ _cups_md5_process(_cups_md5_state_t *pms, const unsigned char *data /*[64]*/) SET(d, a, b, c, 11, 10, T62); SET(c, d, a, b, 2, 15, T63); SET(b, c, d, a, 9, 21, T64); -# undef SET +#undef SET /* Then perform the following additions. (That is increment each of the four registers by the value it had before this block @@ -338,4 +338,3 @@ _cupsMD5Finish(_cups_md5_state_t *pms, unsigned char digest[16]) for (i = 0; i < 16; ++i) digest[i] = (unsigned char)(pms->abcd[i >> 2] >> ((i & 3) << 3)); } -#endif /* !__APPLE__ */ From a4b300f80401371463664c84a25a03f7bd14a85b Mon Sep 17 00:00:00 2001 From: Zdenek Dohnal Date: Fri, 8 Sep 2023 10:31:09 +0200 Subject: [PATCH 2/2] Update libressl version to fix CI failure --- vcnet/cupstestppd.vcxproj | 4 ++-- vcnet/ippeveprinter.vcxproj | 4 ++-- vcnet/ippfind.vcxproj | 4 ++-- vcnet/ipptool.vcxproj | 4 ++-- vcnet/libcups2.vcxproj | 8 ++++---- vcnet/packages.config | 4 ++-- vcnet/testhttp.vcxproj | 4 ++-- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/vcnet/cupstestppd.vcxproj b/vcnet/cupstestppd.vcxproj index eb0c129797..25470bb0ca 100644 --- a/vcnet/cupstestppd.vcxproj +++ b/vcnet/cupstestppd.vcxproj @@ -61,7 +61,7 @@ Disabled - ..;..\vcnet;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..;..\vcnet;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) true EnableFastChecks @@ -83,7 +83,7 @@ X64 - ..;..\vcnet;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..;..\vcnet;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) MultiThreadedDLL diff --git a/vcnet/ippeveprinter.vcxproj b/vcnet/ippeveprinter.vcxproj index 75caee2e9f..e4581a867c 100644 --- a/vcnet/ippeveprinter.vcxproj +++ b/vcnet/ippeveprinter.vcxproj @@ -61,7 +61,7 @@ Disabled - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) false EnableFastChecks @@ -84,7 +84,7 @@ X64 - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) MultiThreadedDLL diff --git a/vcnet/ippfind.vcxproj b/vcnet/ippfind.vcxproj index 63f978ea21..a30261b85e 100644 --- a/vcnet/ippfind.vcxproj +++ b/vcnet/ippfind.vcxproj @@ -61,7 +61,7 @@ Disabled - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) true EnableFastChecks @@ -84,7 +84,7 @@ X64 - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) MultiThreadedDLL diff --git a/vcnet/ipptool.vcxproj b/vcnet/ipptool.vcxproj index 2240728fa3..9fcbce4616 100644 --- a/vcnet/ipptool.vcxproj +++ b/vcnet/ipptool.vcxproj @@ -61,7 +61,7 @@ Disabled - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) true EnableFastChecks @@ -83,7 +83,7 @@ X64 - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) MultiThreadedDLL diff --git a/vcnet/libcups2.vcxproj b/vcnet/libcups2.vcxproj index 1e68d01565..32d2542588 100644 --- a/vcnet/libcups2.vcxproj +++ b/vcnet/libcups2.vcxproj @@ -62,7 +62,7 @@ Disabled - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) DEBUG;_DEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) EnableFastChecks MultiThreadedDebugDLL @@ -72,7 +72,7 @@ ProgramDatabase - packages\libressl_native.3.5.3.2\build\native\lib\x64\Release\ssl.lib;packages\libressl_native.3.5.3.2\build\native\lib\x64\Release\crypto.lib;bcrypt.lib;ws2_32.lib;advapi32.lib;%(AdditionalDependencies) + packages\libressl_native.3.7.3\build\native\lib\x64\Release\ssl.lib;packages\libressl_native.3.7.3\build\native\lib\x64\Release\crypto.lib;bcrypt.lib;ws2_32.lib;advapi32.lib;%(AdditionalDependencies) $(OutDir)libcups2.dll ..\cups\libcups2.def true @@ -88,7 +88,7 @@ MinSpace - ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;..\vcnet\regex;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) DEBUG;NDEBUG;_WINDOWS;_USRDLL;LIBCUPS2_EXPORTS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) MultiThreadedDLL @@ -96,7 +96,7 @@ ProgramDatabase - packages\libressl_native.3.5.3.2\build\native\lib\x64\Release\ssl.lib;packages\libressl_native.3.5.3.2\build\native\lib\x64\Release\crypto.lib;bcrypt.lib;ws2_32.lib;advapi32.lib;%(AdditionalDependencies) + packages\libressl_native.3.7.3\build\native\lib\x64\Release\ssl.lib;packages\libressl_native.3.7.3\build\native\lib\x64\Release\crypto.lib;bcrypt.lib;ws2_32.lib;advapi32.lib;%(AdditionalDependencies) $(OutDir)libcups2.dll ..\cups\libcups2.def true diff --git a/vcnet/packages.config b/vcnet/packages.config index 48d46fbf49..6d48227e9c 100644 --- a/vcnet/packages.config +++ b/vcnet/packages.config @@ -1,7 +1,7 @@  - - + + \ No newline at end of file diff --git a/vcnet/testhttp.vcxproj b/vcnet/testhttp.vcxproj index 9647e0ae9d..bab15d5b2a 100644 --- a/vcnet/testhttp.vcxproj +++ b/vcnet/testhttp.vcxproj @@ -58,7 +58,7 @@ Disabled - ..\vcnet;..;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) EnableFastChecks MultiThreadedDebug @@ -79,7 +79,7 @@ - ..\vcnet;..;packages\libressl_native.3.5.3.2\build\native\include;%(AdditionalIncludeDirectories) + ..\vcnet;..;packages\libressl_native.3.7.3\build\native\include;%(AdditionalIncludeDirectories) WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) MultiThreaded