Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
721 commits
Select commit Hold shift + click to select a range
49480f1
upstream: Add 'invaliduser' penalty to PerSourcePenalties, which is
daztucker Dec 16, 2025
f878d7c
upstream: Plug leak in ssh_digest_memory on error path.
daztucker Dec 16, 2025
3ab346a
upstream: fix markup, .CM -> .Cm
jonathangray Dec 18, 2025
4c9de15
upstream: new sentence, new line
jonathangray Dec 18, 2025
4e0f2de
upstream: detect invalid sshd_config Subsystem directives inside
djmdjm Dec 19, 2025
831e6db
upstream: don't crash at connection time if the main sshd_config
djmdjm Dec 19, 2025
81e5bb8
upstream: check that invalid subsystem directives inside Match
djmdjm Dec 19, 2025
345892b
upstream: regression test for bz3906: sshd crashing at connection
djmdjm Dec 19, 2025
0b98be7
upstream: correctly check subsystem command is not the empty string
djmdjm Dec 19, 2025
b652322
upstream: typo in comment
djmdjm Dec 19, 2025
daf6bdd
upstream: add a "ssh -O channels user@host" multiplexing command to
djmdjm Dec 22, 2025
aaac8c6
upstream: Don't misuse the sftp limits extension's open-handles
djmdjm Dec 22, 2025
5166b6c
upstream: When certificate support was added to OpenSSH,
djmdjm Dec 22, 2025
adca2f4
upstream: don't try to test webauthn signatures. Nothing in OpenSSH
djmdjm Dec 22, 2025
ecdf9b9
upstream: regression tests for certificates with empty principals
djmdjm Dec 22, 2025
dfd710e
upstream: return 0 in void function; spotted by clang -Wextra
djmdjm Dec 22, 2025
09daf2a
upstream: correctly quote wildcard host certificate principal name,
djmdjm Dec 22, 2025
6eafc52
Update ssh-agent.1
LudovicRousseau Dec 27, 2025
55b6b16
upstream: Add sshbuf_consume_upto_child(), to similify particular
djmdjm Dec 29, 2025
ca313fe
upstream: Enforce maximum packet/block limit during
djmdjm Dec 30, 2025
dd49a87
upstream: Remove bug compatibility for implementations that don't
djmdjm Dec 30, 2025
b9c3187
upstream: unit tests for sshbuf_consume_upto_child()
djmdjm Dec 30, 2025
5f2bc9c
upstream: avoid possible NULL deref if
djmdjm Dec 30, 2025
ea367b4
upstream: test the right thing, doofus
djmdjm Dec 30, 2025
d41503a
add GitHub Copilot files
tgauth Jan 9, 2026
1053ed3
update instructions to branch off of current branch instead of latest…
tgauth Jan 9, 2026
2955382
remove direct references to scripts for mcp tools
tgauth Jan 9, 2026
36c4826
fix default log location in tool
tgauth Jan 9, 2026
2ffcb0e
create tool for merge process prerequisites
tgauth Jan 9, 2026
4984b21
replace more direct scripts references to mcp tool references
tgauth Jan 9, 2026
63ac1ac
update mcp server name
tgauth Jan 9, 2026
644bbf5
fix merge prereq tool
tgauth Jan 9, 2026
1d8b201
update merge prereq tool
tgauth Jan 9, 2026
aa02282
update instructions
tgauth Jan 9, 2026
2bbb98e
update instructions
tgauth Jan 9, 2026
123f8e2
refactor tool to workaround io/buffer issues when invoked via MCP
tgauth Jan 15, 2026
09f0fd6
update instructions to use mcp tool to read build logs
tgauth Jan 15, 2026
59178e8
update build verfication script to check correct location for artifacts
tgauth Jan 15, 2026
2985579
fix typo
tgauth Jan 15, 2026
76775b2
fix tool to parse build log for success/failure and update instructions
tgauth Jan 23, 2026
e379310
add merge prompt file
tgauth Jan 23, 2026
5b55ec2
update tools
tgauth Jan 23, 2026
950bb1b
update instructions to build only after batch of commits with a CI run
tgauth Jan 23, 2026
ead71d7
update prereq tool to use start-job with git cmd
tgauth Jan 23, 2026
071bfba
update build instructions with paths.targets info
tgauth Jan 23, 2026
332176b
refine instructions
tgauth Jan 23, 2026
0bb51cd
tweak instructions
tgauth Jan 23, 2026
29ad116
update tool
tgauth Jan 23, 2026
a1072a6
fix bug in tool
tgauth Jan 30, 2026
c19ad3f
update instructions
tgauth Jan 30, 2026
2d2368c
add instructions for communication expectations and examples
tgauth Feb 20, 2026
179d41e
update instructions and tools to clarify end commit expectations
tgauth Feb 20, 2026
7e1ea03
add instructions around addressing compiler warnings
tgauth Feb 20, 2026
c19afda
add tool to wrap GH commands to check exit code
tgauth Mar 6, 2026
8a16638
add tool to get context during complex conflicts
tgauth Mar 6, 2026
7801561
Merge branch 'PowerShell:latestw_all' into latestw_all_copilot
tgauth Mar 9, 2026
5f24965
add scratch branch instructions
tgauth Mar 17, 2026
232775d
refine instructions
tgauth Apr 15, 2026
f06d9c8
add tool to invoke E2E CI
tgauth Apr 16, 2026
440585f
Merge commit 'f3d465530e75cb6c02e2cde1d15e6c4bb51ebfd9' into scratch-…
tgauth Apr 20, 2026
ff950b7
Fix unittest benchmark compatibility after batch 1 merge
tgauth Apr 20, 2026
a0592b9
Merge commit '1ec5b39f1f673beac039bb42c98a11aa2b08a0b2' into scratch-…
tgauth Apr 20, 2026
ff030eb
Merge commit '849c2fd894aa87a7e40c71e8d5bda5392b1205be' into scratch-…
tgauth Apr 21, 2026
b909df4
Merge commit '46e52fdae08b89264a0b23f94391c2bf637def34' into scratch-…
tgauth Apr 21, 2026
49fcafb
Merge commit '9b50cb171b5c56184ce6fa3994ce62f9882d2daf' into scratch-…
tgauth Apr 21, 2026
da2f4b7
Merge commit 'c627b468d3b99e487e2b24c90958ae57e633d681' into scratch-…
tgauth Apr 21, 2026
1fce4c7
Merge commit 'b5b405fee7f3e79d44e2d2971a4b6b4cc53f112e' into scratch-…
tgauth Apr 21, 2026
ae357ac
Merge commit 'e048230106fb3f5e7cc07abc311c6feb5f52fd05' into scratch-…
tgauth Apr 21, 2026
98a11e9
Merge commit '6ab8133c067a8e91ba69ce7ca04f95b50f2f2d7b' into scratch-…
tgauth May 4, 2026
9640f12
Build fixes for batch 9 (V_10_3_P1 merge): misc-agent.c on Windows
tgauth May 4, 2026
0a17550
Merge commit '7a7cc3cf721fe7fe9f4925d92bb7c694b8550a7f' into scratch-…
tgauth May 4, 2026
f272c83
Merge commit '27861e9b15151898841097c14ee974c026093131' into scratch-…
tgauth May 4, 2026
41796c4
Merge commit '61525ba967ac1bb7394ea0792aa6030bcbbad049' into scratch-…
tgauth May 4, 2026
d5eef0f
Merge commit 'd2480827b3ef6ec119965822afdff35d734b2dee' into scratch-…
tgauth May 4, 2026
b21de14
Merge commit '5fd6ef297dec23e3574646b6334087131230d0a6' into scratch-…
tgauth May 4, 2026
9b2af69
Merge commit '93e904a673a632604525fdc98b940b7996f1ce54' into scratch-…
tgauth May 4, 2026
df32151
Remove ssh-dss.c from libssh.vcxproj after upstream DSA removal
tgauth May 4, 2026
1b4a183
Merge commit '7cc8e150d51a4545b86d996692b541419b35d1a3' into scratch-…
tgauth May 4, 2026
f18dcef
Merge commit '755c3d082e59e6884f28d30e6333a1444e9173d1' into scratch-…
tgauth May 7, 2026
61b7aad
Merge commit '086369736a9496b39af0d9f09443fa81b59b7f05' into scratch-…
tgauth May 7, 2026
074965e
Merge commit '1511f113a27d8aafe080aa6493cb3c0cf2b5abe0' into scratch-…
tgauth May 7, 2026
5e6a434
Define HAVE_DIRFD=1 on Windows to skip upstream's dirfd() compat shim
tgauth May 7, 2026
0fa4cea
Merge commit 'f5726215957bb34e18bb872d527845c2f64e2389' into scratch-…
tgauth May 7, 2026
1a0da4a
Merge commit '3357bf2fe2d11b6ed4465c1ed2871bd1099cbbc5' into scratch-…
tgauth May 7, 2026
a272922
Merge commit '140ba45895de8ebfb3e2517b0ddee58729979c29' into scratch-…
tgauth May 7, 2026
57d3e67
Merge commit 'ddfb78a15f57a33427d462b9c401de5c8e6799da' into scratch-…
tgauth May 7, 2026
fec9e96
Merge commit 'ee1d31781cf0d292a50b4df4cb8cb6ffcbfbe9af' into scratch-…
tgauth May 7, 2026
b947e8c
Merge commit 'c404686c17daeda7e95ca6fc14c8a4a570cf975d' into scratch-…
tgauth May 7, 2026
aab3d51
Merge commit 'fc8c56ade809f66f7df4b5153a4d92593631c12a' into scratch-…
tgauth May 7, 2026
8803fca
Merge commit '1a9b1cfa4e8b807c7f82fdba8f730c2abdbba071' into scratch-…
tgauth May 7, 2026
deb61d8
Merge commit '9d9a2c0369419f3b4952e597db7b8696f54e7f3a' into scratch-…
tgauth May 11, 2026
b6236e7
Merge commit '6fb728df50c1afd338cb0223a84ce24579577eff' into scratch-…
tgauth May 11, 2026
9837b98
Merge commit '750f1867476bda36879f69e25e8f52cb45c58807' into scratch-…
tgauth May 11, 2026
e68bc61
Merge commit '0adb2db25eff3fe1c90c55654387ae1e4e18a396' into scratch-…
tgauth May 11, 2026
1f6e1df
Merge commit 'b71773c20d566fa5dcaf9edf3139bdcb3f2c4bc2' into scratch-…
tgauth May 11, 2026
264c3c9
Merge commit 'df22801b3f0ae245f825cf9c9dbb4543e41a7c5c' into scratch-…
tgauth May 11, 2026
cd453ec
Merge commit '49a2412ad23162e44be9e0b2cb12f6daf6b666d7' into scratch-…
tgauth May 11, 2026
5477148
Merge commit 'd1d5c8b9b8de8283618c18d0dafdec6a209911cc' into scratch-…
tgauth May 11, 2026
4aa7fe7
Merge commit '6d192645a613aa814d51050b0458f37265b90d6c' into scratch-…
tgauth May 11, 2026
39ca8b2
Merge commit 'de25e739781c4c09d20abd410f50f0a6f192dc72' into scratch-…
tgauth May 11, 2026
491e8d5
Merge commit '450a8a1df1577ddbe68fe8da1fb8514d3781ef32' into scratch-…
tgauth May 11, 2026
c7f1d68
Merge commit '2b2a7a2a0d70023b439080bb2770ff36522dbea8' into scratch-…
tgauth May 11, 2026
6c769a4
Merge commit '24889a33071086b6f1f62568b0c2bd0a4955ac49' into scratch-…
tgauth May 11, 2026
7ecc1a1
Merge commit '7674c03caed80cb3565d14690c92068a14051967' into scratch-…
tgauth May 11, 2026
638a244
Merge commit '3e11478f585408888defa56fa47e8dc6567378d0' into scratch-…
tgauth May 11, 2026
9fe3173
Merge commit '216824172724a50a4a75439fb2b4b8edccf5b733' into scratch-…
tgauth May 11, 2026
ade692e
Merge commit '140bae1df2b7246bb43439d039bf994159973585' into scratch-…
tgauth May 11, 2026
768f37b
Merge commit 'e18983d03ab969e2f12485d5c0ee61e6d745a649' into scratch-…
tgauth May 11, 2026
ea75f43
Merge commit 'b12d4ab1e16f57c6c348b483b1dbdd4530aaaddd' into scratch-…
tgauth May 11, 2026
a561e4e
Merge commit '3a61f5ed66231881bee432c7e7c6add066c086af' into scratch-…
tgauth May 11, 2026
db2bbd1
Merge commit '73ef0563a59f90324f8426c017f38e20341b555f' into scratch-…
tgauth May 11, 2026
38a374e
Merge commit '203bb886797677aa5d61b57be83cfdc1b634bc9c' into scratch-…
tgauth May 11, 2026
d159953
Merge commit 'a22ff3c6f11edd00c19981f9cb85d3b25d305a56' into scratch-…
tgauth May 11, 2026
edadcc2
Merge commit '5530e5f83b3cd3425ea3dbab02da15140befdd91' into scratch-…
tgauth May 11, 2026
d19fcea
Merge commit '5d415897ac04e237f1fa73b9dcb9ba8fb3ac812b' into scratch-…
tgauth May 11, 2026
64f8301
Merge commit '930a45ee759728c8ba711c45a2a985b8191bd297' into scratch-…
tgauth May 11, 2026
a9f4c39
Merge commit '2827b6ac304ded8f99e8fbc12e7299133fadb2c2' into scratch-…
tgauth May 11, 2026
c4fce09
Merge commit 'dd800444943bd64913507f6005586136d49f63db' into scratch-…
tgauth May 11, 2026
8fb32ce
Merge commit '5f761cdb2331a12318bde24db5ca84ee144a51d1' into scratch-…
tgauth May 11, 2026
7f10814
Merge commit '688fa02728f2efbf18388bc1a8e94e7ba7ee4f11' into scratch-…
tgauth May 12, 2026
607500d
Merge commit '8a9384de483b8fb69a800e0347273686a5715fc3' into scratch-…
tgauth May 12, 2026
b7ee7fa
Merge commit '700205bd861c25cc7564010cf63d984d8db5098a' into scratch-…
tgauth May 12, 2026
7086f58
Merge commit '0b17d564cfae82f2a52e9b4d588657da47ea4e43' into scratch-…
tgauth May 12, 2026
f141cbb
Merge commit '83d3ffc0fc0f5e4473ab43f0d42a1cf9497ce0b5' into scratch-…
tgauth May 12, 2026
2c6d3eb
Merge commit 'b28e91aff80fd24341de8cb3c34dc454d6b75228' into scratch-…
tgauth May 12, 2026
840b8f3
Merge commit '29cf521486bf97ab9de5b9b356f812107e0671bc' into scratch-…
tgauth May 12, 2026
2d04425
Merge commit 'fd10cea0f16e928ae2b52fbeadccd475d0438eb4' into scratch-…
tgauth May 12, 2026
7f1d3e0
Merge commit '0cf38d74463bcf80510e7fd1b3d9328e7d91eb00' into scratch-…
tgauth May 12, 2026
021587d
Build fix: include ssh-gss.h before monitor_wrap.h in sshd.c
tgauth May 12, 2026
2bb6af4
Merge commit '007b69f21cf9e64125b241d4411a5e47f5028aa8' into scratch-…
tgauth May 12, 2026
c3a23ff
Merge commit 'f9dc519259804702cab0fa0ca8b193a360e3ec38' into scratch-…
tgauth May 12, 2026
142a9a5
Merge commit 'e6805e2a6b33e001e1a7257b85ab779fd592a578' into scratch-…
tgauth May 12, 2026
cf620b4
Merge commit '40fb2dc4ece76c8f0c624d90a17bc1bbf47f3729' into scratch-…
tgauth May 12, 2026
1f36eeb
Merge commit '259c66aebe4e1f9d60e548f728ff74083bcccddf' into scratch-…
tgauth May 12, 2026
4a8d87b
Merge commit '1641ab8744f500f55f12155d03f1a3116aaea374' into scratch-…
tgauth Jun 22, 2026
bc793b6
Windows build fixes for PKCS#11 client migration: restore ssh-agent k…
tgauth Jun 22, 2026
1bde842
Merge branch 'latestw_all' into scratch-merge-v10.3P1-20260420
tgauth Jun 22, 2026
37641e6
Merge commit 'bf33a73c40522ce60961d4fff316a7187fb06ca0' into scratch-…
tgauth Jun 24, 2026
11bae50
Merge commit '33b4f05c8ddab24aa6c47afb313b8cbd0d4b77f4' into scratch-…
tgauth Jun 25, 2026
e43c183
Merge commit '203f5ac6cfa0e257db7509d4bb830e8a4bba6211' into scratch-…
tgauth Jun 25, 2026
0850e29
add windows #ifdef
tgauth Jun 25, 2026
e4dcaa9
Merge commit 'eedab8db12d57c4f4583f6b60e48a4ce25b47b9c' into scratch-…
tgauth Jun 25, 2026
29466ad
Merge commit 'ed1e370d84e9dc39bc31c19cca12222d991fdc6f' into scratch-…
tgauth Jun 25, 2026
b03da9a
Merge branch 'scratch-merge-v10.3P1-20260420' of https://github.com/t…
tgauth Jun 25, 2026
f3f49a6
Merge commit '550d2a4a66c50f7641563a63b900761d99efb24a' into vthiebau…
vthiebaut10 Jun 26, 2026
8fceecb
Merge commit 'a729163c56ecc002c0cb04db56e7d86ceec2e8b0' into vthiebau…
vthiebaut10 Jun 26, 2026
d8294f1
Merge pull request #13 from vthiebaut10/vthiebaut/scratch-merge-10
tgauth Jun 26, 2026
352b446
Merge commit '2603098959eff55cbe188c3dfcbe5302808a80fc' into scratch-…
tgauth Jun 26, 2026
1b53ab7
Merge commit '5e4bfe6c16924b1c21a733f3e218cfcba98e301e' into scratch-…
tgauth Jun 26, 2026
4c468a7
Merge commit 'dc630e6d81be8aa495254839731e4f3521cf9e31' into scratch-…
tgauth Jun 26, 2026
426d38d
Merge commit 'b1c4cedbee107dc611ce091f27ea9f1de28ee378' into scratch-…
tgauth Jun 26, 2026
3230815
Merge commit 'e85248df3f1073343da87a6b00512e6a1e4a863d' into scratch-…
tgauth Jun 26, 2026
5e0da04
Merge commit 'd1c6c67a50fc957010fa027c6ab970424e9b9142' into scratch-…
tgauth Jun 26, 2026
3246ab5
Merge commit '6ebd472c391a73574abe02771712d407c48e130d' into scratch-…
tgauth Jun 26, 2026
ce5c136
Merge commit '2ebc6384258b58ace0ad2adb2593744f62749235' into scratch-…
tgauth Jun 26, 2026
a95ca20
Merge commit '0e1b8aa27f7c86d412c9e54ad9e2cae30d9ddab4' into scratch-…
tgauth Jun 26, 2026
90691a8
Merge commit 'ab5074dfb614e3801fecbd376d8ed4cea613c629' into scratch-…
tgauth Jun 26, 2026
2af0bd7
Merge commit '32deb00b38b4ee2b3302f261ea1e68c04e020a08' into scratch-…
tgauth Jun 26, 2026
a3445dc
Merge commit 'dc5147028ff19213a32281dad07bba02e58da3fa' into scratch-…
tgauth Jun 26, 2026
eac4491
Guard upstream SIGINFO handlers with #ifdef SIGINFO for Windows
tgauth Jun 26, 2026
a732f35
Merge commit '289239046b2c4b0076c14394ae9703a879e78706' into scratch-…
tgauth Jun 26, 2026
0a8610f
Remove obsolete ssh_packet_set_interactive args in w32-doexec for QoS…
tgauth Jun 26, 2026
ad15a14
Merge commit 'ae44cd74f3a4ac711152f50b2712803ccf785593' into scratch-…
tgauth Jun 26, 2026
162c532
Merge commit '3ef1a87d0a29eac94f32371af628e81eb2e2d817' into scratch-…
tgauth Jun 26, 2026
8ea89f6
Define PLEDGE_EXTRA_INET for Windows build
tgauth Jun 26, 2026
188c1cb
Merge commit 'a9a3f025d76f06a6601e6e8d52b468ec467865d9' into scratch-…
tgauth Jun 26, 2026
245269e
Merge commit '19f7cb39eecb4b8f768f37e8294dc3a9142e022b' into scratch-…
tgauth Jun 29, 2026
dc4a540
Merge commit '23a2bb750547a9a5251cbc44c5ceb1d05303befe' into scratch-…
tgauth Jun 29, 2026
f715633
Merge commit 'a0b095fa03d3c08d723a803ce25540fddd955c53' into scratch-…
tgauth Jun 29, 2026
5e7ba64
Merge commit '2f369d3fd0ff3715c2b32dff5cb35c0330272445' into scratch-…
tgauth Jun 29, 2026
88f7cea
Merge commit '8866d24cdd1d6e73bb3220b753f94e255c49ff96' into scratch-…
tgauth Jun 29, 2026
46d6eaa
Add test_xextendf.c to unittest-misc Windows project for xextendf() u…
tgauth Jun 29, 2026
3d64954
Merge commit 'cc4eb3d6943cb57e08ab3abbcf92644deb429e46' into scratch-…
tgauth Jun 29, 2026
b7a4cfc
Merge commit 'f38a552dc71f20df2544338099e3fe2563f1a9ca' into scratch-…
tgauth Jun 29, 2026
8143046
Merge commit 'f64701ca25795548a61614d0b13391d6dfa7f38c' into scratch-…
tgauth Jun 29, 2026
45f4c58
Add test_misc.c to unittest-misc Windows project for misc.c unit tests
tgauth Jun 29, 2026
9b9af0d
Fix Get-CommitGroups: fail hard on GitHub API rate-limit exhaustion
tgauth Jun 29, 2026
27771ae
Merge commit '54abadd3f286efea0dbbdbfea8011d5e1e30c074' into scratch-…
tgauth Jun 29, 2026
450bc1a
Restore HAVE_*_H header guards stripped by upstream KNF reordering
tgauth Jun 29, 2026
5e3541c
Add win32compat clock_gettime to fix LNK4099 fido2.pdb warning
tgauth Jun 29, 2026
55dfd65
add WINDOWS if around test
tgauth Jun 29, 2026
331576d
Add merge guidance for upstream changes to Windows-adapted regress tests
tgauth Jun 29, 2026
ea42311
fix bash test
tgauth Jun 30, 2026
fc6077b
Merge commit '3d8ae7f235b96da604b08c44ae83420e367eeab4' into scratch-…
tgauth Jun 30, 2026
58e0b2b
Merge commit 'edc601707b583a2c900e49621e048c26574edd3a' into scratch-…
tgauth Jun 30, 2026
e05ce83
Merge commit 'a4aa090a3d40dddb07d5ebebc501f6457541a501' into scratch-…
tgauth Jun 30, 2026
8ba914d
Merge commit '80993390bed15bbd1c348f3352e55d0db01ca0fd' into scratch-…
tgauth Jun 30, 2026
9fb6fc2
Disable new upstream VM CI workflows for win32-openssh fork
tgauth Jun 30, 2026
875e509
Merge commit 'bc328144f149af07139a0f2c1329018cd85b86b7' into scratch-…
tgauth Jun 30, 2026
d4a2581
Merge commit 'eff358890a7cab1e7c2fec62e5b9914d2c1c8703' into scratch-…
tgauth Jun 30, 2026
f3dd22a
Merge commit 'e914e61eb88e22e5b725c399698256c54589ca32' into scratch-…
tgauth Jun 30, 2026
86e54a4
Windows: remove redundant waitpid in privsep_preauth (batch 83 build …
tgauth Jun 30, 2026
357cf98
Merge commit '37d996bd0537837f15fc540d5aebb1ef2faf2268' into scratch-…
tgauth Jun 30, 2026
47fc1ab
Merge commit '97b32fa2af25c16aec4de85c5cbb63fd038b4dfa' into scratch-…
tgauth Jun 30, 2026
d8f3ca8
Merge commit 'b06a150bc903a0cf898406384d5a34059d0f2d8f' into scratch-…
tgauth Jun 30, 2026
a938883
Merge commit 'fda31e1e5179b4e70c27094ebb303ee47c11a5a7' into scratch-…
tgauth Jun 30, 2026
8709119
Merge commit '893a579e4b37e6bd89d206dc8e7ac2a906ccf114' into scratch-…
tgauth Jun 30, 2026
c111cb1
Merge commit 'd343df4019b4369ce7f87e9bf6bbc80b81cd263d' into scratch-…
tgauth Jul 1, 2026
73ff35c
Merge commit '2c504a74ed81d13c8198a89ed1040d0fc5f73129' into scratch-…
tgauth Jul 1, 2026
9c8d013
Merge commit 'b9f6a84ea383d811216de38219472214963c10b2' into scratch-…
tgauth Jul 1, 2026
d83ee82
Merge commit '3957cc2914cdc88932c972413853f8b68c1ffba5' into scratch-…
tgauth Jul 1, 2026
45e0a59
Merge commit 'a9cbe10da2be5be76755af0cea029db0f9c1f263' into scratch-…
tgauth Jul 1, 2026
66e5877
Merge commit 'c97b931bffa481c72ff4bfddd9d59a2110899289' into scratch-…
tgauth Jul 1, 2026
26a5f51
Windows: use openbsd-compat clock_gettime instead of win32compat dupl…
tgauth Jul 1, 2026
e64fc46
Merge commit 'b937061fe4922caced7b91442b3233c0bd763492' into scratch-…
tgauth Jul 1, 2026
ab50c71
Merge commit 'bcf7c05a473f92a35f4f3b561fd7a1e339e0a30f' into scratch-…
tgauth Jul 1, 2026
f0f9019
Merge commit '081b8dbbe90d81a43b5e0f1995fe59a0e319aa15' into scratch-…
tgauth Jul 1, 2026
b137bd4
Merge commit 'd6212b0b89241e96d2fea9619b2d66ea668bceaa' into scratch-…
tgauth Jul 2, 2026
a2b0209
Merge commit 'a6ee0eb8cd951d0a00b2f06687c77f8f573b5985' into scratch-…
tgauth Jul 2, 2026
48feff8
Merge commit '3adc47e161901001816045c032fa61e94b0c9426' into scratch-…
tgauth Jul 2, 2026
72bd9eb
Merge commit 'a4e404a64b117a15453075ee26eb061d416e58cd' into scratch-…
tgauth Jul 2, 2026
4da6fad
Fix Windows failures in scp/scp3/sftp-cmds recursive dotdot tests
tgauth Jul 2, 2026
bea9b80
Merge commit 'ce49aceba9f4b5f34a1041145782914aa35ca880' into scratch-…
tgauth Jul 16, 2026
8310ebe
Merge commit 'a204650386124df8035b8c8613dccbe9b3158cdf' into scratch-…
tgauth Jul 16, 2026
953fca8
Merge commit '74369b2b7c366887211ef5c092b0aaa60f31ef11' into scratch-…
tgauth Jul 16, 2026
018d6ee
Merge commit '52712d5f11172ca98ffb0b2ac93007f74cb67134' into scratch-…
tgauth Jul 16, 2026
bc7975d
Merge commit 'ffd086b69886e8cfeb74f9b2bcb18764bf7d9a52' into scratch-…
tgauth Jul 16, 2026
c280a3b
Merge commit '0ffb76c6590800958777cd0f7b1aaae19c74fa3f' into scratch-…
tgauth Jul 16, 2026
5c96b14
Merge commit '4f3e65bda22b65dc5fff82df1e97af07456fed42' into scratch-…
tgauth Jul 16, 2026
d4953b4
Merge commit '7e5d404cf73b6762715eec69b67cce2c4801f9e9' into scratch-…
tgauth Jul 16, 2026
6648715
Update VS projects for OpenSSH 10.3 ed25519/hash build changes
tgauth Jul 16, 2026
28b301a
Merge commit 'd12813314452173b1709f7fdbae74add84c0056f' into scratch-…
tgauth Jul 16, 2026
dfa43f6
Merge commit '08786bbe7eebff316efb0b4ccb882f93f33a16b8' into scratch-…
tgauth Jul 17, 2026
f73087c
Merge commit '7cb3ea4dcc7d73b2fad6782a119901cfa2b022aa' into scratch-…
tgauth Jul 17, 2026
8a466e1
Merge commit '6aba7008e6451ae3f9298214b13b8eded5fd9ff0' into scratch-…
tgauth Jul 17, 2026
f7a5ed2
Merge commit 'e2b93e16232834c61c9dcff5b20e4c55a26b324d' into scratch-…
tgauth Jul 17, 2026
4636af6
Merge commit 'bad220decb95d3b5cc6e30f843c4fc9d9b0b7a67' into scratch-…
tgauth Jul 17, 2026
a9708d3
Merge commit '58533bbdf7aa0548de8e2abd3cb2de0593fa9fdc' into scratch-…
tgauth Jul 17, 2026
93002c5
Merge commit 'ccad76e9e1e4f06889ee023893cea98bc165858b' into scratch-…
tgauth Jul 17, 2026
ae10d68
Merge commit 'a8718c3fc52511e5237f1cbe10c210948c5616ea' into scratch-…
tgauth Jul 17, 2026
b276dda
Merge commit '71e8779113965d60d91ba2d15cdeeb43ecf230a7' into scratch-…
tgauth Jul 20, 2026
c0423db
Merge commit '69965aefe3355488e0462291be13a233b8405091' into scratch-…
tgauth Jul 20, 2026
3b25d10
Merge commit '1fdc3c61194819c16063dc430eeb84b81bf42dcf' into scratch-…
tgauth Jul 20, 2026
5fb848a
Merge commit '6157e1c41071fb0f5621868c38861934284268b1' into scratch-…
tgauth Jul 20, 2026
cbf8a15
Merge commit 'c23122c5ea7348b7b6daa2982e53c201a5354007' into scratch-…
tgauth Jul 20, 2026
1143535
Merge commit '2d0d26602f739b4a3ddde6c4dbc8f3ddab38ac0d' into scratch-…
tgauth Jul 20, 2026
8426e5f
Merge commit '52037ed910a9dcb669b9c9f612ccac711ac586f2' into scratch-…
tgauth Jul 20, 2026
692e56a
Guard util.h include in packet.c with HAVE_UTIL_H for Windows build
tgauth Jul 20, 2026
94344d8
Merge commit '8fce5520a1c9c2cf3fc6c6974dd158f4b3ce9c4e' into scratch-…
tgauth Jul 20, 2026
e997b71
Merge commit '66622394fd3a51e9a6c99c39a068f8ba709542fa' into scratch-…
tgauth Jul 20, 2026
d94a514
Declare loop variable i in Windows do_local_cmd block in scp.c
tgauth Jul 20, 2026
366a9d6
Merge commit '185459dd87c4f7580a2591fbbbb1d800ec249b78' into scratch-…
tgauth Jul 20, 2026
49d15d0
Merge commit 'd05b704086d53c02f4ad7de921435f7e7e3ad60a' into scratch-…
tgauth Jul 21, 2026
bb8e343
Merge commit '24f32f7755801b16368375b8e27fb1a48d250fc5' into scratch-…
tgauth Jul 21, 2026
1d80780
Merge commit '94bf1154b4132727114f222a587daeac101f1f5b' into scratch-…
tgauth Jul 21, 2026
08c156b
Merge commit 'f878d7ccc25b02a39e6766f5dd405d5de6fb106c' into scratch-…
tgauth Jul 21, 2026
44c5adc
Merge commit '345892ba2e8efea4be03675c866395bee251c117' into scratch-…
tgauth Jul 21, 2026
4c7a930
Merge commit 'b652322cdc5e94f059b37a8fb87e44ccb1cdff33' into scratch-…
tgauth Jul 21, 2026
177ee5f
Merge commit '09daf2ac5f248dc5d60a6f3a703b479d67da14b4' into scratch-…
tgauth Jul 21, 2026
59d743d
Merge commit 'ea367b4bbc3fd49f84683763723425adfdce35c0' into scratch-…
tgauth Jul 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
333 changes: 163 additions & 170 deletions .depend

Large diffs are not rendered by default.

583 changes: 583 additions & 0 deletions .github/agents/merge-upstream.agent.md

Large diffs are not rendered by default.

32 changes: 20 additions & 12 deletions .github/ci-status.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,27 @@
master :
[![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:master)
[![C/C++ CI](../../../actions/workflows/c-cpp.yml/badge.svg)](../../../actions/workflows/c-cpp.yml?query=branch:master)
[![VM CI](../../../actions/workflows/vm.yml/badge.svg)](../../../actions/workflows/vm.yml?query=branch:master)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:master)
[![Upstream self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/upstream.yml/badge.svg)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/upstream.yml?query=branch:master)
[![CIFuzz](https://github.com/openssh/openssh-portable/actions/workflows/cifuzz.yml/badge.svg)](https://github.com/openssh/openssh-portable/actions/workflows/cifuzz.yml)
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/openssh.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:openssh)
[![CIFuzz](../../../actions/workflows/cifuzz.yml/badge.svg)](../../../actions/workflows/cifuzz.yml)
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/openssh.svg)](https://issues.oss-fuzz.com/issues?q="Project:+openssh"+is:open)
[![Coverity Status](https://scan.coverity.com/projects/21341/badge.svg)](https://scan.coverity.com/projects/openssh-portable)
<br>

9.9 :
[![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_9)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_9)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_9)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_9)
10.2 :
[![C/C++ CI](../../../actions/workflows/c-cpp.yml/badge.svg?branch=V_10_2)](../../../actions/workflows/c-cpp.yml?query=branch:V_10_2)
[![VM CI](../../../actions/workflows/vm.yml/badge.svg?branch=V_10_2)](../../../actions/workflows/vm.yml?query=branch:V_10_2)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_10_2)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_10_2)

