From 01e17ed5993387eb47c1b8cf02c0c354756c89e1 Mon Sep 17 00:00:00 2001 From: dingqian21 <1052888395@qq.com> Date: Tue, 20 Jun 2023 17:53:51 +0800 Subject: [PATCH] add md5-c Signed-off-by: dingqian21 <1052888395@qq.com> --- thirdparty/md5-c/HPKBUILD | 85 ++++++++++++++++ thirdparty/md5-c/OAT.xml | 20 ++++ thirdparty/md5-c/README.OpenSource | 11 +++ thirdparty/md5-c/README_zh.md | 12 +++ thirdparty/md5-c/SHA512SUM | 2 + thirdparty/md5-c/docs/hap_ingtegrate.md | 93 ++++++++++++++++++ .../md5-c/docs/pic/md5-c_install_dir.png | Bin 0 -> 10500 bytes thirdparty/md5-c/docs/pic/md5-c_test.png | Bin 0 -> 48004 bytes thirdparty/md5-c/docs/pic/md5-c_usage.png | Bin 0 -> 27611 bytes thirdparty/md5-c/md5-c_oh_pkg.patch | 24 +++++ 10 files changed, 247 insertions(+) create mode 100644 thirdparty/md5-c/HPKBUILD create mode 100644 thirdparty/md5-c/OAT.xml create mode 100644 thirdparty/md5-c/README.OpenSource create mode 100644 thirdparty/md5-c/README_zh.md create mode 100644 thirdparty/md5-c/SHA512SUM create mode 100644 thirdparty/md5-c/docs/hap_ingtegrate.md create mode 100644 thirdparty/md5-c/docs/pic/md5-c_install_dir.png create mode 100644 thirdparty/md5-c/docs/pic/md5-c_test.png create mode 100644 thirdparty/md5-c/docs/pic/md5-c_usage.png create mode 100644 thirdparty/md5-c/md5-c_oh_pkg.patch diff --git a/thirdparty/md5-c/HPKBUILD b/thirdparty/md5-c/HPKBUILD new file mode 100644 index 00000000..ca3aa57d --- /dev/null +++ b/thirdparty/md5-c/HPKBUILD @@ -0,0 +1,85 @@ +# Contributor: wupingyuan +# Maintainer: wupingyuan +pkgname="md5-c" +pkgver="main" +pkgrel=0 +pkgdesc="A simple, commented reference implementation of the MD5 hash algorithm" +url="https://github.com/Zunawe/md5-c" +archs=("armeabi-v7a" "arm64-v8a") +license=("The Unlicense") +depends=() +makedepends=() + +source="https://github.com/Zunawe/$pkgname/archive/refs/heads/$pkgver.zip" + +autounpack=true +downloadpackage=true +patchflag=true +buildtools="make" +builddir=$pkgname-${pkgver} +packagename=$builddir.zip +cc= +ar= + +prepare() { + if $patchflag + then + cd $builddir + # 由于脚本中没有生成静态库或者动态库和没有install命令因此打patch + patch -p1 < `pwd`/../md5-c_oh_pkg.patch + patchflag=false + cd $OLDPWD + fi + cp -rf $builddir $builddir-$ARCH-build + if [ $ARCH == "armeabi-v7a" ] + then + cc=${OHOS_SDK}/native/llvm/bin/arm-linux-ohos-clang + fi + if [ $ARCH == "arm64-v8a" ] + then + cc=${OHOS_SDK}/native/llvm/bin/aarch64-linux-ohos-clang + fi + ar=${OHOS_SDK}/native/llvm/bin/llvm-ar +} + +build() { + cd $builddir-$ARCH-build + make CC=${cc} AR=${ar} md5 build -j4 > `pwd`/build.log 2>&1 + ret=$? + cd $OLDPWD + return $ret +} + +package() { + cd $builddir-$ARCH-build + make install DESTDIR=$LYCIUM_ROOT/usr/$pkgname/$ARCH >> `pwd`/build.log 2>&1 + ret=$? + cd $OLDPWD + unset cc ar + return $ret +} + +check() { + echo "The test must be on an OpenHarmony device!" + # 在OpenHarmony开发板中执行用例 + # ./md5 "Hello, World!" + # 输出65a8e27d8879283831b664bd8b7f0ad4 + # ./md5 "Multiple" Strings + # 输出a0bf169f2539e893e00d7b1296bc4d8e 89be9433646f5939040a78971a5d103a + # ./md5 "" + # 输出d41d8cd98f00b204e9800998ecf8427e + # ./md5 "Can use \" escapes" + # 输出7bf94222f6dbcd25d6fa21d5985f5634 + # echo -n "Hello, World!" | ./md5 + # 输出65a8e27d8879283831b664bd8b7f0ad4 + # echo "Hello, World!" | ./md5 + # 输出bea8252ff4e80f41719ea13cdf007273 + # echo "File Input" > testFile | ./md5 + # 输出d41d8cd98f00b204e9800998ecf8427e + # cat testFile | ./md5 + # 输出7dacda86e382b27c25a92f8f2f6a5cd8 +} + +cleanbuild(){ + rm -rf ${PWD}/$builddir $builddir-armeabi-v7a-build $builddir-arm64-v8a-build #${PWD}/$packagename +} diff --git a/thirdparty/md5-c/OAT.xml b/thirdparty/md5-c/OAT.xml new file mode 100644 index 00000000..96937ea0 --- /dev/null +++ b/thirdparty/md5-c/OAT.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/thirdparty/md5-c/README.OpenSource b/thirdparty/md5-c/README.OpenSource new file mode 100644 index 00000000..2ca8294a --- /dev/null +++ b/thirdparty/md5-c/README.OpenSource @@ -0,0 +1,11 @@ +[ + { + "Name": "md5-c", + "License": "BSD-3-Clause license", + "License File": "LICENSES", + "Version Number": "main", + "Owner": "qiandinge@isoftstone.com", + "Upstream URL": "https://github.com/Zunawe/md5-c/archive/refs/heads/main.zip", + "Description": "A simple, commented reference implementation of the MD5 hash algorithm" + } +] \ No newline at end of file diff --git a/thirdparty/md5-c/README_zh.md b/thirdparty/md5-c/README_zh.md new file mode 100644 index 00000000..cd66429b --- /dev/null +++ b/thirdparty/md5-c/README_zh.md @@ -0,0 +1,12 @@ +# md5-c三方库说明 +## 功能简介 + md5的全称是md5信息摘要算法,用于确保信息传输的完整一致。 +## 使用约束 +- IDE版本:DevEco Studio 3.1 Beta2 +- SDK版本:ohos_sdk_public 3.2.11.9 (API Version 9 Release) +- 三方库版本:main +- 当前适配的功能:提供数据的序列化框架 +- [BSD-3-Clause license](https://github.com/Zunawe/md5-c/blob/main/UNLICENSE) + +## 集成方式 ++ [应用hap包集成](docs/hap_ingtegrate.md) \ No newline at end of file diff --git a/thirdparty/md5-c/SHA512SUM b/thirdparty/md5-c/SHA512SUM new file mode 100644 index 00000000..f011f5e6 --- /dev/null +++ b/thirdparty/md5-c/SHA512SUM @@ -0,0 +1,2 @@ +2f496e8af2d282dc0c816d8f27b9db1a6b6bd0c01bb9555fec8819266b72169b5d40dda1219526033276e89fd124708b0f803d7782dcd8f26b232a69b49a5296 md5-c-main.zip +c7ce9a603f52ffbdb2475b5c5dfb76ad1484d097619995de54de4c909a189f8d305586df5cd2160132c940ca5c220f804ae0ce869a0ca86b057e8fd5976c01b2 md5-c_oh_pkg.patch diff --git a/thirdparty/md5-c/docs/hap_ingtegrate.md b/thirdparty/md5-c/docs/hap_ingtegrate.md new file mode 100644 index 00000000..41340df3 --- /dev/null +++ b/thirdparty/md5-c/docs/hap_ingtegrate.md @@ -0,0 +1,93 @@ +# md5-c集成到应用hap + +本库是在RK3568开发板上基于OpenHarmony3.2 Release版本的镜像验证的,如果是从未使用过RK3568,可以先查看[润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld)。 + +## 开发环境 + +- ubuntu20.04 +- [OpenHarmony3.2Release镜像](https://gitee.com/link?target=https%3A%2F%2Frepo.huaweicloud.com%2Fopenharmony%2Fos%2F3.2-Release%2Fdayu200_standard_arm32.tar.gz) +- [ohos_sdk_public 3.2.11.9 (API Version 9 Release)](https://gitee.com/link?target=https%3A%2F%2Frepo.huaweicloud.com%2Fopenharmony%2Fos%2F3.2-Release%2Fohos-sdk-windows_linux-public.tar.gz) +- [DevEco Studio 3.1 Beta2](https://gitee.com/link?target=https%3A%2F%2Fcontentcenter-vali-drcn.dbankcdn.cn%2Fpvt_2%2FDeveloperAlliance_package_901_9%2Ff3%2Fv3%2FuJyuq3syQ2ak4hE1QZmAug%2Fdevecostudio-windows-3.1.0.400.zip%3FHW-CC-KV%3DV1%26HW-CC-Date%3D20230408T013335Z%26HW-CC-Expire%3D315360000%26HW-CC-Sign%3D96262721EDC9B34E6F62E66884AB7AE2A94C2A7B8C28D6F7FC891F46EB211A70) +- [准备三方库构建环境](../../../tools/README.md#编译环境准备) +- [准备三方库测试环境](../../../tools/README.md#ci环境准备) + +## 编译三方库 + +- 下载本仓库 + + ```shell + git clone https://gitee.com/openharmony-sig/tpc_c_cplusplus.git --depth=1 + ``` + +- 三方库目录结构 + + ```shell + tpc_c_cplusplus/thirdparty/md5-c #三方库md5-c的目录结构如下 + ├── docs #三方库相关文档的文件夹 + ├── HPKBUILD #构建脚本 + ├── md5-c_oh_pkg.patch #补丁 + ├── OAT.xml #xml文件 + ├── SHA512SUM #三方库校验文件 + ├── README.OpenSource #说明三方库源码的下载地址,版本,license等信息 + ├── README_zh.md + ``` + +- 将md5-c拷贝至tools/main目录下 + + ```shell + cd tpc_c_cplusplus + cp thirdparty/md5-c tools/main -rf + ``` + +- 在tools目录下编译三方库 + + 编译环境的搭建参考[准备三方库构建环境](../../../tools/README.md#编译环境准备) + + ```shell + cd tools + ./build.sh md5-c + ``` + +- 三方库头文件及生成的库 + + 在tools目录下会生成usr目录,该目录下存在已编译完成的32位和64位三方库 + + ```shell + md5-c/arm64-v8a md5-c/armeabi-v7a + ``` +- [测试三方库](#测试三方库) + +## 应用中使用三方库 + +- 在IDE的cpp目录下新增thirdparty目录,将编译生成的库拷贝到该目录下,如下图所示 +   + + ![thirdparty_install_dir](pic/md5-c_install_dir.png) + +- 在最外层(cpp目录下)CMakeLists.txt中添加如下语句 + + ```shell + #将三方库加入工程中 + target_link_libraries(entry PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/md5-c/${OHOS_ARCH}/lib/libmd5.a) + + #将三方库的头文件加入工程中 + target_include_directories(entry PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/md5-c/${OHOS_ARCH}/include) + ``` + + ![md5-c_usage](pic/md5-c_usage.png) + +## 测试三方库 + +三方库的测试使用原库自带的测试用例来做测试,[准备三方库测试环境](../../../tools/README.md#ci环境准备) + +进入到构建目录,执行如下命令ctest(arm64-v8a-build为构建64位的目录,armeabi-v7a-build为构建32位的目录) + + + ![md5-c_test](pic/md5-c_test.png) + +## 参考资料 + +- [润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld) +- [OpenHarmony三方库地址](https://gitee.com/openharmony-tpc) +- [OpenHarmony知识体系](https://gitee.com/openharmony-sig/knowledge) +- [通过DevEco Studio开发一个NAPI工程](https://gitee.com/openharmony-sig/knowledge_demo_temp/blob/master/docs/napi_study/docs/hello_napi.md) diff --git a/thirdparty/md5-c/docs/pic/md5-c_install_dir.png b/thirdparty/md5-c/docs/pic/md5-c_install_dir.png new file mode 100644 index 0000000000000000000000000000000000000000..ee1baa79707052ece7339f34e1ec58958721b99f GIT binary patch literal 10500 zcmb7~1yodR*Y^*gAR>)O4-TnFcY_WwAR>*l5+g8x)Buty!hqBef~15XjUyp#&?)VZ z(%s$P!6)wfeb%$y^?qv&tizeZIWzm(`@i@8?JMNr0~OM%3|9dFAcd>Kv;hEb4*W5^ zf)Ab{7HmlY09F7FQ`GfLULEs&XgpubwK2hV?};TN7fdR&Peh|v7e6q0c(baK6*?{y zBfU}vFdhpT=ZxL_Vuc%#_VCCq#3PEi^4tkA?^w}CV>yL$?2~3;v}5E-ZO}=&!R9>D z59hniFXhrJWoxR!&si4YEHIONI<0yaedCpaiqzEcp*mBF_Onw-@9q0n@Uc}~EL zXkKi1(iH%h>NxmCiYe4;JQ4!{i%%3d00@22LI^y(1``7Up0GC_5q`hEUUbFp%;#iq z7Ly)%elR&jenY}lBQC;8x_9=ma5-XCDt6jlc68bXS!am{OqsZ;;Bs?wtv_(wy0r|I z_Hk%?KCL62+9FV}Vu}ZF>w<6V=)^GUh{wgR+d9b$%K1rSV-`q_cY=67SEQ{3 z=O&ciMu`@_GyEfUFUCfx#jmty36rh=#M2u9wnNssBeAn(U*DM*e^|Ft_q@}QY!9TgZf%{Csk$Vm8Y|BsIytlEPS5T)rWN4gpzlATh|!?0gaD2 zUHvv9H$O27n)`_EtTw;yJTwsl6z)dTnuk~47^G|fKj1g)!~f|^tXMpNh5$nfyr)AW z0iaRAiU8mygfapOf>UdHiPk82e1N^=3yXE;F(tsNOY_HzKu>v0a`!`4fx4Pno!9o< zRQKnswdU$*J5rH7o1HEoU<&3OYiejnr+>&@*k}YE)V{g6jcBCIk>N&Ut2A}%evxUe zj{nJ~3gN4776K-9D~ZX;SBp}7=kCwX%=G)HEDD8h`(B^h+OSwid-?R>_~-^IDXrC; zQ(ULfyvjwLg4EyKJi~PR*Y?DnII+6zW)+?#o>Zgm{>APDVO_R*#&hLe`L%=tk^H6C z*f7$h^7tE$Zl+Z(Z_t4SrlcQ|w|nD^KT;C}NCb@ z_Cl-3pl?72WSmwLJ4h-;@qOMhjM=7BdG z7|pPL$X1MYb;mM0@oRrJ|W_*?Sh3q?-rd+Cs5%9NU$}# z;-;r7COo%0XVbVAkI%)C?fvy92IpMCF%>Hv!h1{*cBs(X^$coe0`>Zavd1^#=H@7I z4@jSckpi2XMQQD3GS?ZU1_#q@aveSvgRf2|;tuzYPdNzm{)hPf+8yTYR~d9?g*iiF zd3`bVEzGA$gn(hj7w==iC$}}7)ODPG^DDz{i@DXA)3+b?QnQhu3k0<(NU!fM{uqqF zb1?g(m@eamN(fS*q0p1bIww2(ZQR?yLEIf;1~xoat;T6?Z#z2|%cX2k=-MBdd&9#q zFLvPqSa20-BQue1`4N`@!`Uh4SdE+RV(m=!{Lx?E+2{3(**^ni(e<=sEn6m7IcYzO}0Wg{(6J4kjY!cf5l8+`T?xVEFJ0l$7{QPDNH4Rt$pp zx0ccUoQs#2|*|v{>Z?@#K+fd=kCzucl^w~ggC@D7&%ZVg#Mz(M8wIJtm?Xg-G@I^9OTM^V$QR{+~g9Q5*sUn+HM+|?`pL3>C}0CulDs_ zKU-a|=e2XgK~%~x=)|FrSt(wCp~b%x=@z4Sd4HM zE39Zd3sH1)B`7}$)PI!cKNH@6E~ILdfh}~|?-KCv?Ior^%0#6%8jjV`(aFi?{6QP2 z27eSE8|$+@*V&kcfR9Cjl1Jf@x$^z{_mVahTi!wNfNuOcpdf>;*4nFdbqdy(BOL0I z^H^JbYQk60;~Y?`G!VydOpjgZKRz-h-#5uD2z~BPp4Gf(q#nt|P=N=O&^h10r7P8f zNs5<`FZ-iA^Oa=DnjS6otE+xl1))bNwtJc3s&)XHz*$`I?u&lTjQRc5%#UD{_bo__ zoj$!kbbO?Vs?KzA2Ld=ktF_8uYO7$TBQd>^F{B|}-Lon4ogSDnl!?G{{4;PrqC&=M zdwM2k25?@=P^h8^%}n|>CGh0d0~OrX7yHc2P*P@logv);u~-4E8O=vTA?dr|+k_Y2 z{%XLQ3IMzgnYgg=l~;dN68~w~zo|dfj9y|(3y$vAv$@3E%oC`r_E!euc&vBntdG+L zsemc-mj!}Uk1W~sIq`rGQG;~wC@nECU@SycqbiY-jBJ;|te>{J>bA&>W3ue((`bI` zVHuKox9#TTE)$)&PC;eZ#Yv)f{|uC7z*?^#;k}w!nN1%I0Hb;@!?3T$EN5rE`|ZkN zhqREaY-P8C9~dPuKG5snfk8DbXH4Orp;q$4Pj^+fZ+@zx22=$?gxlV>{G{{pNH(Hg zu%1ZH?Q7W52UyeD`?;mfB#w}haRWrI=$0Sbu4gKAG5e()tXn0l{WnBBqCRHG+FOS7qWspuXX}m6ehVv>BQx zAg(M=1@|=U5@7vkAoF4!TFn_Mg;NBfTffY_%aTI#ctrPvtu~!@Dqx|b$s?K0>cIOu z`BK;qw2ZgPx>IG1O-$}<*|WxMNp<>_I#(sfvq5V)PGidsB`og_7Tp7FtI`bgB#$s( z%Ox!tE?f$s1WntUP(-df5I7}G@MvY>^P$_jrfMWnzyPvLMeMTn@z!j+mgB)?z>p6n zhLH)!{JSQ~NN0_V5nC3>zqgn#@R!+ey zm=Sd9R&DzDU06m-8Wtr%$A+03Cj;_XpvH24a!m1gq=HDFs*0s_(m0*S1PU;0q`;{M z-LL{!^#$TDDx40hF7h)$ITV}qbT-{MDFAfX`m6-C3|hqgxBBOADpaG!7BefZd^ICI zLvCaQj0NFSp{xtfbvx+@cV$W{TYeZ(y!$MYkzX61n_d|w7yvF1`kFFMofBbc^*%k@ zt4=@hYZZq}SjzfyVSvJc&YGY8BE9Gfw3!Lv7}#>Eq3TO!ZJ!{Hn^ct6YmUE)xuBSJ zpGsfV-yNcQc1dNH0j1xXRBMatcb|2Owq4cNpu#Nd_Ux#7MLdDO5FXOCcHJ(0xKwj; zJ^akM>0{QK#h&;1w{p1-h{NJ01!o(cRbb1X2k9Xf5(XHP-%upHP<80t5jXPZXtc)@ z_w<{)*%yw9)zhkvkxF7DqNk*9Cy&kUEE{o~%qnlW&sEsDcG-yg9;b3(!EUgNQ0bVX zxTU7ef~Pmp7J~v|0$oU;PdH}Mr+i!y3I(f|r0M0wCRNL-@u3Oo1uQ+Cb7!sbdqeF; z8PnC;*!uePy7Esj`TeeRrUzz)!cXB8r0=9+=YW<=80Pd#_F*&<+i%>7+CF~n86JJs zuvR;Ac3Z69lFK(6J{W^?!M3+`9}8Hf+6C$CEWBLaY)9HjfYkXvYDwd zIzrC)f%Wb;Cg|42NwUG!+INFLWF0k&9d;CKjr=2xQ-iPJ0oRFKh<%TpA8Ya6HpU_H z!)J-^o1MF|0Tg=Ljd;p9A$U!b>I>l{H@*>K@!>!`t5+>Ss&t?!7vF8WQTusbilXKO z3ltjQk1YQ$O8nIo=j?D8j(PLqaxq>kKBkaP+j2(Me#lQih^99G>2_Y8#+hDv7VYZ= zQxf3qRSYjR80+z``aa5*50xOVDENFgDZfwCPbazL+I&O{SUA#Ix5LVtRJY=lZM>yT zpR0>CCxE?|;4rUy=OvY&eT~sDn%--<@JzS!=)xE7kLKm-&ke7&;?0!KVN@U_XM$b` z=;3&oU`^5`u|K79yM+MVwV;1h%M2}G&?}{$Z*91B2dE}*zAGH*_dlAguRCkX8QzNS zm9gV_7IpgyTiLwc)&IReL zFXX3GM%G=l_=^{0|8-u%(IubrWEfhoN4^0VieUnwf9 zZPCB<4*~dBH+{zjKc5*YU3BY%pipf8kl#TZ*?F|~%{R&pUEL25NDQ;s%cmbdwy~@t z9qFz9DeBFmypljZ(M6cNWMJa}tHar>!;$OX>!v!apBq5<`DT5J9_I#so1FRJLKrYW znz`}?R5tcbQOcWW6D{`-O@2Xlq<8Die(;W;ypkj-Q?nD^nVIS=BR!(;i~{c#XA?P` zR7;OL!VO)o%ve&BT~8C}nbY%CS+|oN?X&FWYafz&E@O3nsQM_<`&Y6!efT*Iut_`? z>8#P!q^dX*8Y+6j*i3!|vCJ}yG8R(dC#$yoF+Eb@Fw%5XP`JA8CxWWbhwo31oNwzG zJB=ioua>w=>q)D*XdilFKbdg z-f_(y*&Fg-wq|7UZ9}$of~}^!>8krMpJ}D&yvB0@WBmMp{!_FTswSqYxvhO)<{ypQ zf~fL;@Pco}2VFnmGg10*^~4H~C^Tk7TusV$>h8|4Hxn#OH`OeOXCyXPwtMz%_HIS$ zv*0d!BKu*b9(#Lfm+{FNUL2tVDDXe?O~r_aja(m*?K0agZ3!rf==T4C9FXLFPCT%` zDaUW=qr0Uc5q0`BbAaulMssIJY#!7Ii=&?yX+=cX?tm4@Nzx8~O;$w(%NlWEtnR1u z$3qWvvQcO^t93Vla!H*W=iLfVI?BU(J^RaimX{r=6hPF}#wx0;yw7k!D4bSNF*NZa z46X1{HW|IQvyr7co|n3iy@vn+G125zbf9343jWh_6jCsS19Ei~H%#Bq7wLo_E@^8WB8Ao_>mb+AcNj}mSwOp}I zE|m-!-R0g?Ka@XBJ?o7$I-3|!s!iYvedI3RdeG^i>Bjq{QFl{5F3o3f|1`UZyrkwf zK>0W}t3rgMhgkEi0d{EuXJbJtV9C^S{2B^0IBJ9>$wpo`9`b|K>%QT|(1 zR??QeP3L}`CtvxRY<$RYY3K$`e_A2z zA#YLHFI`rST`zxQ-gdsY-&VJ4*4}-NEI5X@&TXr-WmCU3{_S}yelfl{_B4W0>l?|g zsL8YH#id9y+qyOw<`^}0Hmqr8d&X>IX)$o|kpA6U=Y>=2MbC@Qr*^y^@hwPizkP-7 zNekwy+=aoUg;HHc>iwH!t6$kT_MWXD%s260+Ys$Os&GOiu1@&3QvKRodSwK?R{Hqj zZUx}obDB)w4-lp#+BE6(_k`ZF*1tY?qGUO++cFK_(^ z*bO{CIbg5g)ZD?Ee0KY;SaItUHFePRzP?GnZM@icWv8 z2(Wl}VTAt^{Cz{E8u0Nu=$zq^6OK;uiZHM}gRg>D;QZcX{wyG1Ez)eOOU19PSOXKU~-rmKdqJ~O82H_(Q|HM65`{8A<8NCXX z7HpI$-lc!k8{BzF8#64r5_L`sP*JdKso#ggTP?+%YJAsB3YvywK8W`lqg81Rbq2q( z69acNJ@+l!nluD!7}4oJD}%_et7C`}~0g_1>F` ziU~~DMvosqHY80b&9i%)KFTZXyaspOd&)IP64(%|g))%_kp>8TzGdwEzWr;ytCl&u z9b`J$x05Wx@MEsMpr04E!sYJof?dZPq+=6RweuDkAqYY?%hKvkFijZCh&`_?3zQ0W zPwBMFt;q(N>^}EZ^z+`}p~s#%2JAX=9fXJM;~ejGL*lx!JM)hs#s{8%Y3`(>Bz{z_ z)^}t~aBt02Ux^D&JMOjEMrWJm*X1^HcH~ss;Xh*C-F4tPSSCZ~`)W&L{2gmH=>Owz zrA5&7Qzt6cj~1Tp7}@A{^bM@_%&j{K*k1V7Z-bLCNusn>-N+rs$z;$x+@!CJx(n9%5XS?v?bE}FZ zv>0MZ#AD3=!JjUjt4*Cp|- zCSSDW{7B5LfPrh7D-E%UiAMTHR7Qx;>|ifNO&|1Ee(vv|Y3kSbCY99k0GrU%(r6%x z|8)z@>v5FZlfEBK3aDYr@OD+aZ@|Z}jo%*1*~Z0W(s0!gApZ z#tx3SPUrJtFBv-gC3tBQ6~!Q`4;P;ZJG(r%$OzC2 zSlciAiuqrk0S5+@l=OXI2|nm3&bx&nw>?+DOn*h^i!|5!qCT)w5)PLvv0|z9|H8mZ z38uG*ORi4NH#gAmdogQYzJ(5YDdRXd1X3}rr|{{pQ?RifTiJeCqD^J7`wf(R4i1jU zv6@W~nSNq657t)GiGX(c^S`gKaT;KKBC4$cwv&m716CKJCv2CT8Ds~~t(RLZyzc==j0Ypeo( z3jnTp;F?N6AZRl~p`7xIsT_%Ela#&F*o&Z}VenP^$Z&+g!WuNoyZ+My1tX)!is>Ek zgT}qVg`F38v9D$v%NTwM;K9eFv{Bp3;so*ag1qy-&`3~!U58wWl^#AKD<7>W%P)NZea3%-xK#T%7J88HC9z+#B(xQ+o zjU!N?`1fi3tv935gIN(4DKZyr#QJ?i82VE8-|!G7>LO6qpS3?5e8c~A1<^7!(dktM zXNU}DS^iYZ$^4-+KTpi|3P}b&cT{QgM4}3d@0~BUTV1fNT6;@R%{Czr2<$Em)O#H* zY9xtOniReEF!PBUoSjr$B(OAVR{Gm;Op2?t(RfIj-?Xyv7p-f^QtgocG;ZTy&tate zlbro>h@A00cg0AwbAU(-FxMy2lGz2D(^#$ZoRdH1=ok;6>7gE|6J)bfhO`I zea{VM6?CpZJhNnF(skwsfkC~!3}4Z=p5Z_{Z1gRggfZn1Sxnr>7=r9I&?*5k${ChJv-Z!@yqz1E#a`POxiBC9N6WaQgMUN}cKJ)FKb`%OPKpgf3oW!>3 zv)VVuRGkS5m+qxPA^p__jOT_KZ+_PvU-U`Kbe6<5=E` z+>qGZo@)a)Y$Ls#K000&B zo@g!2NIbu$^B)@x=H7{J?*1|<%l0X}ch%XlD8!^tt_;3@Zgzopaibk#Ev$>i;maNE ztM^>>VL_A^TRDbpR-Xyb4zqY|#ZmrHRF|@(F=TwZwcow=Hn|Q4A5)jyBQvXzM(7?5 z8v4D5)y(udk;}FUaiIVzaI&Th)iCvcIp*W0mIdeh_;hSY{&?lpa+)Nh&f^9Bsw8RH z7d76>rnLyXUfNlZ;x>y8^ZIh2O)&4k5zAN@SiX@xLNPKk6TBdJU0@n~$F{tDj+UGn zEChYaD+&+41jBWHdHZ%Y&zYy{{qC@q%;YkcoHCDBQ>w2xdPzO;QmmMBXXLj~$sgJ* zBtP!0=K3|Zn0ez5^k7-5R3_+~fEMG?2DZHI?r*4)9_La$xU1@wHa5h2w)1Kt+4w-N*U?MVf{8T7sGe)hbE#^*056r^wy5+`q}3f+f@*kT6i1 z!5<|lSK&KxK);|y2rcuFW4Z?iC(TO8NP+LHSZlTi2P}s^D|qWo;yUZz=4FG&hY9bE z*yxiFG+6chJZk9(B!RTBHI_K+g9wn4h;g zic>mt_1oU9n_N{fb8ubEw>ynQbm&o5ewBYbxz~c5=-OAoT;_SIJc_aPwe1#7`=ms=E%*7 zqNc9}uUkCoM%Rd$@zq~1KMxnK+57`*3gi;*!9ZNoRYMw=v#*z5oKd&O@n$);%o3%P zC8B{b(;j+w7p#0%gEb#O7zbJC^)=|ndFj94evWmSck`(&JIPMgDW{0}&U)+}m^nfc zdz?ZRkpYM4Qwn6%-)|VW)iHX@Q;CnKcZWDqjezA@;h;iYx44Y{lfP}r~O6GH>z1CN!-Hl zzK#mCMZ7qM9JLWd%1|y>1Hi1JRl5V+ix(YK`)1jc2KHmT3e@&%eum=?_zE(2t=g|n z+XIGVuyP+TpOoA`IMk9$JDbhaJm1nPSjPuwu3>o7iq~4m1ITm0XoVCk`vyR%wTuCFaS%F02@(^H0cn7Ow4{r7JAv?Hzc26JXUwBOh^a za5;HN9Zwd^btTwoX!o{w$19Kf?mH6YY9yX1FBfN3y~B6hsFAi8ObOR!%E3j7?Rl!& z`4&uQ+{|SzC!mBcJ1_Gt<`i@`BlJ|d##!og#Q_*S)L8$Wro;IbwPy0^EPpm9*A3sO z?m=nQh8EfH$8NAUYsgr;;p(w7GLwtKU#L$t;+q%h%5QK4$RuI)Rd9cAQ3o&J4h0VT z{P#B^`NM$U?CfO~%|NI2?$wB0B!Ri7Gj9G-y~V&~XguRmX} zm%Fi?gn!|S?W^Q$Z2olgaJ2`tbq9AT0xzb;+{B#9Gt@`7JAFzHZUY^})NC%t8!2ms p6Zil(Bg+=SzjgusEeoGR!bd-IU;2=D0Pb!C;7Si*MRzS;{y#yOCM*B| literal 0 HcmV?d00001 diff --git a/thirdparty/md5-c/docs/pic/md5-c_test.png b/thirdparty/md5-c/docs/pic/md5-c_test.png new file mode 100644 index 0000000000000000000000000000000000000000..ca9b9eb6429ca69332b12fe0b901454e356971e2 GIT binary patch literal 48004 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 I9S`-1v4ROZUpBji%^XYs-ko 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

4lG=n%YKhy4S|U)t3DIfDBC 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�l$+>YU5j3u(R#2bY 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 of5X-CC;$IoH2)8t*%iIUI^`=FA!z??!5%