Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Update import.sh; Imported s2n-bignum version: main/3bfe68deb9fbdaf23...#3119

Draft
manastasova wants to merge 1 commit into
aws:main from
manastasova:s2n-bignum-import-min-v2
Draft

Update import.sh; Imported s2n-bignum version: main/3bfe68deb9fbdaf23... #3119
manastasova wants to merge 1 commit into
aws:main from
manastasova:s2n-bignum-import-min-v2

Conversation

@manastasova

@manastasova manastasova commented Mar 24, 2026

Copy link
Copy Markdown
Contributor

Update s2n-bignum import.sh to only import files used by aws-lc

This PR updates third_party/s2n-bignum/import.sh to use an explicit allowlist
instead of importing the entire s2n-bignum repository minus a few directories.
Previously 705 files were imported; now only 135 are — the ones actually referenced
by crypto/fipsmodule/CMakeLists.txt, plus headers, legal files, and documentation.

Files still imported (135)

Documentation & legal (7):

  • LICENSE
  • NOTICE
  • README.md
  • SOUNDNESS.md
  • non_ct_functions.txt
  • doc/s2n_bignum_soundness.md
  • doc/s2n_bignum_soundness.svg

Headers (6):

  • include/s2n-bignum.h
  • include/s2n-bignum-c89.h
  • include/_internal_s2n_bignum.h
  • include/_internal_s2n_bignum_arm.h
  • include/_internal_s2n_bignum_x86.h
  • include/_internal_s2n_bignum_x86_att.h

x86_att README (1):

  • x86_att/README.md

Assembly — both x86_att/ and arm/ (49 x 2 = 98 files):

  • {x86_att,arm}/p256/bignum_montinv_p256.S
  • {x86_att,arm}/p256/p256_montjscalarmul.S
  • {x86_att,arm}/p256/p256_montjscalarmul_alt.S
  • {x86_att,arm}/p384/bignum_add_p384.S
  • {x86_att,arm}/p384/bignum_deamont_p384.S
  • {x86_att,arm}/p384/bignum_littleendian_6.S
  • {x86_att,arm}/p384/bignum_montinv_p384.S
  • {x86_att,arm}/p384/bignum_montmul_p384.S
  • {x86_att,arm}/p384/bignum_montmul_p384_alt.S
  • {x86_att,arm}/p384/bignum_montsqr_p384.S
  • {x86_att,arm}/p384/bignum_montsqr_p384_alt.S
  • {x86_att,arm}/p384/bignum_neg_p384.S
  • {x86_att,arm}/p384/bignum_nonzero_6.S
  • {x86_att,arm}/p384/bignum_sub_p384.S
  • {x86_att,arm}/p384/bignum_tomont_p384.S
  • {x86_att,arm}/p384/p384_montjdouble.S
  • {x86_att,arm}/p384/p384_montjdouble_alt.S
  • {x86_att,arm}/p384/p384_montjscalarmul.S
  • {x86_att,arm}/p384/p384_montjscalarmul_alt.S
  • {x86_att,arm}/p521/bignum_add_p521.S
  • {x86_att,arm}/p521/bignum_fromlebytes_p521.S
  • {x86_att,arm}/p521/bignum_inv_p521.S
  • {x86_att,arm}/p521/bignum_mul_p521.S
  • {x86_att,arm}/p521/bignum_mul_p521_alt.S
  • {x86_att,arm}/p521/bignum_neg_p521.S
  • {x86_att,arm}/p521/bignum_sqr_p521.S
  • {x86_att,arm}/p521/bignum_sqr_p521_alt.S
  • {x86_att,arm}/p521/bignum_sub_p521.S
  • {x86_att,arm}/p521/bignum_tolebytes_p521.S
  • {x86_att,arm}/p521/p521_jdouble.S
  • {x86_att,arm}/p521/p521_jdouble_alt.S
  • {x86_att,arm}/p521/p521_jscalarmul.S
  • {x86_att,arm}/p521/p521_jscalarmul_alt.S
  • {x86_att,arm}/curve25519/bignum_madd_n25519.S
  • {x86_att,arm}/curve25519/bignum_madd_n25519_alt.S
  • {x86_att,arm}/curve25519/bignum_mod_n25519.S
  • {x86_att,arm}/curve25519/bignum_neg_p25519.S
  • {x86_att,arm}/curve25519/edwards25519_decode.S
  • {x86_att,arm}/curve25519/edwards25519_decode_alt.S
  • {x86_att,arm}/curve25519/edwards25519_encode.S
  • {x86_att,arm}/curve25519/edwards25519_scalarmulbase.S
  • {x86_att,arm}/curve25519/edwards25519_scalarmulbase_alt.S
  • {x86_att,arm}/curve25519/edwards25519_scalarmuldouble.S
  • {x86_att,arm}/curve25519/edwards25519_scalarmuldouble_alt.S
  • {x86_att,arm}/sha3/sha3_keccak_f1600.S
  • {x86_att,arm}/sha3/sha3_keccak4_f1600_alt.S

Assembly — x86_att/ only (6 files):

  • x86_att/p384/bignum_deamont_p384_alt.S
  • x86_att/p384/bignum_tomont_p384_alt.S
  • x86_att/curve25519/curve25519_x25519.S
  • x86_att/curve25519/curve25519_x25519_alt.S
  • x86_att/curve25519/curve25519_x25519base.S
  • x86_att/curve25519/curve25519_x25519base_alt.S

Assembly — arm/ only (20 files):

  • arm/curve25519/curve25519_x25519_byte.S
  • arm/curve25519/curve25519_x25519_byte_alt.S
  • arm/curve25519/curve25519_x25519base_byte.S
  • arm/curve25519/curve25519_x25519base_byte_alt.S
  • arm/fastmul/bignum_emontredc_8n.S
  • arm/fastmul/bignum_kmul_16_32.S
  • arm/fastmul/bignum_kmul_32_64.S
  • arm/fastmul/bignum_ksqr_16_32.S
  • arm/fastmul/bignum_ksqr_32_64.S
  • arm/generic/bignum_copy_row_from_table.S
  • arm/generic/bignum_copy_row_from_table_16.S
  • arm/generic/bignum_copy_row_from_table_32.S
  • arm/generic/bignum_copy_row_from_table_8n.S
  • arm/generic/bignum_ge.S
  • arm/generic/bignum_mul.S
  • arm/generic/bignum_optsub.S
  • arm/generic/bignum_sqr.S
  • arm/sha3/sha3_keccak2_f1600.S
  • arm/sha3/sha3_keccak4_f1600_alt2.S
  • arm/sha3/sha3_keccak_f1600_alt.S

Newly added files (7)

These files were not previously imported but are now included (new to the import
script, or newly added upstream since the last import):

  • SOUNDNESS.md
  • doc/s2n_bignum_soundness.md
  • doc/s2n_bignum_soundness.svg
  • include/Makefile
  • include/c89.sed
  • include/c89.txt
  • x86_att/sha3/sha3_keccak4_f1600_alt.S

Note: include/Makefile, include/c89.sed, and include/c89.txt are included
because the script copies the entire include/ directory via cp -rH.

Files no longer imported (577)

Click to expand full list of 577 removed files

Root files (2):

  • CODE_OF_CONDUCT.md
  • CONTRIBUTING.md

arm/ build/meta files (3):

  • arm/INSTRUCTION.md
  • arm/Makefile
  • arm/allowed_asm