10.1 :
[![C/C++ CI](../../../actions/workflows/c-cpp.yml/badge.svg?branch=V_10_1)](../../../actions/workflows/c-cpp.yml?query=branch:V_10_1)
[![VM CI](../../../actions/workflows/vm.yml/badge.svg?branch=V_10_1)](../../../actions/workflows/vm.yml?query=branch:V_10_1)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_10_1)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_10_1)

9.8 :
[![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_8)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_8)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_8)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_8)
10.0 :
[![C/C++ CI](../../../actions/workflows/c-cpp.yml/badge.svg?branch=V_10_0)](../../../actions/workflows/c-cpp.yml?query=branch:V_10_0)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_10_0)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_10_0)

9.7 :
[![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_7)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_7)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_7)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_7)
9.9 :
[![C/C++ CI](../../../actions/workflows/c-cpp.yml/badge.svg?branch=V_9_9)](../../../actions/workflows/c-cpp.yml?query=branch:V_9_9)
[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_9)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_9)
13 changes: 12 additions & 1 deletion .github/configs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ if [ "$config" = "" ]; then
config="default"
fi

if [ ! -z "${LTESTS}" ]; then
OVERRIDE_LTESTS="${LTESTS}"
fi

unset CC CFLAGS CPPFLAGS LDFLAGS LTESTS SUDO

