Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Test-Connection -BufferSize 0 reports buffer size of 32

Offen Anfängerfreundlich
#27,656 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
84/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
csharp
Bereich
cli

Rechercherichtung

Beginne in TestConnectionCommand.cs und untersuche die im Issue beschriebene Logik zur Meldung der Puffergröße. Reproduziere das Problem mit Test-Connection -TargetName localhost -Count 1 -BufferSize 0 und überprüfe anschließend, dass die Ausgabe und PingStatus.BufferSize 0 melden, während der Antwortpuffer leer bleibt. Erledigt ist die Aufgabe, wenn Anfragen mit null Byte nicht mehr die Standardgröße melden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Issue-Bug Up-for-Grabs WG-Reviewed
Steps to reproduce

Run the Test-Connection cmdlet specifying a buffer size of 0, then inspect the BufferSize property of the output PingStatus object, or check the returned table:

$result = Test-Connection -TargetName localhost -Count 1 -BufferSize 0
Write-Host "Result BufferSize property: $($result.BufferSize)"
Write-Host "Actual Reply.Buffer.Length: $($result.Reply.Buffer.Length)"
Expected behavior

The cmdlet output and the BufferSize property should correctly reflect the requested buffer size of 0:

Result BufferSize property: 0
Actual Reply.Buffer.Length: 0
Actual behavior

The cmdlet output and the BufferSize property incorrectly report 32:

Result BufferSize property: 32
Actual Reply.Buffer.Length: 0

The console output table also reports the BufferSize (B) as 32:

Ping Source           Address                   Latency BufferSize Status
                                                   (ms)        (B)
---- ------           -------                   ------- ---------- ------
   1 localhost        ::1                             0         32 Success
Error details

No exception is thrown. The ping completes successfully but outputs incorrect metadata.

Environment data
Name                           Value
----                           -----
PSVersion                      7.6.3
PSEdition                      Core
GitCommitId                    7.6.3
OS                             Microsoft Windows 10.0.26200
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.4
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
Additional Context

This is caused by the following logic in TestConnectionCommand.cs:

buffer.Length == 0 ? DefaultSendBufferSize : buffer.Length

When -BufferSize 0 is passed, GetSendBuffer(0) allocates a 0-length array (new byte[0]). Since buffer.Length is 0, the expression evaluates to DefaultSendBufferSize (32), misreporting the buffer size as 32 bytes even though a 0-byte payload was actually sent.

Vorherrschende Sprache
C#
Sterne
55.5k
Forks
8.5k
Ø Merge
1 T. 17 Std.
Gemergte PRs (30 T.)
97

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus PowerShell/PowerShell

Alle Issues in PowerShell/PowerShell

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.