arm/curve25519/ (20 files removed):

  • arm/curve25519/Makefile
  • arm/curve25519/bignum_add_p25519.S
  • arm/curve25519/bignum_cmul_p25519.S
  • arm/curve25519/bignum_double_p25519.S
  • arm/curve25519/bignum_inv_p25519.S
  • arm/curve25519/bignum_invsqrt_p25519.S
  • arm/curve25519/bignum_invsqrt_p25519_alt.S
  • arm/curve25519/bignum_mod_m25519_4.S
  • arm/curve25519/bignum_mod_n25519_4.S
  • arm/curve25519/bignum_mod_p25519_4.S
  • arm/curve25519/bignum_mul_p25519.S
  • arm/curve25519/bignum_mul_p25519_alt.S
  • arm/curve25519/bignum_optneg_p25519.S
  • arm/curve25519/bignum_sqr_p25519.S
  • arm/curve25519/bignum_sqr_p25519_alt.S
  • arm/curve25519/bignum_sqrt_p25519.S
  • arm/curve25519/bignum_sqrt_p25519_alt.S
  • arm/curve25519/bignum_sub_p25519.S
  • arm/curve25519/curve25519_ladderstep.S
  • arm/curve25519/curve25519_ladderstep_alt.S
  • arm/curve25519/curve25519_pxscalarmul.S
  • arm/curve25519/curve25519_pxscalarmul_alt.S
  • arm/curve25519/curve25519_x25519.S
  • arm/curve25519/curve25519_x25519_alt.S
  • arm/curve25519/curve25519_x25519base.S
  • arm/curve25519/curve25519_x25519base_alt.S
  • arm/curve25519/edwards25519_epadd.S
  • arm/curve25519/edwards25519_epadd_alt.S
  • arm/curve25519/edwards25519_epdouble.S
  • arm/curve25519/edwards25519_epdouble_alt.S
  • arm/curve25519/edwards25519_pdouble.S
  • arm/curve25519/edwards25519_pdouble_alt.S
  • arm/curve25519/edwards25519_pepadd.S
  • arm/curve25519/edwards25519_pepadd_alt.S

arm/fastmul/ (14 files removed):

  • arm/fastmul/Makefile
  • arm/fastmul/bignum_emontredc_8n_cdiff.S
  • arm/fastmul/bignum_mul_4_8.S
  • arm/fastmul/bignum_mul_4_8_alt.S
  • arm/fastmul/bignum_mul_6_12.S
  • arm/fastmul/bignum_mul_6_12_alt.S
  • arm/fastmul/bignum_mul_8_16.S
  • arm/fastmul/bignum_mul_8_16_alt.S
  • arm/fastmul/bignum_sqr_4_8.S
  • arm/fastmul/bignum_sqr_4_8_alt.S
  • arm/fastmul/bignum_sqr_6_12.S
  • arm/fastmul/bignum_sqr_6_12_alt.S
  • arm/fastmul/bignum_sqr_8_16.S
  • arm/fastmul/bignum_sqr_8_16_alt.S
  • arm/fastmul/unopt/bignum_emontredc_8n_base.S
  • arm/fastmul/unopt/bignum_emontredc_8n_cdiff_base.S
  • arm/fastmul/unopt/bignum_mul_8_16_base.S
  • arm/fastmul/unopt/bignum_sqr_8_16_base.S

arm/generic/ (58 files removed):

  • arm/generic/Makefile
  • arm/generic/bignum_add.S
  • arm/generic/bignum_amontifier.S
  • arm/generic/bignum_amontmul.S
  • arm/generic/bignum_amontredc.S
  • arm/generic/bignum_amontsqr.S
  • arm/generic/bignum_bitfield.S
  • arm/generic/bignum_bitsize.S
  • arm/generic/bignum_cdiv.S
  • arm/generic/bignum_cdiv_exact.S
  • arm/generic/bignum_cld.S
  • arm/generic/bignum_clz.S
  • arm/generic/bignum_cmadd.S
  • arm/generic/bignum_cmnegadd.S
  • arm/generic/bignum_cmod.S
  • arm/generic/bignum_cmul.S
  • arm/generic/bignum_coprime.S
  • arm/generic/bignum_copy.S
  • arm/generic/bignum_ctd.S
  • arm/generic/bignum_ctz.S
  • arm/generic/bignum_demont.S
  • arm/generic/bignum_digit.S
  • arm/generic/bignum_digitsize.S
  • arm/generic/bignum_divmod10.S
  • arm/generic/bignum_emontredc.S
  • arm/generic/bignum_eq.S
  • arm/generic/bignum_even.S
  • arm/generic/bignum_gt.S
  • arm/generic/bignum_iszero.S
  • arm/generic/bignum_le.S
  • arm/generic/bignum_lt.S
  • arm/generic/bignum_madd.S
  • arm/generic/bignum_modadd.S
  • arm/generic/bignum_moddouble.S
  • arm/generic/bignum_modexp.S
  • arm/generic/bignum_modifier.S
  • arm/generic/bignum_modinv.S
  • arm/generic/bignum_modoptneg.S
  • arm/generic/bignum_modsub.S
  • arm/generic/bignum_montifier.S
  • arm/generic/bignum_montmul.S
  • arm/generic/bignum_montredc.S
  • arm/generic/bignum_montsqr.S
  • arm/generic/bignum_muladd10.S
  • arm/generic/bignum_mux.S
  • arm/generic/bignum_mux16.S
  • arm/generic/bignum_negmodinv.S
  • arm/generic/bignum_nonzero.S
  • arm/generic/bignum_normalize.S
  • arm/generic/bignum_odd.S
  • arm/generic/bignum_of_word.S
  • arm/generic/bignum_optadd.S
  • arm/generic/bignum_optneg.S
  • arm/generic/bignum_optsubadd.S
  • arm/generic/bignum_pow2.S
  • arm/generic/bignum_shl_small.S
  • arm/generic/bignum_shr_small.S
  • arm/generic/bignum_sub.S
  • arm/generic/word_bytereverse.S
  • arm/generic/word_clz.S
  • arm/generic/word_ctz.S
  • arm/generic/word_divstep59.S
  • arm/generic/word_max.S
  • arm/generic/word_min.S
  • arm/generic/word_negmodinv.S
  • arm/generic/word_popcount.S
  • arm/generic/word_recip.S

arm/mlkem/ (entire directory, 11 files):

  • arm/mlkem/Makefile
  • arm/mlkem/mlkem_basemul_k2.S .. arm/mlkem/mlkem_tomont.S

arm/p256/ (25 files removed, 3 kept):

  • arm/p256/Makefile
  • arm/p256/bignum_add_p256.S
  • arm/p256/bignum_bigendian_4.S
  • arm/p256/bignum_cmul_p256.S
  • arm/p256/bignum_deamont_p256.S
  • arm/p256/bignum_demont_p256.S
  • arm/p256/bignum_double_p256.S
  • arm/p256/bignum_half_p256.S
  • arm/p256/bignum_inv_p256.S
  • arm/p256/bignum_littleendian_4.S
  • arm/p256/bignum_mod_n256.S
  • arm/p256/bignum_mod_n256_4.S
  • arm/p256/bignum_mod_p256.S
  • arm/p256/bignum_mod_p256_4.S
  • arm/p256/bignum_montmul_p256.S
  • arm/p256/bignum_montmul_p256_alt.S
  • arm/p256/bignum_montsqr_p256.S
  • arm/p256/bignum_montsqr_p256_alt.S
  • arm/p256/bignum_mux_4.S
  • arm/p256/bignum_neg_p256.S
  • arm/p256/bignum_nonzero_4.S
  • arm/p256/bignum_optneg_p256.S
  • arm/p256/bignum_sub_p256.S
  • arm/p256/bignum_tomont_p256.S
  • arm/p256/bignum_triple_p256.S
  • arm/p256/p256_montjadd.S
  • arm/p256/p256_montjadd_alt.S
  • arm/p256/p256_montjdouble.S
  • arm/p256/p256_montjdouble_alt.S
  • arm/p256/p256_montjmixadd.S
  • arm/p256/p256_montjmixadd_alt.S
  • arm/p256/p256_scalarmul.S
  • arm/p256/p256_scalarmul_alt.S
  • arm/p256/p256_scalarmulbase.S
  • arm/p256/p256_scalarmulbase_alt.S
  • arm/p256/unopt/README.md
  • arm/p256/unopt/bignum_montmul_p256_base.S
  • arm/p256/unopt/bignum_montsqr_p256_base.S
  • arm/p256/unopt/p256_montjadd.S
  • arm/p256/unopt/p256_montjdouble.S