TEST_TARGET="tests compat-tests"
Expand Down Expand Up @@ -144,6 +148,8 @@ case "$config" in
TCMALLOC_STACKTRACE_METHOD=generic_fp
TEST_SSH_SSHD_ENV="TCMALLOC_STACKTRACE_METHOD=generic_fp"
export TCMALLOC_STACKTRACE_METHOD TEST_SSH_SSHD_ENV

SKIP_LTESTS="agent-restrict"
;;
krb5|heimdal)
CONFIGFLAGS="--with-kerberos5"
Expand Down Expand Up @@ -277,7 +283,7 @@ case "${TARGET_HOST}" in
# Native linker is not great with PIC so OpenSSL is built w/out.
CONFIGFLAGS="${CONFIGFLAGS} --disable-security-key"
;;
fbsd14-ppc64)
fbsd14-ppc64|nbsd-arm64be)
# Disable security key tests for bigendian interop test.
CONFIGFLAGS="${CONFIGFLAGS} --disable-security-key"
;;
Expand Down Expand Up @@ -392,5 +398,10 @@ if [ -x "$(which plink 2>/dev/null)" ]; then
export REGRESS_INTEROP_PUTTY
fi

if [ ! -z "${OVERRIDE_LTESTS}" ]; then
echo >&2 "Overriding LTESTS, was '${LTESTS}', now '${OVERRIDE_LTESTS}'"
LTESTS="${OVERRIDE_LTESTS}"
fi

export CC CFLAGS CPPFLAGS LDFLAGS LTESTS SUDO
export TEST_TARGET TEST_SSH_UNSAFE_PERMISSIONS TEST_SSH_FAIL_FATAL
75 changes: 75 additions & 0 deletions .github/install_libcrypto.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
#!/bin/sh
#
# Install specified libcrypto.
# -a : install version for ABI compatibility test.
# -n : dry run, don't actually build and install.
#
# Usage: $0 [-a] [-n] openssl-$branch/tag destdir [config options]

set -e

bincompat_test=""
dryrun=""
while [ "$1" = "-a" ] || [ "$1" = "-n" ]; do
if [ "$1" = "-a" ]; then
abi_compat_test=y
elif [ "$1" = "-n" ]; then
dryrun="echo dryrun:"
fi
shift
done

ver="$1"
destdir="$2"
opts="$3"

if [ -z "${ver}" ] || [ -z "${destdir}" ]; then
echo tag/branch and destdir required
exit 1
fi

set -x

if [ ! -d ${HOME}/openssl ]; then
cd ${HOME}
git clone https://github.com/openssl/openssl.git
cd ${HOME}/openssl
git fetch --all
fi
cd ${HOME}/openssl

if [ "${abi_compat_test}" = "y" ]; then
echo selecting ABI test release/branch for ${ver}
case "${ver}" in
openssl-3.6)
ver=openssl-3.0.0
echo "selecting older release ${ver}"
;;
openssl-3.[012345])
major=$(echo ${ver} | cut -f1 -d.)
minor=$(echo ${ver} | cut -f2 -d.)
ver="${major}.$((${minor} + 1))"
echo selecting next release branch ${ver}
;;
openssl-3.*.*)
major=$(echo ${ver} | cut -f1 -d.)
minor=$(echo ${ver} | cut -f2 -d.)
patch=$(echo ${ver} | cut -f3 -d.)
ver="${major}.${minor}.$((${patch} + 1))"
echo checking for release tag ${ver}
if git tag | grep -q "^${ver}\$"; then
echo selected next patch release ${ver}
else
ver="${major}.${minor}"
echo not found, selecting release branch ${ver}
fi
;;
esac
fi

