#include "squid.h"
#include "base64.h"
#include "helper/protocol_defines.h"
#include "ntlmauth/ntlmauth.h"
#include "ntlmauth/support_bits.cci"
#include "sspwin32.h"
#include "util.h"
#include <windows.h>
#include <sspi.h>
#include <security.h>

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 = NULL |
Macro Definition Documentation
◆ SEND
#define SEND | ( | X | ) | debug("sending '%s' to squid\n",X); printf(X "\n"); |
Definition at line 68 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 74 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 75 of file negotiate_sspi_auth.cc.
Function Documentation
◆ main()
Definition at line 299 of file negotiate_sspi_auth.cc.
References debug(), LoadSecurityDll(), manage_request(), my_program_name, NULL, process_options(), UnloadSecurityDll(), and VERSION.
◆ manage_request()
void manage_request | ( | void | ) |
Definition at line 144 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_MakeNegotiateBlob(), SSP_ValidateNegotiateCredentials(), and token_decode().
Referenced by main().
◆ negotiate_check_auth()
char * negotiate_check_auth | ( | SSP_blobP | auth, |
int | auth_length | ||
) |
◆ process_options()
void process_options | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 99 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 130 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 88 of file negotiate_sspi_auth.cc.
References my_program_name.
Referenced by process_options().
Variable Documentation
◆ have_serverblob
|
static |
Definition at line 65 of file negotiate_sspi_auth.cc.
Referenced by manage_request().
◆ my_program_name
char* my_program_name = NULL |
Definition at line 85 of file negotiate_sspi_auth.cc.
◆ Negotiate_packet_debug_enabled
int Negotiate_packet_debug_enabled = 0 |
Definition at line 64 of file negotiate_sspi_auth.cc.
Referenced by manage_request(), and process_options().