winbind: Problem with calling name_to_sid() when a domain controller is rebooting

Jiu Zheng jiu at
Thu Oct 10 21:41:02 GMT 2002

I tested with winbindd 3.0 alpha-19 but believe alpha-20 must have the
same problem.

When you call name_to_sid() (in winbindd_cache.c) while a domain
controller is rebooting, you got NT_STATUS_SERVER_DISABLED for the most
of the time. But when the server is up but still not yet started Active
Directory services, winbindd could get something like:

  rpc: name_to_sid name=test
  write_socket_data: write failure. Error = Broken pipe
  write_socket: Error writing 198 bytes to socket 8: ERRNO = Broken pipe
  Error writing 198 bytes to client. -1
  cli_pipe: return critical error. Error was NT_STATUS_OK
  user 'test' does not exist

Then an invalid cache entry for 'test' is saved in cache until the domain
sequence number changes, So 'test' won't EXIST until then.

I think wcache_save_name_to_sid() shouldn't be called when this particular
error happens, but not quite sure where to fix it.

This problem can be easily reproduced by keep running `wbinfo -r <user>`
when the domain controller is rebooting.

Jiu Zheng
St Bernard Software

More information about the samba-technical mailing list