git checkout ${ver}
make clean >/dev/null 2>&1 || true
${dryrun} ./config no-threads shared ${opts} --prefix=${destdir} \
-Wl,-rpath,${destdir}/lib64
${dryrun} make -j4
${dryrun} sudo make install_sw
37 changes: 37 additions & 0 deletions .github/install_putty.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#!/bin/sh

ver="$1"

echo
echo --------------------------------------
echo Installing PuTTY version ${ver}
echo --------------------------------------

cd /tmp

case "${ver}" in
snapshot)
tarball=putty.tar.gz
url=https://tartarus.org/~simon/putty-snapshots/${tarball}
;;
*)
tarball=putty-${ver}.tar.gz
url=https://the.earth.li/~sgtatham/putty/${ver}/${tarball}
;;
esac

if [ ! -f ${tarball} ]; then
wget -q ${url}
fi

mkdir -p /tmp/puttybuild
cd /tmp/puttybuild

tar xfz /tmp/${tarball} && cd putty-*
if [ -f CMakeLists.txt ]; then
cmake . && cmake --build . -j4 && sudo cmake --build . --target install
else
./configure && make -j4 && sudo make install
fi
sudo rm -rf /tmp/puttybuild
/usr/local/bin/plink -V
139 changes: 139 additions & 0 deletions .github/instructions/agent-communication.instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
---
applyTo: "**/*"
---