arm/p384/ (19 files removed, 16 kept):

  • arm/p384/Makefile
  • arm/p384/bignum_bigendian_6.S
  • arm/p384/bignum_cmul_p384.S
  • arm/p384/bignum_demont_p384.S
  • arm/p384/bignum_double_p384.S
  • arm/p384/bignum_half_p384.S
  • arm/p384/bignum_inv_p384.S
  • arm/p384/bignum_mod_n384.S
  • arm/p384/bignum_mod_n384_6.S
  • arm/p384/bignum_mod_p384.S
  • arm/p384/bignum_mod_p384_6.S
  • arm/p384/bignum_mux_6.S
  • arm/p384/bignum_optneg_p384.S
  • arm/p384/bignum_triple_p384.S
  • arm/p384/p384_montjadd.S
  • arm/p384/p384_montjadd_alt.S
  • arm/p384/p384_montjmixadd.S
  • arm/p384/p384_montjmixadd_alt.S
  • arm/p384/unopt/bignum_montmul_p384_base.S
  • arm/p384/unopt/bignum_montsqr_p384_base.S
  • arm/p384/unopt/p384_montjadd.S
  • arm/p384/unopt/p384_montjdouble.S

arm/p521/ (18 files removed, 14 kept):

  • arm/p521/Makefile
  • arm/p521/bignum_cmul_p521.S
  • arm/p521/bignum_deamont_p521.S
  • arm/p521/bignum_demont_p521.S
  • arm/p521/bignum_double_p521.S
  • arm/p521/bignum_half_p521.S
  • arm/p521/bignum_mod_n521_9.S
  • arm/p521/bignum_mod_p521_9.S
  • arm/p521/bignum_montmul_p521.S
  • arm/p521/bignum_montmul_p521_alt.S
  • arm/p521/bignum_montsqr_p521.S
  • arm/p521/bignum_montsqr_p521_alt.S
  • arm/p521/bignum_optneg_p521.S
  • arm/p521/bignum_tomont_p521.S
  • arm/p521/bignum_triple_p521.S
  • arm/p521/p521_jadd.S
  • arm/p521/p521_jadd_alt.S
  • arm/p521/p521_jmixadd.S
  • arm/p521/p521_jmixadd_alt.S
  • arm/p521/unopt/bignum_montmul_p521_base.S
  • arm/p521/unopt/bignum_montsqr_p521_base.S
  • arm/p521/unopt/bignum_mul_p521_base.S
  • arm/p521/unopt/bignum_sqr_p521_base.S

arm/secp256k1/ (entire directory, 28 files)

arm/sha3/ (3 files removed, 5 kept):

  • arm/sha3/Makefile
  • arm/sha3/sha3_keccak2_f1600_alt.S
  • arm/sha3/sha3_keccak4_f1600.S

arm/sm2/ (entire directory, 31 files)

arm/tutorial/ (entire directory, 31 files)

x86_att/ build files (2):

  • x86_att/Makefile
  • x86_att/attrofy.sed

x86_att/curve25519/ (22 files removed, 15 kept)

x86_att/fastmul/ (entire directory, 17 files)

x86_att/generic/ (entire directory, 70 files)

x86_att/p256/ (entire directory minus 3 kept, 41 files removed)

x86_att/p384/ (22 files removed, 14 kept)

x86_att/p521/ (20 files removed, 14 kept)

x86_att/secp256k1/ (entire directory, 30 files)

x86_att/sm2/ (entire directory, 32 files)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.

codecov-commenter commented Mar 24, 2026
edited
Loading

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.21%. Comparing base (666d5e3) to head (9382970).
⚠️ Report is 127 commits behind head on main.

Additional details and impacted files
@@ Coverage Diff @@
## main #3119 +/- ##
==========================================
- Coverage 78.22% 78.21% -0.01% 
==========================================
 Files 689 689 
 Lines 122073 122073 
 Branches 17030 17030 
==========================================
- Hits 95491 95483 -8 
- Misses 25677 25686 +9 
+ Partials 905 904 -1 

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /