Bug 31794 - Failed to set password via net rpc: "The semaphore time-out period has expired"
Failed to set password via net rpc: "The semaphore time-out period has expired"
Status: CLOSED FIXED
Product: UCS Test
Classification: Unclassified
Component: Samba
unspecified
Other Linux
: P5 normal (vote)
: UCS 3.2
Assigned To: Stefan Gohmann
Arvid Requate
: interim-3
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-06-24 06:48 CEST by Stefan Gohmann
Modified: 2013-11-19 06:42 CET (History)
1 user (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Gohmann univentionstaff 2013-06-24 06:48:27 CEST
The test cases 50_samba/41password_change and 50_samba/40password-policies fail with the message "The semaphore time-out period has expired". I'm currently not sure if it is a Samba bug or an error in the test cases:


info 2013-06-23 20:33:24	 create user 89qgöbb7
Domain=[AUTOTEST090] OS=[Unix] Server=[Samba 3.6.8]
Failed to set password for '89qgöbb7' with error: The semaphore time-out period has expired..
error 2013-06-23 20:33:39	 Failed to change the password via net rpc
Comment 1 Arvid Requate univentionstaff 2013-07-03 17:40:34 CEST
This looks like a bizarre error in samba: Raising debug level to 10 and "password chat debug = yes" in smb.conf *sometimes* fixes the problem.

=============================================================================
[2013/06/20 22:09:09.121322, 10] rpc_server/samr/srv_samr_chgpasswd.c:237(dochild)
  Invoking '/usr/share/univention-admin-tools/univention-passwd --binddn "cn=admin,dc=ar311t2,dc=qa" --pwdfile "/etc/ldap.secret" --user "5h5edlkj"' as passw
ord change program.
[2013/06/20 22:09:15.153312, 10] lib/util_sock.c:352(read_fd_with_timeout)
  read_fd_with_timeout: timeout read. select timed out.
[2013/06/20 22:09:15.153441,  2] rpc_server/samr/srv_samr_chgpasswd.c:284(expect)
  expect: read error NT_STATUS_IO_TIMEOUT
[2013/06/20 22:09:15.153494, 100] rpc_server/samr/srv_samr_chgpasswd.c:309(expect)
  expect: expected [*New*password*] received [New password ] match yes
[2013/06/20 22:09:15.153539, 10] rpc_server/samr/srv_samr_chgpasswd.c:320(expect)
  expect: returning True
[2013/06/20 22:09:15.153606, 100] rpc_server/samr/srv_samr_chgpasswd.c:259(expect)
  expect: sending [ä32HbQD2
  ]
[2013/06/20 22:09:21.159859, 10] lib/util_sock.c:352(read_fd_with_timeout)
  read_fd_with_timeout: timeout read. select timed out.
[2013/06/20 22:09:21.160022,  2] rpc_server/samr/srv_samr_chgpasswd.c:284(expect)
  expect: read error NT_STATUS_IO_TIMEOUT
[2013/06/20 22:09:21.160074, 100] rpc_server/samr/srv_samr_chgpasswd.c:309(expect)
  expect: expected [*Re-enter*new*password*] received [Re-enter new password ] match yes
[2013/06/20 22:09:21.160118, 10] rpc_server/samr/srv_samr_chgpasswd.c:320(expect)
  expect: returning True
[2013/06/20 22:09:21.160184, 100] rpc_server/samr/srv_samr_chgpasswd.c:259(expect)
  expect: sending [ä32HbQD2
  ]
[2013/06/20 22:09:21.265683,  2] rpc_server/samr/srv_samr_chgpasswd.c:284(expect)
  expect: read error NT_STATUS_IO_DEVICE_ERROR
[2013/06/20 22:09:21.265750, 100] rpc_server/samr/srv_samr_chgpasswd.c:309(expect)
  expect: expected [*password*changed*] received [password changed
  ] match yes
[2013/06/20 22:09:21.265792, 10] rpc_server/samr/srv_samr_chgpasswd.c:320(expect)
  expect: returning True
[2013/06/20 22:09:21.265863,  3] rpc_server/samr/srv_samr_chgpasswd.c:496(chat_with_program)
  chat_with_program: Password change successful for user 5h5edlkj
=============================================================================

As seen in this log the unix password sync program runs ok though, and the password get's changed fine, an LDAP-bind with the new password works.
I now adjusted the test to just report the error but continue if everything else works fine afterwards.
Comment 2 Stefan Gohmann univentionstaff 2013-08-09 08:40:42 CEST
But the test still fails:

Fehlermeldung

Test failed

Standard Ausgabe (STDOUT)

----create user
Object created: uid=wök1nuzs,cn=users,dc=autotest090,dc=local
Waiting for replication:
OK: replication complete (nid=6133 lid=6133)
Done: replication complete.
----net rpc:test normal connection

----set pwdChangeNextLogin=1
Waiting for replication:
OK: replication complete (nid=6134 lid=6134)
Done: replication complete.
----net rpc: try to login without changing the password (should fail)
----changing the password with net rpc
----net rpc:try to login with a new password
Unable to find a suitable server for domain AUTOTEST090
----net rpc:try to login with old password (should fail)
----UDM:try to login with old password (should fail)
----UDM:try to login with new password
Object removed: uid=wök1nuzs,cn=users,dc=autotest090,dc=local

Standard Fehler (STDERR)

info 2013-08-08 20:24:23	 create user wök1nuzs
Unable to find a suitable server for domain AUTOTEST090
error 2013-08-08 20:24:26	 initial authentification failed
error 2013-08-08 20:24:26	 **************** Test failed above this line (1) ****************
Unable to find a suitable server for domain AUTOTEST090
Failed to set password for 'wök1nuzs' with error: The semaphore time-out period has expired..
error 2013-08-08 20:24:42	 net rpc user password change returned a non-zero exit code: 0. Continuing anyway, see Bug #31794
error 2013-08-08 20:25:47	 *** Check failed (1), but this might be caused by the error above ***
Unable to find a suitable server for domain AUTOTEST090
info 2013-08-08 20:25:50	 remove user wök1nuzs
debug 2013-08-08 20:25:50	 user wök1nuzs removed
info 2013-08-08 20:25:50	 checking whether the user wök1nuzs is really removed
debug 2013-08-08 20:25:50	 user wök1nuzs does not exist

See http://jenkins.knut.univention.de:8080/job/UCS%203.2%20Autotest%20MultiEnv/84/SambaVersion=s3,Systemrolle=master/testReport/%28root%29/50_samba_40password-policies/Test_whether_it_works_to_set_a_password_policy/
Comment 3 Stefan Gohmann univentionstaff 2013-09-10 06:47:46 CEST
It still fails but with a different error message:

*** BEGIN *** ['/bin/bash', '41password_change'] ***
----create user
info 2013-09-09 15:08:45	 create user 13tkixj0
Object created: uid=13tkixj0,cn=users,dc=autotest104,dc=local
Waiting for replication:
OK: replication complete (nid=528 lid=528)
Done: replication complete.
----test normal connection with smbclient
Domain=[AUTOTEST104] OS=[Unix] Server=[Samba 4.1.0rc2-UNKNOWN-Debian]
OK
----changing the password with net rpc
net rpc user password 13tkixj0 nvJJMyZj1AÄÜÖ -UAdministrator%univention
----test login with udm with new password
error 2013-09-09 15:09:08	 Could not authentificate with UDM after password change with smbpasswd.
----change the password with udm
error 2013-09-09 15:09:08	 **************** Test failed above this line (1) ****************
Waiting for replication:
OK: replication complete (nid=530 lid=530)
Done: replication complete.
----test login with smbclient with new password
Domain=[AUTOTEST104] OS=[Unix] Server=[Samba 4.1.0rc2-UNKNOWN-Debian]
info 2013-09-09 15:09:09	 remove user 13tkixj0
Object removed: uid=13tkixj0,cn=users,dc=autotest104,dc=local
debug 2013-09-09 15:09:09	 user 13tkixj0 removed
info 2013-09-09 15:09:09	 checking whether the user 13tkixj0 is really removed
debug 2013-09-09 15:09:09	 user 13tkixj0 does not exist
*** END *** 1 ***

Maybe the umlauts are a problem?I've removed the apptest flag from the test case.
Comment 4 Stefan Gohmann univentionstaff 2013-10-02 11:19:08 CEST
(In reply to Stefan Gohmann from comment #2)
> Unable to find a suitable server for domain AUTOTEST090
> error 2013-08-08 20:24:26	 initial authentification failed

I think this has been fixed with Bug #32745

(In reply to Stefan Gohmann from comment #3)
> It still fails but with a different error message:
> ----changing the password with net rpc
> net rpc user password 13tkixj0 nvJJMyZj1AÄÜÖ -UAdministrator%univention
> ----test login with udm with new password
> error 2013-09-09 15:09:08	 Could not authentificate with UDM after password
> change with smbpasswd.
> ----change the password with udm
> error 2013-09-09 15:09:08	 **************** Test failed above this line (1)
> ****************

net rpc needs the parameter "-S $ldap_master".
Comment 5 Arvid Requate univentionstaff 2013-10-21 18:03:58 CEST
Verified:
 * The test now succeeds consistently.
 * Changelog ok.
Comment 6 Stefan Gohmann univentionstaff 2013-11-19 06:42:49 CET
UCS 3.2 has been released:
 http://docs.univention.de/release-notes-3.2-en.html
 http://docs.univention.de/release-notes-3.2-de.html

If this error occurs again, please use "Clone This Bug".