# AI Agent Communication Guidelines

## Overview
This document establishes how AI agents should communicate with users throughout their interactions. These guidelines apply to **all agent operations** in this workspace. For merge-specific communication templates, see [agent-communication-merge.instructions.md](./merge/agent-communication-merge.instructions.md).

## Core Principle: Tool Output vs Agent Communication

### Distinction

**1. MCP Tool Execution (Write-Host is acceptable):**
- When MCP tools execute PowerShell scripts, those scripts may use `Write-Host` for output
- This is normal and expected behavior for the tool itself
- The agent receives this output and can parse it
- Example: `Test-OpenSSHFunctionality.ps1` uses `Write-Host` to display test progress

**2. Agent-to-User Communication (Use chat messages ONLY):**
- AI agents **MUST** communicate with users through chat messages, not `Write-Host`
- **DO NOT** invoke `Write-Host` or other console output commands from the agent
- Instead, present information conversationally in your responses
- Parse tool output and summarize it in chat messages

## Communication Standards

### ❌ INCORRECT: Agent Using Write-Host
```pwsh
Write-Host "Starting merge process..."
Write-Host "Build succeeded!" -ForegroundColor Green
Write-Host "Found 3 conflicts in auth.c"
```

### ✅ CORRECT: Agent Using Chat Messages
```
Starting the merge process. I'll cherry-pick the commits in this batch and then build.

The build succeeded! All 14 executables were created successfully.

Found 3 conflicts in auth.c. Analyzing the conflict types to determine the resolution strategy.
```

