Skip to content
Snippets Groups Projects
  • Paul Marks's avatar
    0bc4938e
    curl: stop interpreting IPv6 literals as glob patterns. · 0bc4938e
    Paul Marks authored
    This makes it possible to fetch from an IPv6 literal without specifying
    the -g option.  Globbing remains available elsehwere in the URL.
    
    For example:
      curl http://[::1]/file[1-3].txt
    
    
    
    This creates no ambiguity, because there is no overlap between the
    syntax of valid globs and valid IPv6 literals.  Globs contain hyphens
    and at most 1 colon, while IPv6 literals have no hyphens, and at least 2
    colons.
    
    The peek_ipv6() parser simply whitelists a set of characters and counts
    colons, because the real validation happens later on.  The character set
    includes A-Z, in case someone decides to implement support for scopes
    like [fe80::1%25eth0] in the future.
    
    Signed-off-by: default avatarPaul Marks <pmarks@google.com>
    0bc4938e
    History
    curl: stop interpreting IPv6 literals as glob patterns.
    Paul Marks authored
    This makes it possible to fetch from an IPv6 literal without specifying
    the -g option.  Globbing remains available elsehwere in the URL.
    
    For example:
      curl http://[::1]/file[1-3].txt
    
    
    
    This creates no ambiguity, because there is no overlap between the
    syntax of valid globs and valid IPv6 literals.  Globs contain hyphens
    and at most 1 colon, while IPv6 literals have no hyphens, and at least 2
    colons.
    
    The peek_ipv6() parser simply whitelists a set of characters and counts
    colons, because the real validation happens later on.  The character set
    includes A-Z, in case someone decides to implement support for scopes
    like [fe80::1%25eth0] in the future.
    
    Signed-off-by: default avatarPaul Marks <pmarks@google.com>
test1230 1.13 KiB