From 798e45324a4d77a2d2e2d787965b306675075e2e Mon Sep 17 00:00:00 2001 From: Funda Wang Date: Tue, 26 Aug 2025 20:51:31 +0800 Subject: [PATCH] Deprecated since Aug 2025 --- ...ng-crypto-random-for-boundary-values.patch | 39 ------------- README.en.md | 36 ------------ README.md | 38 +----------- form-data-0.2.0.tar.gz | Bin 31075 -> 0 bytes nodejs-form-data.spec | 54 ------------------ nodejs-form-data.yaml | 4 -- 6 files changed, 2 insertions(+), 169 deletions(-) delete mode 100644 CVE-2025-7783-Fix-Switch-to-using-crypto-random-for-boundary-values.patch delete mode 100644 README.en.md delete mode 100644 form-data-0.2.0.tar.gz delete mode 100644 nodejs-form-data.spec delete mode 100644 nodejs-form-data.yaml diff --git a/CVE-2025-7783-Fix-Switch-to-using-crypto-random-for-boundary-values.patch b/CVE-2025-7783-Fix-Switch-to-using-crypto-random-for-boundary-values.patch deleted file mode 100644 index ac7ff20..0000000 --- a/CVE-2025-7783-Fix-Switch-to-using-crypto-random-for-boundary-values.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 534bb5bf53ae6da4cbd707a4c0b015e7e87c18e7 Mon Sep 17 00:00:00 2001 -From: Ben Shonaldmann -Date: Fri Feb 21 21:20:43 2025 -0500 -Subject: [PATCH] CVE-2025-7783 Fix Switch to using crypto random for boundary - values - ---- - lib/form_data.js | 8 ++------ - 1 file changed, 2 insertions(+), 6 deletions(-) - -diff --git a/lib/form_data.js b/lib/form_data.js -index 5b33f55..2df1f31 100644 ---- a/lib/form_data.js -+++ b/lib/form_data.js -@@ -7,6 +7,7 @@ var parseUrl = require('url').parse; - var fs = require('fs'); - var mime = require('mime-types'); - var async = require('async'); -+var crypto = require('crypto'); - - module.exports = FormData; - function FormData() { -@@ -217,12 +218,7 @@ FormData.prototype.getBoundary = function() { - FormData.prototype._generateBoundary = function() { - // This generates a 50 character boundary similar to those used by Firefox. - // They are optimized for boyer-moore parsing. -- var boundary = '--------------------------'; -- for (var i = 0; i < 24; i++) { -- boundary += Math.floor(Math.random() * 10).toString(16); -- } -- -- this._boundary = boundary; -+ this._boundary = '--------------------------' + crypto.randomBytes(12).toString('hex'); - }; - - // Note: getLengthSync DOESN'T calculate streams length --- -2.43.0 - diff --git a/README.en.md b/README.en.md deleted file mode 100644 index eb88a50..0000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# nodejs-form-data - -#### Description -A module to create readable "multipart/form-data" streams - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md index fb2b945..1bf6768 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,3 @@ -# nodejs-form-data +Deprecated since Aug 2025 -#### 介绍 -A module to create readable "multipart/form-data" streams - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 码云特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 -5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +- https://gitee.com/openeuler/release-management/pulls/2363 diff --git a/form-data-0.2.0.tar.gz b/form-data-0.2.0.tar.gz deleted file mode 100644 index bca0d044009f578375e8c2d87e631cc321f4cb73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31075 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 diff --git a/nodejs-form-data.spec b/nodejs-form-data.spec deleted file mode 100644 index 6631fb5..0000000 --- a/nodejs-form-data.spec +++ /dev/null @@ -1,54 +0,0 @@ -%{?nodejs_find_provides_and_requires} -%global enable_tests 0 -Name: nodejs-form-data -Version: 0.2.0 -Release: 2 -Summary: A module to create readable "multipart/form-data" streams -License: MIT -URL: https://github.com/form-data/form-data -Source0: https://github.com/form-data/form-data/archive/0.2/form-data-%{version}.tar.gz -Patch1: CVE-2025-7783-Fix-Switch-to-using-crypto-random-for-boundary-values.patch - - -BuildArch: noarch -ExclusiveArch: %{nodejs_arches} noarch -ExclusiveArch: %{ix86} x86_64 %{arm} noarch -BuildRequires: nodejs-packaging -BuildRequires: npm(async) npm(combined-stream) npm(mime-types) -%if 0%{?enable_tests} -BuildRequires: npm(fake) npm(far) npm(formidable) npm(request) -%endif -%description -A module to create readable "multipart/form-data" streams. Can be used to -submit forms and file uploads to other web applications. - -%prep -%setup -q -n form-data-0.2 -%patch -P1 -p1 -%nodejs_fixdep async "^1.5.0" -%nodejs_fixdep mime-types "^2.1.7" -%nodejs_fixdep combined-stream "^1.0.5" -%build - -%install -mkdir -p %{buildroot}%{nodejs_sitelib}/form-data -cp -pr package.json lib %{buildroot}%{nodejs_sitelib}/form-data - -%check -%nodejs_symlink_deps --check -%__nodejs -e "require('./')" -%if 0%{?enable_tests} -%__nodejs test/run.js -%endif - -%files -%doc Readme.md -%license License -%{nodejs_sitelib}/form-data - -%changelog -* Tue Aug 12 2025 jinshuaiyu - 0.2.0-2 -- fix CVE-2025-7783 - -* Thu Aug 20 2020 Anan Fu - 0.2.0-1 -- package init diff --git a/nodejs-form-data.yaml b/nodejs-form-data.yaml deleted file mode 100644 index 7a01bb8..0000000 --- a/nodejs-form-data.yaml +++ /dev/null @@ -1,4 +0,0 @@ -version_control: github -src_repo: form-data/form-data -tag_prefix: "^v" -seperator: "." -- Gitee