Ignore:
Timestamp:
Nov 27, 2012, 4:43:17 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: updated trunk to 3.6.0

Location:
trunk/server
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/server

  • trunk/server/source4/libcli/smb_composite/appendacl.c

    r414 r745  
    255255       
    256256        state->io_open->ntcreatex.level               = RAW_OPEN_NTCREATEX;
    257         state->io_open->ntcreatex.in.root_fid = 0;
     257        state->io_open->ntcreatex.in.root_fid.fnum    = 0;
    258258        state->io_open->ntcreatex.in.flags            = 0;
    259259        state->io_open->ntcreatex.in.access_mask      = SEC_FLAG_MAXIMUM_ALLOWED;
  • trunk/server/source4/libcli/smb_composite/connect.c

    r414 r745  
    3131#include "librpc/gen_ndr/ndr_nbt.h"
    3232#include "param/param.h"
     33#include "lib/util/util_net.h"
    3334
    3435/* the stages of this call */
    35 enum connect_stage {CONNECT_RESOLVE,
    36                     CONNECT_SOCKET,
     36enum connect_stage {CONNECT_SOCKET,
    3737                    CONNECT_SESSION_REQUEST,
    3838                    CONNECT_NEGPROT,
     
    324324        /* the socket is up - we can initialise the smbcli transport layer */
    325325        state->transport = smbcli_transport_init(state->sock, state, true,
    326                                                  &io->in.options, io->in.iconv_convenience);
     326                                                 &io->in.options);
    327327        NT_STATUS_HAVE_NO_MEMORY(state->transport);
    328328
     
    363363
    364364/*
    365   called when name resolution is finished
    366 */
    367 static NTSTATUS connect_resolve(struct composite_context *c,
    368                                 struct smb_composite_connect *io)
    369 {
    370         struct connect_state *state = talloc_get_type(c->private_data, struct connect_state);
    371         NTSTATUS status;
    372         const char *address;
    373 
    374         status = resolve_name_recv(state->creq, state, &address);
    375         NT_STATUS_NOT_OK_RETURN(status);
    376 
    377         state->creq = smbcli_sock_connect_send(state, address,
    378                                                io->in.dest_ports,
    379                                                io->in.dest_host,
    380                                                NULL, c->event_ctx,
    381                                                   io->in.socket_options);
    382         NT_STATUS_HAVE_NO_MEMORY(state->creq);
    383 
    384         state->stage = CONNECT_SOCKET;
    385         state->creq->async.private_data = c;
    386         state->creq->async.fn = composite_handler;
    387 
    388         return NT_STATUS_OK;
    389 }
    390 
    391 
    392 /*
    393365  handle and dispatch state transitions
    394366*/
     
    398370
    399371        switch (state->stage) {
    400         case CONNECT_RESOLVE:
    401                 c->status = connect_resolve(c, state->io);
    402                 break;
    403372        case CONNECT_SOCKET:
    404373                c->status = connect_socket(c, state->io);
     
    462431        struct composite_context *c;
    463432        struct connect_state *state;
    464         struct nbt_name name;
    465433
    466434        c = talloc_zero(mem_ctx, struct composite_context);
     
    479447        c->private_data = state;
    480448
    481         state->stage = CONNECT_RESOLVE;
    482         make_nbt_name_server(&name, io->in.dest_host);
    483         state->creq = resolve_name_send(resolve_ctx, state, &name, c->event_ctx);
    484 
     449        state->creq = smbcli_sock_connect_send(state,
     450                                               NULL,
     451                                               io->in.dest_ports,
     452                                               io->in.dest_host,
     453                                               resolve_ctx, c->event_ctx,
     454                                               io->in.socket_options);
    485455        if (state->creq == NULL) goto failed;
     456
     457        state->stage = CONNECT_SOCKET;
    486458        state->creq->async.private_data = c;
    487459        state->creq->async.fn = composite_handler;
  • trunk/server/source4/libcli/smb_composite/fetchfile.c

    r414 r745  
    147147        state->connect->in.workgroup    = io->in.workgroup;
    148148        state->connect->in.gensec_settings = io->in.gensec_settings;
    149         state->connect->in.iconv_convenience = io->in.iconv_convenience;
    150149
    151150        state->connect->in.options      = io->in.options;
  • trunk/server/source4/libcli/smb_composite/fsinfo.c

    r414 r745  
    154154        state->connect->in.fallback_to_anonymous = false;
    155155        state->connect->in.workgroup    = io->in.workgroup;
    156         state->connect->in.iconv_convenience = io->in.iconv_convenience;
    157156        state->connect->in.gensec_settings = io->in.gensec_settings;
    158157
  • trunk/server/source4/libcli/smb_composite/smb_composite.h

    r414 r745  
    6161                struct smbcli_session_options session_options;
    6262                struct resolve_context *resolve_ctx;
    63                 struct smb_iconv_convenience *iconv_convenience;
    6463                struct gensec_settings *gensec_settings;
    6564        } in;
     
    105104                struct smbcli_options options;
    106105                struct smbcli_session_options session_options;
    107                 struct smb_iconv_convenience *iconv_convenience;
    108106                struct gensec_settings *gensec_settings;
    109107        } in;
     
    146144                const char *workgroup;
    147145                enum smb_fsinfo_level level;
    148                 struct smb_iconv_convenience *iconv_convenience;
    149146                struct gensec_settings *gensec_settings;
    150147        } in;
     
    182179                const char **hostnames;
    183180                const char **addresses;
    184                 int *ports;     /* Either NULL for lp_smb_ports() per
     181                int *ports;     /* Either NULL for lpcfg_smb_ports() per
    185182                                 * destination or a list of explicit ports */
    186183        } in;
Note: See TracChangeset for help on using the changeset viewer.