## Pseudocode Implementation Guidance

When you see pseudocode functions in instruction files like:
- `update_progress()`
- `generate_test_report()`
- `log()`
- `append_to_progress_log()`

These represent **conceptual operations**. Implement them by:
1. Generating the information/report internally
2. Communicating the results to the user via chat messages
3. **NOT** by executing `Write-Host` or similar PowerShell output commands

### Example: Pseudocode to Implementation

**Pseudocode:**
```pseudocode
FUNCTION update_progress(phase, status, details):
log(f"Phase {phase}: {status}")
IF status == "FAILURE":
generate_failure_report(details)
```

**Correct Agent Implementation:**
```
[Agent analyzes the phase and status]
[Agent sends chat message]: "Phase 1: Conflict Resolution - Completed successfully. Resolved 5 conflicts across 3 files."
```

**Incorrect Agent Implementation:**
```pwsh
Write-Host "Phase 1: Conflict Resolution - Completed successfully"
```

## Best Practices

### 1. Be Conversational
- Write naturally, as if speaking to a colleague
- Avoid overly formal or robotic language
- Use active voice

### 2. Provide Context
- Explain what you're doing and why
- Help users understand the current state
- Highlight important information

### 3. Use Structured Formatting When Helpful
- Use markdown formatting for clarity
- Use bullet points for lists
- Use code blocks for commands or file paths
- Use file links when referencing specific files

