Skip to content
Snippets Groups Projects
  1. Dec 05, 2014
  2. Oct 29, 2014
  3. Jul 16, 2014
    • David Woodhouse's avatar
      Remove all traces of FBOpenSSL SPNEGO support · 9ad282b1
      David Woodhouse authored
      This is just fundamentally broken. SPNEGO (RFC4178) is a protocol which
      allows client and server to negotiate the underlying mechanism which will
      actually be used to authenticate. This is *often* Kerberos, and can also
      be NTLM and other things. And to complicate matters, there are various
      different OIDs which can be used to specify the Kerberos mechanism too.
      
      A SPNEGO exchange will identify *which* GSSAPI mechanism is being used,
      and will exchange GSSAPI tokens which are appropriate for that mechanism.
      
      But this SPNEGO implementation just strips the incoming SPNEGO packet
      and extracts the token, if any. And completely discards the information
      about *which* mechanism is being used. Then we *assume* it was Kerberos,
      and feed the token into gss_init_sec_context() with the default
      mechanism (GSS_S_NO_OID for the mech_type argument).
      
      Furthermore... broken as this code is, it was never even *used* for input
      tokens anyway, because higher layers of curl would just bail out if the
      server actually said anything *back* to us in the negotiation. We assume
      that we send a single token to the server, and it accepts it. If the server
      wants to continue the exchange (as is required for NTLM and for SPNEGO
      to do anything useful), then curl was broken anyway.
      
      So the only bit which actually did anything was the bit in
      Curl_output_negotiate(), which always generates an *initial* SPNEGO
      token saying "Hey, I support only the Kerberos mechanism and this is its
      token".
      
      You could have done that by manually just prefixing the Kerberos token
      with the appropriate bytes, if you weren't going to do any proper SPNEGO
      handling. There's no need for the FBOpenSSL library at all.
      
      The sane way to do SPNEGO is just to *ask* the GSSAPI library to do
      SPNEGO. That's what the 'mech_type' argument to gss_init_sec_context()
      is for. And then it should all Just Work™.
      
      That 'sane way' will be added in a subsequent patch, as will bug fixes
      for our failure to handle any exchange other than a single outbound
      token to the server which results in immediate success.
      9ad282b1
  4. Jan 02, 2014
  5. May 11, 2013
  6. Feb 09, 2013
  7. Jan 28, 2013
  8. Jan 06, 2013
    • Yang Tse's avatar
      Revert changes relative to lib/*.[ch] recent renaming · 4a5aa668
      Yang Tse authored
      This reverts renaming and usage of lib/*.h header files done
      28-12-2012, reverting 2 commits:
      
        f871de00... build: make use of 76 lib/*.h renamed files
        ffd8e127... build: rename 76 lib/*.h files
      
      This also reverts removal of redundant include guard (redundant thanks
      to changes in above commits) done 2-12-2013, reverting 1 commit:
      
        c087374c... curl_setup.h: remove redundant include guard
      
      This also reverts renaming and usage of lib/*.c source files done
      3-12-2013, reverting 3 commits:
      
        13606bbf... build: make use of 93 lib/*.c renamed files
        5b6e7927... build: rename 93 lib/*.c files
        7d83dfff... build: commit 13606bbf follow-up 1
      
      Start of related discussion thread:
      
        http://curl.haxx.se/mail/lib-2013-01/0012.html
      
      Asking for confirmation on pushing this revertion commit:
      
        http://curl.haxx.se/mail/lib-2013-01/0048.html
      
      Confirmation summary:
      
        http://curl.haxx.se/mail/lib-2013-01/0079.html
      
      NOTICE: The list of 2 files that have been modified by other
      intermixed commits, while renamed, and also by at least one
      of the 6 commits this one reverts follows below. These 2 files
      will exhibit a hole in history unless git's '--follow' option
      is used when viewing logs.
      
        lib/curl_imap.h
        lib/curl_smtp.h
      4a5aa668
  9. Jan 03, 2013
  10. Jul 11, 2012
  11. May 22, 2012
  12. Apr 26, 2012
  13. Apr 20, 2012
  14. Apr 12, 2012
  15. Sep 27, 2011
  16. Sep 25, 2011
  17. Sep 11, 2011
  18. Sep 03, 2011
  19. Jul 24, 2011
  20. Apr 19, 2011
  21. Feb 17, 2011
  22. Feb 13, 2011
  23. Dec 22, 2010
  24. Dec 05, 2010
  25. Dec 02, 2010
  26. Oct 12, 2010
  27. Oct 03, 2010
    • Guenter Knauf's avatar
      Some NetWare makefile tweaks. · 81e10701
      Guenter Knauf authored
      Renamed SDK_* to NDK_*; made NDK_* defines overwriteable from
      environment; removed now obsolete YACC macro;
      moved some curl_config.h defines to IPv6 section since they
      are only needed when IPv6 is enabled - this makes libcurl compile
      with older NDKs too which were not IPv6-aware.
      81e10701
  28. Aug 15, 2010
  29. Aug 06, 2010
  30. Jul 22, 2010
  31. Apr 24, 2010
  32. Mar 30, 2010
  33. Mar 24, 2010
  34. Feb 26, 2010
    • Yang Tse's avatar
      · cef95aad
      Yang Tse authored
      Added SIZEOF_INT and SIZEOF_SHORT definitions for non-configure systems
      cef95aad
  35. Sep 07, 2009
Loading