Classes | Macros | Enumerations | Functions
curl_sasl.h File Reference
#include <curl/curl.h>
Include dependency graph for curl_sasl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SASL
 
struct  SASLproto
 

Macros

#define SASL_AUTH_ANY   ~0U
 
#define SASL_AUTH_DEFAULT   (SASL_AUTH_ANY & ~SASL_MECH_EXTERNAL)
 
#define SASL_AUTH_NONE   0
 
#define SASL_MECH_CRAM_MD5   (1 << 2)
 
#define SASL_MECH_DIGEST_MD5   (1 << 3)
 
#define sasl_mech_equal(line, wordlen, mech)
 
#define SASL_MECH_EXTERNAL   (1 << 5)
 
#define SASL_MECH_GSSAPI   (1 << 4)
 
#define SASL_MECH_LOGIN   (1 << 0)
 
#define SASL_MECH_NTLM   (1 << 6)
 
#define SASL_MECH_OAUTHBEARER   (1 << 8)
 
#define SASL_MECH_PLAIN   (1 << 1)
 
#define SASL_MECH_STRING_CRAM_MD5   "CRAM-MD5"
 
#define SASL_MECH_STRING_DIGEST_MD5   "DIGEST-MD5"
 
#define SASL_MECH_STRING_EXTERNAL   "EXTERNAL"
 
#define SASL_MECH_STRING_GSSAPI   "GSSAPI"
 
#define SASL_MECH_STRING_LOGIN   "LOGIN"
 
#define SASL_MECH_STRING_NTLM   "NTLM"
 
#define SASL_MECH_STRING_OAUTHBEARER   "OAUTHBEARER"
 
#define SASL_MECH_STRING_PLAIN   "PLAIN"
 
#define SASL_MECH_STRING_XOAUTH2   "XOAUTH2"
 
#define SASL_MECH_XOAUTH2   (1 << 7)
 

Enumerations

enum  saslprogress { SASL_IDLE, SASL_INPROGRESS, SASL_DONE }
 
enum  saslstate {
  SASL_STOP, SASL_PLAIN, SASL_LOGIN, SASL_LOGIN_PASSWD,
  SASL_EXTERNAL, SASL_CRAMMD5, SASL_DIGESTMD5, SASL_DIGESTMD5_RESP,
  SASL_NTLM, SASL_NTLM_TYPE2MSG, SASL_GSSAPI, SASL_GSSAPI_TOKEN,
  SASL_GSSAPI_NO_DATA, SASL_OAUTH2, SASL_OAUTH2_RESP, SASL_CANCEL,
  SASL_FINAL
}
 

Functions

bool Curl_sasl_can_authenticate (struct SASL *sasl, struct connectdata *conn)
 
void Curl_sasl_cleanup (struct connectdata *conn, unsigned int authused)
 
CURLcode Curl_sasl_continue (struct SASL *sasl, struct connectdata *conn, int code, saslprogress *progress)
 
unsigned int Curl_sasl_decode_mech (const char *ptr, size_t maxlen, size_t *len)
 
void Curl_sasl_init (struct SASL *sasl, const struct SASLproto *params)
 
CURLcode Curl_sasl_parse_url_auth_option (struct SASL *sasl, const char *value, size_t len)
 
CURLcode Curl_sasl_start (struct SASL *sasl, struct connectdata *conn, bool force_ir, saslprogress *progress)
 

Macro Definition Documentation

#define SASL_AUTH_ANY   ~0U

Definition at line 43 of file curl_sasl.h.

#define SASL_AUTH_DEFAULT   (SASL_AUTH_ANY & ~SASL_MECH_EXTERNAL)

Definition at line 44 of file curl_sasl.h.

#define SASL_AUTH_NONE   0

Definition at line 42 of file curl_sasl.h.

#define SASL_MECH_CRAM_MD5   (1 << 2)

Definition at line 33 of file curl_sasl.h.

#define SASL_MECH_DIGEST_MD5   (1 << 3)

Definition at line 34 of file curl_sasl.h.

#define sasl_mech_equal (   line,
  wordlen,
  mech 
)
Value:
(wordlen == (sizeof(mech) - 1) / sizeof(char) && \
!memcmp(line, mech, wordlen))

Definition at line 113 of file curl_sasl.h.

#define SASL_MECH_EXTERNAL   (1 << 5)

Definition at line 36 of file curl_sasl.h.

#define SASL_MECH_GSSAPI   (1 << 4)

Definition at line 35 of file curl_sasl.h.

#define SASL_MECH_LOGIN   (1 << 0)

Definition at line 31 of file curl_sasl.h.

#define SASL_MECH_NTLM   (1 << 6)

Definition at line 37 of file curl_sasl.h.

#define SASL_MECH_OAUTHBEARER   (1 << 8)

Definition at line 39 of file curl_sasl.h.

#define SASL_MECH_PLAIN   (1 << 1)

Definition at line 32 of file curl_sasl.h.

#define SASL_MECH_STRING_CRAM_MD5   "CRAM-MD5"

Definition at line 49 of file curl_sasl.h.

#define SASL_MECH_STRING_DIGEST_MD5   "DIGEST-MD5"

Definition at line 50 of file curl_sasl.h.

#define SASL_MECH_STRING_EXTERNAL   "EXTERNAL"

Definition at line 52 of file curl_sasl.h.

#define SASL_MECH_STRING_GSSAPI   "GSSAPI"

Definition at line 51 of file curl_sasl.h.

#define SASL_MECH_STRING_LOGIN   "LOGIN"

Definition at line 47 of file curl_sasl.h.

#define SASL_MECH_STRING_NTLM   "NTLM"

Definition at line 53 of file curl_sasl.h.

#define SASL_MECH_STRING_OAUTHBEARER   "OAUTHBEARER"

Definition at line 55 of file curl_sasl.h.

#define SASL_MECH_STRING_PLAIN   "PLAIN"

Definition at line 48 of file curl_sasl.h.

#define SASL_MECH_STRING_XOAUTH2   "XOAUTH2"

Definition at line 54 of file curl_sasl.h.

#define SASL_MECH_XOAUTH2   (1 << 7)

Definition at line 38 of file curl_sasl.h.

Enumeration Type Documentation

Enumerator
SASL_IDLE 
SASL_INPROGRESS 
SASL_DONE 

Definition at line 79 of file curl_sasl.h.

enum saslstate
Enumerator
SASL_STOP 
SASL_PLAIN 
SASL_LOGIN 
SASL_LOGIN_PASSWD 
SASL_EXTERNAL 
SASL_CRAMMD5 
SASL_DIGESTMD5 
SASL_DIGESTMD5_RESP 
SASL_NTLM 
SASL_NTLM_TYPE2MSG 
SASL_GSSAPI 
SASL_GSSAPI_TOKEN 
SASL_GSSAPI_NO_DATA 
SASL_OAUTH2 
SASL_OAUTH2_RESP 
SASL_CANCEL 
SASL_FINAL 

Definition at line 58 of file curl_sasl.h.

Function Documentation

bool Curl_sasl_can_authenticate ( struct SASL sasl,
struct connectdata conn 
)

Definition at line 236 of file curl_sasl.c.

void Curl_sasl_cleanup ( struct connectdata conn,
unsigned int  authused 
)

Definition at line 81 of file curl_sasl.c.

CURLcode Curl_sasl_continue ( struct SASL sasl,
struct connectdata conn,
int  code,
saslprogress progress 
)

Definition at line 408 of file curl_sasl.c.

unsigned int Curl_sasl_decode_mech ( const char *  ptr,
size_t  maxlen,
size_t len 
)

Definition at line 117 of file curl_sasl.c.

void Curl_sasl_init ( struct SASL sasl,
const struct SASLproto params 
)

Definition at line 178 of file curl_sasl.c.

CURLcode Curl_sasl_parse_url_auth_option ( struct SASL sasl,
const char *  value,
size_t  len 
)

Definition at line 145 of file curl_sasl.c.

CURLcode Curl_sasl_start ( struct SASL sasl,
struct connectdata conn,
bool  force_ir,
saslprogress progress 
)

Definition at line 254 of file curl_sasl.c.



rc_tagdetect_client
Author(s): Monika Florek-Jasinska , Raphael Schaller
autogenerated on Sat Feb 13 2021 03:42:17