W2k SP2 joining domain: "The procedure number is out of range"

jpmg at eng.cam.ac.uk jpmg at eng.cam.ac.uk
Wed Jun 6 12:34:25 GMT 2001


I have a samba-2.2.0 server (originally the released distribution, now
updated to cvs-as-it-was-yesterday), managing a domain with several
NT4 client workstations very happily.

A W2k machine (initially no service packs, now SP2) refuses to join
the domain, popping up the error "The procedure number is out of
range".

A look through the samba-technical archives suggests I'm not alone 8-)

I'm currently doing this with the relevant machine account added to
the samba server's own password file, and added by hand to the
smbpasswd file with "smbpasswd -m -a MACHINE" .  I've also tried
various other combinations of arrangement (trying to allow the account
to be created on demand).  I'm specifying a domain account that is
root on the samba server, as the "account with permission to add to
the domain".

I have a log file at debuglevel=10 of the resulting attempt to join
the domain, but I'm not quite sure how to interpret it.  As far as I
can tell, the only bad looking error condition occurs at a point when
the client machine attempts a remote api call to a named pipe that
has already been opened, but has since been closed ...

Basically, at earlier points in the transaction, we've done things along
the lines of (hoping I've grabbed enough context around the particular
lines that are messing with the relevant pipe (name=samr, pnum=7028)):


[2001/06/06 10:31:48, 3] smbd/process.c:switch_message(650)
  switch message SMBtrans (pid 53612)
[2001/06/06 10:31:48, 4] smbd/uid.c:become_user(119)
  Skipping become_user - already user
[2001/06/06 10:31:48, 3] smbd/ipc.c:reply_trans(482)
  trans <\PIPE\> data=44 params=0 setup=2
[2001/06/06 10:31:48, 5] smbd/ipc.c:reply_trans(493)
  calling named_pipe
[2001/06/06 10:31:48, 3] smbd/ipc.c:named_pipe(334)
  named pipe command on <> name
[2001/06/06 10:31:48, 5] smbd/ipc.c:api_fd_reply(275)
  api_fd_reply
[2001/06/06 10:31:48, 4] rpc_server/srv_pipe_hnd.c:get_rpc_pipe(952)
  search for pipe pnum=7028
[2001/06/06 10:31:48, 5] rpc_server/srv_pipe_hnd.c:get_rpc_pipe(956)
  pipe name samr pnum=7028 (pipes_open=1)
[2001/06/06 10:31:48, 3] smbd/ipc.c:api_fd_reply(296)
  Got API command 0x26 on pipe "samr" (pnum 7028)api_fd_reply: p:0x820b000 max_t

and repetitions of the same ... , and then what appears to be a
request to shut down that named pipe.

[2001/06/06 10:31:48, 3] smbd/process.c:switch_message(650)
  switch message SMBclose (pid 53612)
[2001/06/06 10:31:48, 4] smbd/uid.c:become_user(119)
  Skipping become_user - already user
[2001/06/06 10:31:48, 4] rpc_server/srv_pipe_hnd.c:get_rpc_pipe(952)
  search for pipe pnum=7028
[2001/06/06 10:31:48, 5] rpc_server/srv_pipe_hnd.c:get_rpc_pipe(956)
  pipe name samr pnum=7028 (pipes_open=1)
[2001/06/06 10:31:48, 5] smbd/pipes.c:reply_pipe_close(257)
  reply_pipe_close: pnum:7028
[2001/06/06 10:31:48, 10] rpc_server/srv_lsa_hnd.c:close_policy_by_pipe(222)
  close_policy_by_pipe: deleted handle list for pipe samr
[2001/06/06 10:31:48, 4] rpc_server/srv_pipe_hnd.c:close_rpc_pipe_hnd(916)
  closed pipe name samr pnum=7028 (pipes_open=0)
[2001/06/06 10:31:48, 5] lib/util.c:show_msg(292)
  size=35
  smb_com=0x4
  smb_rcls=0
  smb_reh=0
  smb_err=0
  smb_flg=136
  smb_flg2=1
[2001/06/06 10:31:48, 5] lib/util.c:show_msg(298)
  smb_tid=1
  smb_pid=65279
  smb_uid=100
  smb_mid=3136
  smt_wct=0
[2001/06/06 10:31:48, 5] lib/util.c:show_msg(308)
  smb_bcc=0

and finally (hoping I've grabbed the relevant bits ...), a further attempt
to use the named pipe that's already been shut down.

[2001/06/06 10:31:49, 3] smbd/process.c:switch_message(650)
  switch message SMBtrans (pid 53612)
[2001/06/06 10:31:49, 4] smbd/uid.c:become_user(119)
  Skipping become_user - already user
[2001/06/06 10:31:49, 3] smbd/ipc.c:reply_trans(482)
  trans <\PIPE\> data=44 params=0 setup=2
[2001/06/06 10:31:49, 5] smbd/ipc.c:reply_trans(493)
  calling named_pipe
[2001/06/06 10:31:49, 3] smbd/ipc.c:named_pipe(334)
  named pipe command on <> name
[2001/06/06 10:31:49, 5] smbd/ipc.c:api_fd_reply(275)
  api_fd_reply
[2001/06/06 10:31:49, 4] rpc_server/srv_pipe_hnd.c:get_rpc_pipe(952)
  search for pipe pnum=7028
[2001/06/06 10:31:49, 1] smbd/ipc.c:api_fd_reply(292)
  api_fd_reply: INVALID PIPE HANDLE: 7028
[2001/06/06 10:31:49, 3] smbd/ipc.c:api_no_reply(254)
  Unsupported API fd command
[2001/06/06 10:31:49, 5] smbd/ipc.c:copy_trans_params_and_data(65)
  copy_trans_params_and_data: params[0..4] data[0..0]
[2001/06/06 10:31:49, 5] lib/util.c:show_msg(292)
  size=60
  smb_com=0x25
  smb_rcls=0
  smb_reh=0
  smb_err=0
  smb_flg=136
  smb_flg2=1
[2001/06/06 10:31:49, 5] lib/util.c:show_msg(298)
  smb_tid=1
  smb_pid=212
  smb_uid=100
  smb_mid=3200
  smt_wct=10

which, apart from the fact that it makes very little sense to me, suggests
that the samr pipe is getting closed earlier than it should be?


Apologies if I'm completely missing the point with this one.  I
suspect that I'm focusing at the wrong level (ie there's a more
abstract failure that causes this sequence of events).  I can provide
a complete logfile for the interaction if requested ...

-patrick.




More information about the samba-technical mailing list