The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"PAM модуль работает странно"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"PAM модуль работает странно"  
Сообщение от DeGreez email(ok) on 05-Сен-06, 17:08 
Уважаемые господа!

Создал простейший тестовый PAM модуль вот он:

#include<unistd.h>
#include<fcntl.h>
#define PAM_SM_SESSION
#include<security/pam_modules.h>


int wrm(char * buf){
int fd;

if((fd=open("/test/ppp",O_WRONLY|O_CREAT))<0){return PAM_SESSION_ERR;}

if((write(fd,buf,strlen(buf)))!=strlen(buf)){close(fd);return PAM_SESSION_ERR;}
close(fd);
}


PAM_EXTERN int pam_sm_open_session(pam_handle_t *pamh, int flags, int argc, const char **argv){
char ** uname;
int res;
res = pam_get_user(pamh, uname, "Input your name: ");
if(res!=PAM_SUCCESS){return PAM_SESSION_ERR;}
wrm(*uname);
return PAM_SUCCESS;
}

Как видно, он имеет тип session и создает файл с именем пользователя в тестовой директории.
При включении в PAM-стек модуль прекрасно отрабатывает при логине по ssh.
Когда же я пытаюсь использовать его для логина к pop сервису он работает так: пропускает пользователя, даже если у него стоит флаг requisite(requred) но не создает никаких файлов.
Помогите чайнику!!!

Заранее спасибо

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "PAM модуль работает странно"  
Сообщение от int_0d on 05-Сен-06, 17:25 
а что возращает wrm() в обоих случаях?


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "PAM модуль работает странно"  
Сообщение от DeGreez email(??) on 05-Сен-06, 17:28 
>а что возращает wrm() в обоих случаях?
возвращает PAM_SUCCESS

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "PAM модуль работает странно"  
Сообщение от int_0d on 05-Сен-06, 17:39 
>>а что возращает wrm() в обоих случаях?
>возвращает PAM_SUCCESS
можно спросить каким фигом, если
1) судя по вашему коду вы не возвращаете PAM_SUCCESS в wmb()
2) вы вообше никак не анализируете код возврата wmb()  
      ?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

4. "PAM модуль работает странно"  
Сообщение от DeGreez email(??) on 05-Сен-06, 17:55 
>>>а что возращает wrm() в обоих случаях?
>>возвращает PAM_SUCCESS
> можно спросить каким фигом, если
>1) судя по вашему коду вы не возвращаете PAM_SUCCESS в wmb()
>2) вы вообше никак не анализируете код возврата wmb()
>      ?

да, вы, наверное, правы...
теперь в стек возвращаются значение PAM_SUCCESS из wrm().
правда, это ни на что не повлияло.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру