#include "squid.h"
#include "base64.h"
#include "helper/protocol_defines.h"
#include "ntlmauth/ntlmauth.h"
#include "ntlmauth/support_bits.cci"
#include "sspi/sspwin32.h"
#include "util.h"
#include <cctype>
Go to the source code of this file.
Macros | |
#define | SEND(X) debug("sending '%s' to squid\n",X); printf(X "\n"); |
#define | SEND2(X, Y) debug("sending '" X "' to squid\n",Y); printf(X "\n",Y); |
#define | SEND3(X, Y, Z) debug("sending '" X "' to squid\n",Y,Z); printf(X "\n",Y,Z); |
Functions | |
char * | negotiate_check_auth (SSP_blobP auth, int auth_length) |
void | usage () |
void | process_options (int argc, char *argv[]) |
static bool | token_decode (size_t *decodedLen, uint8_t decoded[], const char *buf) |
int | manage_request () |
int | main (int argc, char *argv[]) |
Variables | |
int | Negotiate_packet_debug_enabled = 0 |
static int | have_serverblob |
char * | my_program_name = nullptr |
Macro Definition Documentation
◆ SEND
#define SEND | ( | X | ) | debug("sending '%s' to squid\n",X); printf(X "\n"); |
Definition at line 63 of file negotiate_sspi_auth.cc.
◆ SEND2
#define SEND2 | ( | X, | |
Y | |||
) | debug("sending '" X "' to squid\n",Y); printf(X "\n",Y); |
Definition at line 69 of file negotiate_sspi_auth.cc.
◆ SEND3
#define SEND3 | ( | X, | |
Y, | |||
Z | |||
) | debug("sending '" X "' to squid\n",Y,Z); printf(X "\n",Y,Z); |
Definition at line 70 of file negotiate_sspi_auth.cc.
Function Documentation
◆ main()
Definition at line 294 of file negotiate_sspi_auth.cc.
References debug(), LoadSecurityDll(), manage_request(), my_program_name, NEGOTIATE_PACKAGE_NAME, NULL, process_options(), SSP_NTLM, UnloadSecurityDll(), and VERSION.
◆ manage_request()
void manage_request | ( | void | ) |
Definition at line 139 of file negotiate_sspi_auth.cc.
References BOOL, debug(), FALSE, have_serverblob, HELPER_INPUT_BUFFER, hex_dump(), lc(), Negotiate_packet_debug_enabled, NULL, SEND, SEND2, SEND3, SSP_ERROR, SSP_MAX_CRED_LEN, SSP_OK, and token_decode().
Referenced by main().
◆ negotiate_check_auth()
◆ process_options()
void process_options | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 94 of file negotiate_sspi_auth.cc.
References debug_enabled, getopt(), Negotiate_packet_debug_enabled, opterr, optopt, and usage().
Referenced by main().
◆ token_decode()
|
static |
Definition at line 125 of file negotiate_sspi_auth.cc.
References base64_decode_final(), base64_decode_init(), base64_decode_update(), and SEND.
Referenced by manage_request().
◆ usage()
void usage | ( | void | ) |
Definition at line 83 of file negotiate_sspi_auth.cc.
References my_program_name.
Referenced by process_options().
Variable Documentation
◆ have_serverblob
|
static |
Definition at line 60 of file negotiate_sspi_auth.cc.
Referenced by manage_request().
◆ my_program_name
char* my_program_name = nullptr |
Definition at line 80 of file negotiate_sspi_auth.cc.
◆ Negotiate_packet_debug_enabled
int Negotiate_packet_debug_enabled = 0 |
Definition at line 59 of file negotiate_sspi_auth.cc.
Referenced by manage_request(), and process_options().