### 4. Progressive Disclosure
- Start with high-level summaries
- Provide details when relevant
- Don't overwhelm with unnecessary information

### 5. Clear Status Indicators
Use clear language for status:
- ✅ "succeeded", "completed successfully", "passed"
- ❌ "failed", "encountered errors", "did not pass"
- ⚠️ "warning", "requires attention", "partial success"

## Examples

### Good: Progress Update
```
Analyzing the upstream changes between the last merge commit and V_10_0_P2. Found 127 commits with 8 security fixes and 3 build system changes that will require Visual Studio project updates.
```

### Good: Error Report
```
The build failed with 4 compilation errors:
- auth.c: Missing include for Windows compatibility header
- sshd.c: Undefined reference to fork() - needs Windows equivalent
- config.h.vs: Missing preprocessor definition for HAVE_SETRESUID

I'll add the Windows compatibility fixes now.
```

### Good: Success Report
```
Testing completed successfully! The SSH service installed, started, and accepted connections. The test command executed correctly with expected output.
```

## Merge-Specific Guidelines

For detailed merge workflow communication templates, including exact formats for tool output summaries and commit batch summaries, see:
- [Merge-Specific Agent Communication Guidelines](./merge/agent-communication-merge.instructions.md)

## Summary

- **Tools can use Write-Host** - MCP tools and PowerShell scripts may output to console
- **Agents use chat only** - All agent communication must be via chat messages
- **Parse, don't echo** - Parse tool output and present summaries conversationally
- **Be clear and helpful** - Provide context, use formatting, and communicate status clearly
Loading