-# Object files
-*.o
-*.obj
-
-# editor artefacts
-*.swp
-.#*
-\#*#
-*~
+# Ignore editor artefacts
/.dir-locals.el
# Top level excludes
-/Makefile.orig
+/Makefile.in
/Makefile
/MINFO
/TABLE
-/*.a
-/*.pc
/rehash.time
/inc.*
/makefile.*
/out.*
/tmp.*
/configdata.pm
+/builddata.pm
+/installdata.pm
-**/Makefile
-
-/test/*.ss
-/test/*.srl
-/test/.rnd
-/test/test*.pem
-/test/newkey.pem
-/test/*.log
-
-# Certificate symbolic links
-*.0
+# Exporters
+/*.pc
+/OpenSSLConfig*.cmake
+/exporters/*.pc
+/exporters/OpenSSLConfig*.cmake
# Links under apps
/apps/CA.pl
+/apps/tsget
+/apps/tsget.pl
/apps/md4.c
-
# Auto generated headers
/crypto/buildinf.h
-/crypto/opensslconf.h
+/include/crypto/*_conf.h
+/include/openssl/asn1.h
+/include/openssl/asn1t.h
+/include/openssl/bio.h
+/include/openssl/cmp.h
+/include/openssl/cms.h
+/include/openssl/conf.h
+/include/openssl/configuration.h
+/include/openssl/crmf.h
+/include/openssl/crypto.h
+/include/openssl/ct.h
+/include/openssl/err.h
+/include/openssl/ess.h
+/include/openssl/fipskey.h
+/include/openssl/lhash.h
+/include/openssl/ocsp.h
+/include/openssl/opensslv.h
+/include/openssl/pkcs12.h
+/include/openssl/pkcs7.h
+/include/openssl/safestack.h
+/include/openssl/srp.h
+/include/openssl/ssl.h
+/include/openssl/ui.h
+/include/openssl/x509.h
+/include/openssl/x509v3.h
+/include/openssl/x509_acert.h
+/include/openssl/x509_vfy.h
+/include/openssl/core_names.h
+/include/internal/param_names.h
-# Auto generated assembly language source files
-*.s
-!/crypto/*/asm/*.s
-/crypto/arm*.S
-/crypto/*/*.S
-*.asm
-!/crypto/*/asm/*.asm
+# Auto generated parameter name files
+/crypto/params_idx.c
+
+# Auto generated doc files
+doc/man1/openssl-*.pod
+
+# Auto generated der files
+providers/common/der/der_digests_gen.c
+providers/common/der/der_dsa_gen.c
+providers/common/der/der_ec_gen.c
+providers/common/der/der_ecx_gen.c
+providers/common/der/der_rsa_gen.c
+providers/common/der/der_wrap_gen.c
+providers/common/der/der_sm2_gen.c
+providers/common/include/prov/der_dsa.h
+providers/common/include/prov/der_ec.h
+providers/common/include/prov/der_ecx.h
+providers/common/include/prov/der_rsa.h
+providers/common/include/prov/der_digests.h
+providers/common/include/prov/der_wrap.h
+providers/common/include/prov/der_sm2.h
+
+# error code files
+/crypto/err/openssl.txt.old
+/engines/e_afalg.txt.old
+/engines/e_capi.txt.old
+/engines/e_dasync.txt.old
+/engines/e_ossltest.txt.old
# Executables
/apps/openssl
/test/sha256t
/test/sha512t
/test/gost2814789t
+/test/ssltest_old
/test/*test
/test/fips_aesavs
/test/fips_desmovs
/test/fips_ecdsavs
/test/fips_rngvs
/test/fips_test_suite
-*.so*
-*.dylib*
-*.dll*
-*.exe
-# Exceptions
-!/test/bctest
-!/crypto/des/times/486-50.sol
+/test/ssltest_old
+/test/x509aux
+/test/v3ext
+/test/versions
+/test/ossl_shim/ossl_shim
+/test/rsa_complex
+/test/confdump
+/test/bio_prefix_text
+/test/evp_extra_test2
+/test/evp_pkey_ctx_new_from_name
+/test/threadstest_fips
+/test/timing_load_creds
+
+# Certain files that get created by tests on the fly
+/test-runs
+/test/buildtest_*
+/test/provider_internal_test.cnf
+/test/fipsmodule.cnf
+/providers/fipsmodule.cnf
+
+# Fuzz stuff.
+# Anything without an extension is an executable on Unix, so we keep files
+# with extensions. And we keep the corpora subddir versioned as well.
+# Anything more generic with extensions that should be ignored will be taken
+# care of by general ignores for those extensions (*.o, *.obj, *.exe, ...)
+/fuzz/*
+!/fuzz/README*
+!/fuzz/corpora
+!/fuzz/*.*
# Misc auto generated files
-/include/openssl/opensslconf.h
+/doc/man7/openssl_user_macros.pod
/tools/c_rehash
-/crypto/**/lib
-/engines/**/lib
-/ssl/**/lib
-Makefile.save
-*.bak
+/tools/c_rehash.pl
+/util/shlib_wrap.sh
+/util/wrap.pl
+/util/quicserver
/tags
/TAGS
-cscope.out
-*.d
-/crypto.map
-/ssl.map
+*.map
+*.ld
+/apps/progs.c
+/apps/progs.h
-# Windows
+# Windows (legacy)
/tmp32
/tmp32.dbg
/tmp32dll
/test/fips_shatest.c
/test/fips_test_suite.c
/test/shatest.c
+
+# Generated docs directories
+/doc/html
+/doc/man
+
+##### Generic patterns
+# Auto generated assembly language source files
+*.s
+!/crypto/*/asm/*.s
+/crypto/arm*.S
+/crypto/*/*.S
+*.asm
+!/crypto/*/asm/*.asm
+
+# Object files
+*.o
+*.obj
+
+# editor artefacts
+*.swp
+.#*
+\#*#
+*~
+
+# Certificate symbolic links
+*.0
+
+# All kinds of libraries and executables
+*.a
+*.so
+*.so.*
+*.dylib
+*.dylib.*
+*.dll
+*.dll.*
+*.exe
+*.pyc
+*.exp
+*.lib
+*.pdb
+*.tds
+*.ilk
+*.def
+*.rc
+*.res
+
+# Misc generated stuff
+Makefile.save
+/crypto/**/lib
+/engines/**/lib
+/ssl/**/lib
+*.bak
+cscope.*
+*.d
+!.ctags.d
+*.d.tmp
+pod2htmd.tmp
+MAKE0[0-9][0-9][0-9].@@@
+
+# Windows manifest files
+*.manifest
+doc-nits
+
+# LSP (Language Server Protocol) support
+.cache/
+compile_commands.json