diff options
author | Robert Ancell <robert.ancell@canonical.com> | 2012-02-15 11:48:26 +1100 |
---|---|---|
committer | Robert Ancell <robert.ancell@canonical.com> | 2012-02-15 11:48:26 +1100 |
commit | 5abcd9c4939015454cfa09e24e3a3201678751a0 (patch) | |
tree | 8b819b7596e030ab0f054847ea198a2e3ff6996a /tests/src | |
parent | b64b70cdb59412e2a33dc1f28f934054bf4b5fc9 (diff) | |
download | lightdm-5abcd9c4939015454cfa09e24e3a3201678751a0.tar.gz |
Add a regression test to check PAM renaming users works
Diffstat (limited to 'tests/src')
-rw-r--r-- | tests/src/libsystem.c | 9 | ||||
-rw-r--r-- | tests/src/test-runner.c | 2 |
2 files changed, 9 insertions, 2 deletions
diff --git a/tests/src/libsystem.c b/tests/src/libsystem.c index 77b2c88e..63fb467f 100644 --- a/tests/src/libsystem.c +++ b/tests/src/libsystem.c @@ -339,10 +339,15 @@ pam_authenticate (pam_handle_t *pamh, int flags) free (resp); } - /* Special user dave has his home directory created on login */ + /* Special user 'dave' has his home directory created on login */ if (password_matches && strcmp (pamh->user, "dave") == 0) - { g_mkdir_with_parents (entry->pw_dir, 0755); + + /* Special user 'user0' changes user on authentication */ + if (password_matches && strcmp (pamh->user, "user0") == 0) + { + g_free (pamh->user); + pamh->user = g_strdup ("user1"); } if (password_matches) diff --git a/tests/src/test-runner.c b/tests/src/test-runner.c index c08e3954..6e088dab 100644 --- a/tests/src/test-runner.c +++ b/tests/src/test-runner.c @@ -1217,6 +1217,8 @@ main (int argc, char **argv) {"bob", "", TRUE, "Bob User", NULL, "us", NULL, "en_AU.utf8", 1001}, {"carol", "", TRUE, "Carol User", "alternative", "ru", "fr\toss;ru;", "fr_FR.UTF-8", 1002}, {"dave", "", FALSE, "Dave User", NULL, NULL, NULL, NULL, 1003}, + {"user0", "", TRUE, "User 0", NULL, NULL, NULL, NULL, 1004}, + {"user1", "", TRUE, "User 1", NULL, NULL, NULL, NULL, 1005}, {NULL, NULL, FALSE, NULL, NULL, NULL, NULL, NULL, 0} }; passwd_data = g_string_new (""); |