Skip to content

[Ping] Unix - some problems in ping API #927

@iSazonov

Description

@iSazonov

Related https://github.com/dotnet/corefx/issues/9350

In PowerShell repo we port TestConnection cmdlet and catch some problems in the ping API.

The problems documented in the cmdlet tests - see comments and if (!isWindows) blocks.

Below short list:

  1. Dontfragment doesn't work on Unixes
    This definitely should work on Linux and on MacOs too
  2. PingReply.Buffer is empty on Unix. Expected - a buffer we send.
  3. Ping unreachable host returns ErrorCode 6 (Handle is invalid) on Unix. Expected (as on Windows) - 11001 (Host not found).
  4. API always returns Options based on default PingOptions() constructor (Ttl=128, DontFragment = false).
    PingReply.Options.DontFragment:
  • on Windows always returns false. Expected - real value from ping request.
  • on Unix always returns null. Expected - real value from ping request (or false if not implemented).

PingReply.Options.Ttl - always 128. Expected - real value from ping request.
PingReply.Options.Status - always Success (if we expect 'TtlExpired'). Expected - real status.

  1. PingReply doesn't return ScopeId in IPAddress

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-System.Netbughelp wanted[up-for-grabs] Good issue for external contributorstenet-compatibilityIncompatibility with previous versions or .NET Framework

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions