#define ASN1_ENUMERATED 0xa
#define ASN1_MAX_OIDS 20
+
+/* some well known object IDs */
+#define OID_SPNEGO "1 3 6 1 5 5 2"
+#define OID_NTLMSSP "1 3 6 1 4 1 311 2 2 10"
+#define OID_KERBEROS5_OLD "1 2 840 48018 1 2 2"
+#define OID_KERBEROS5 "1 2 840 113554 1 2 2"
static BOOL cli_session_setup_ntlmssp(struct cli_state *cli, char *user,
char *pass, char *workgroup)
{
- const char *mechs[] = {"1 3 6 1 4 1 311 2 2 10", NULL};
+ const char *mechs[] = {OID_NTLMSSP, NULL};
DATA_BLOB msg1;
DATA_BLOB blob, chal1, chal2, auth;
uint8 challenge[8];
/* make sure the server understands kerberos */
for (i=0;OIDs[i];i++) {
DEBUG(3,("got OID=%s\n", OIDs[i]));
- if (strcmp(OIDs[i], "1 2 840 48018 1 2 2") == 0) {
+ if (strcmp(OIDs[i], OID_KERBEROS5_OLD) == 0) {
got_kerberos_mechanism = True;
}
free(OIDs[i]);
#include "includes.h"
-#define OID_SPNEGO "1 3 6 1 5 5 2"
-#define OID_KERBEROS5 "1 2 840 113554 1 2 2"
-
/*
generate a negTokenInit packet given a GUID, a list of supported
OIDs (the mechanisms) and a principle name string
fstring service;
char *realm;
DATA_BLOB tkt, tkt_wrapped, targ;
- const char *krb_mechs[] =
- {"1 2 840 48018 1 2 2", "1 3 6 1 4 1 311 2 2 10", NULL};
+ const char *krb_mechs[] = {OID_KERBEROS5_OLD, OID_NTLMSSP, NULL};
fstrcpy(service, principle);
p = strchr_m(service, '@');
asn1_end_tag(&data);
asn1_start_tag(&data,ASN1_CONTEXT(1));
- asn1_check_OID(&data, "1 3 6 1 4 1 311 2 2 10");
+ asn1_check_OID(&data, OID_NTLMSSP);
asn1_end_tag(&data);
asn1_start_tag(&data,ASN1_CONTEXT(2));