1. 07 Nov, 2016 1 commit
  2. 06 Nov, 2016 1 commit
  3. 04 Nov, 2016 1 commit
  4. 31 Oct, 2016 1 commit
  5. 06 Oct, 2016 1 commit
  6. 26 Sep, 2016 1 commit
  7. 12 Sep, 2016 2 commits
  8. 11 Sep, 2016 1 commit
  9. 10 Sep, 2016 1 commit
  10. 26 Aug, 2016 1 commit
  11. 04 Jul, 2016 1 commit
  12. 24 Jun, 2016 1 commit
  13. 18 Jun, 2016 1 commit
    • Lars Gierth's avatar
      gateway: clean up its surface, and remove BlockList · 1afebc21
      Lars Gierth authored
      This patch is in preparation for the gateway's extraction.
      
      It's interesting to trace technical debt back to its
      origin, understanding the circumstances in which it
      was introduced and built up, and then cutting it back
      at exactly the right places.
      
      - Clean up the gateway's surface
        The option builder GatewayOption() now takes only
        arguments which are relevant for HTTP handler muxing,
        i.e. the paths where the gateway should be mounted.
        All other configuration happens through the
        GatewayConfig object.
      
      - Remove BlockList
        I know why this was introduced in the first place,
        but it never ended up fulfilling that purpose.
        Somehow it was only ever used by the API server,
        not the gateway, which really doesn't make sense.
        It was also never wired up with CLI nor fs-repo.
        Eventually @krl started punching holes into it
        to make the Web UI accessible.
      
      - Remove --unrestricted-api
        This was holes being punched into BlockList too,
        for accessing /ipfs and /ipn on the API server.
        With BlockList removed and /ipfs and /ipns freely
        accessible, putting this option out of action
        is safe. With the next major release,
        the option can be removed for good.
      
      License: MIT
      Signed-off-by: default avatarLars Gierth <larsg@systemli.org>
      1afebc21
  14. 15 Jun, 2016 1 commit
  15. 11 Jun, 2016 1 commit
  16. 07 Jun, 2016 1 commit
  17. 01 Jun, 2016 1 commit
  18. 31 May, 2016 1 commit
  19. 17 May, 2016 1 commit
  20. 16 May, 2016 1 commit
  21. 13 May, 2016 1 commit
  22. 10 May, 2016 1 commit
  23. 27 Apr, 2016 1 commit
  24. 17 Apr, 2016 1 commit
  25. 11 Apr, 2016 1 commit
  26. 07 Apr, 2016 1 commit
  27. 04 Apr, 2016 1 commit
    • Lars Gierth's avatar
      gateway: enforce allowlist for path prefixes · 09937f84
      Lars Gierth authored
      The gateway accepts an X-Ipfs-Path-Prefix header,
      and assumes that it is mounted in a reverse proxy
      like nginx, at this path. Links in directory listings,
      as well as trailing-slash redirects need to be rewritten
      with that prefix in mind.
      
      We don't want a potential attacker to be able to
      pass in arbitrary path prefixes, which would end up
      in redirects and directory listings, which is why
      every prefix has to be explicitly allowed in the config.
      
      Previously, we'd accept *any* X-Ipfs-Path-Prefix header.
      
      Example:
      
      We mount blog.ipfs.io (a dnslink page) at ipfs.io/blog.
      
      nginx_ipfs.conf:
      
          location /blog/ {
              rewrite "^/blog(/.*)$" $1 break;
              proxy_set_header Host blog.ipfs.io;
              proxy_set_header X-Ipfs-Gateway-Prefix /blog;
              proxy_pass http://127.0.0.1:8080;
          }
      
      .ipfs/config:
      
          "Gateway": {
              "PathPrefixes": ["/blog"],
              // ...
          },
      
      dnslink:
      
          > dig TXT _dnslink.blog.ipfs.io
          dnslink=/ipfs/QmWcBjXPAEdhXDATV4ghUpkAonNBbiyFx1VmmHcQe9HEGd
      
      License: MIT
      Signed-off-by: default avatarLars Gierth <larsg@systemli.org>
      09937f84
  28. 30 Mar, 2016 1 commit
  29. 09 Mar, 2016 1 commit
  30. 31 Jan, 2016 2 commits
  31. 30 Jan, 2016 2 commits
  32. 25 Nov, 2015 1 commit
  33. 03 Sep, 2015 1 commit
  34. 02 Aug, 2015 1 commit
  35. 29 Jul, 2015 1 commit
    • Juan Batiz-Benet's avatar
      implement arbitrary HTTP header support · 4a571b09
      Juan Batiz-Benet authored
      this commit adds the ability to specify arbitrary HTTP headers
      for either the Gateway or the API. simply set the desired headers
      on the config:
      
          ipfs config --json API.HTTPHeaders.X-MyHdr '["meow :)"]'
          ipfs config --json Gateway.HTTPHeaders.X-MyHdr '["meow :)"]'
      
      License: MIT
      Signed-off-by: default avatarJuan Batiz-Benet <juan@benet.ai>
      4a571b09
  36. 31 Mar, 2015 1 commit
  37. 20 Feb, 2015 1 commit