#include "libcli/resolve/resolve.h"
#include "lib/http/http.h"
#include "lib/util/util_net.h"
+#include "librpc/rpc/dcerpc_connection.h"
struct dcerpc_pipe_connect {
struct dcecli_connection *conn;
if (!composite_is_ok(c)) return;
s->io.conn->transport.transport = NCACN_HTTP;
- s->io.conn->transport.stream = stream;
- s->io.conn->transport.write_queue = queue;
- s->io.conn->transport.pending_reads = 0;
- s->io.conn->server_name = strupper_talloc(s->io.conn,
- s->target_hostname);
+ //s->io.conn->transport.stream = stream;
+ //s->io.conn->transport.write_queue = queue;
+ //s->io.conn->transport.pending_reads = 0;
+ //s->io.conn->server_name = strupper_talloc(s->io.conn,
+ // s->target_hostname);
+
+ s->io.conn->assoc = dcerpc_association_create(s->io.conn, 0);
+ if (composite_nomem(s->io.conn->assoc, c)) {
+ return;
+ }
+ s->io.conn->conn = dcerpc_connection_create(s->io.conn,
+ s->io.conn->assoc,
+ &stream);
+ if (composite_nomem(s->io.conn->conn, c)) {
+ return;
+ }
+ /*
+ * Windows uses 5840 for ncacn_http,
+ */
+ dcerpc_connection_set_max_fragment_sizes(s->io.conn->conn, 5840);
composite_done(c);
}