only does anonymous connections.
%rename(pipe_connect) dcerpc_pipe_connect;
-NTSTATUS dcerpc_pipe_connect(struct dcerpc_pipe **OUT,
+NTSTATUS dcerpc_pipe_connect(TALLOC_CTX *parent_ctx,
+ struct dcerpc_pipe **OUT,
const char *binding,
const char *pipe_uuid,
uint32_t pipe_version,
- const char *domain,
- const char *username,
- const char *password);
+ struct cli_credentials *credentials);
%typemap(in) DATA_BLOB * (DATA_BLOB temp_data_blob) {
temp_data_blob.data = PyString_AsString($input);
%typemap(out) NTSTATUS {
$result = PyLong_FromUnsignedLong(NT_STATUS_V($1));
}
+
+%typemap(in) struct cli_credentials * {
+ $1 = cli_credentials_init(arg1);
+ cli_credentials_set_anonymous($1);
+// cli_credentials_set_workstation($1, "FROGURT", CRED_SPECIFIED);
+}
if not hasattr(module, 'runtests'):
print 'Module "%s" does not have a runtests function' % test
- module.runtests(binding, domain, username, password)
+ module.runtests(binding, (domain, username, password))
for domain in connect_handle.EnumDomains():
test_LookupDomain(pipe, connect_handle, domain)
-def runtests(binding, domain, username, password):
+def runtests(binding, creds):
print 'Testing SAMR pipe'
pipe = dcerpc.pipe_connect(binding,
- dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION),
- domain, username, password)
+ dcerpc.DCERPC_SAMR_UUID, int(dcerpc.DCERPC_SAMR_VERSION), creds)
handle = test_Connect(pipe)