author | sandman <sandman> | 2002-12-17 19:41:05 (UTC) |
---|---|---|
committer | sandman <sandman> | 2002-12-17 19:41:05 (UTC) |
commit | 0e05c298cc4e5a5d509286e31a3a863e78c76456 (patch) (unidiff) | |
tree | 2a86553b593ff9690c14e1796c54c707f189fdf3 /core/opie-login/loginapplication.h | |
parent | 98f90f6ed89986485a1413c4325411e30f4c0693 (diff) | |
download | opie-0e05c298cc4e5a5d509286e31a3a863e78c76456.zip opie-0e05c298cc4e5a5d509286e31a3a863e78c76456.tar.gz opie-0e05c298cc4e5a5d509286e31a3a863e78c76456.tar.bz2 |
Opie login becomes useable now:
- pre- and post-session scripts (in $OPIEDIR/share/opie-login) to fix
things like device ownership to user/root
- logging in now doesn't simply mean: execute bin/qpe. instead opie-login
* first tries to execute ~/.opie-session
* if that doesn't exist $OPIEDIR/share/opie-login/opie-session
* if that fails too, execute $OPIEDIR/bin/qpe
you can now handle things like ssh-agent on a per-user basis.
(I'll commit the scripts later - for now it simply works like before)
Diffstat (limited to 'core/opie-login/loginapplication.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/opie-login/loginapplication.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/core/opie-login/loginapplication.h b/core/opie-login/loginapplication.h index 4e7cf79..d8264ea 100644 --- a/core/opie-login/loginapplication.h +++ b/core/opie-login/loginapplication.h | |||
@@ -19,49 +19,53 @@ | |||
19 | : = ...= . :.=- You should have received a copy of the GNU | 19 | : = ...= . :.=- You should have received a copy of the GNU |
20 | -. .:....=;==+<; General Public License along with this file; | 20 | -. .:....=;==+<; General Public License along with this file; |
21 | -_. . . )=. = see the file COPYING. If not, write to the | 21 | -_. . . )=. = see the file COPYING. If not, write to the |
22 | -- :-=` Free Software Foundation, Inc., | 22 | -- :-=` Free Software Foundation, Inc., |
23 | 59 Temple Place - Suite 330, | 23 | 59 Temple Place - Suite 330, |
24 | Boston, MA 02111-1307, USA. | 24 | Boston, MA 02111-1307, USA. |
25 | 25 | ||
26 | */ | 26 | */ |
27 | 27 | ||
28 | #ifndef __OPIE_LOGINAPPLICATION_H__ | 28 | #ifndef __OPIE_LOGINAPPLICATION_H__ |
29 | #define __OPIE_LOGINAPPLICATION_H__ | 29 | #define __OPIE_LOGINAPPLICATION_H__ |
30 | 30 | ||
31 | #include <sys/types.h> | ||
31 | #include <qstringlist.h> | 32 | #include <qstringlist.h> |
32 | |||
33 | #include <qpe/qpeapplication.h> | 33 | #include <qpe/qpeapplication.h> |
34 | 34 | ||
35 | #ifdef USEPAM | 35 | #ifdef USEPAM |
36 | struct pam_message; | 36 | struct pam_message; |
37 | struct pam_response; | 37 | struct pam_response; |
38 | #endif | 38 | #endif |
39 | 39 | ||
40 | class LoginApplication : public QPEApplication { | 40 | class LoginApplication : public QPEApplication { |
41 | public: | 41 | public: |
42 | LoginApplication ( int &argc, char **argv, pid_t parentpid ); | 42 | LoginApplication ( int &argc, char **argv, pid_t parentpid ); |
43 | 43 | ||
44 | static bool checkPassword ( const char *user, const char *password ); | 44 | static bool checkPassword ( const char *user, const char *password ); |
45 | 45 | ||
46 | static const char *loginAs ( ); | 46 | static const char *loginAs ( ); |
47 | static void setLoginAs ( const char *user ); | 47 | static void setLoginAs ( const char *user ); |
48 | 48 | ||
49 | static bool changeIdentity ( ); | 49 | static bool changeIdentity ( ); |
50 | static bool login ( ); | 50 | static bool login ( ); |
51 | static void logout ( ); | ||
51 | 52 | ||
52 | static QStringList allUsers ( ); | 53 | static QStringList allUsers ( ); |
53 | 54 | ||
54 | void quitToConsole ( ); | 55 | void quitToConsole ( ); |
55 | 56 | ||
57 | static bool runRootScript ( const char *base, const char *script, const char *param = 0 ); | ||
58 | static void execUserScript ( const char *base, const char *script ); | ||
59 | |||
56 | private: | 60 | private: |
57 | static const char *s_username; | 61 | static const char *s_username; |
58 | 62 | ||
59 | #ifdef USEPAM | 63 | #ifdef USEPAM |
60 | static int pam_helper ( int num_msg, const struct pam_message **msg, struct pam_response **resp, void * ); | 64 | static int pam_helper ( int num_msg, const struct pam_message **msg, struct pam_response **resp, void * ); |
61 | static const char *s_pam_password; | 65 | static const char *s_pam_password; |
62 | #endif | 66 | #endif |
63 | 67 | ||
64 | private: | 68 | private: |
65 | pid_t m_parentpid; | 69 | pid_t m_parentpid; |
66 | }; | 70 | }; |
67 | 71 | ||