Bug 19544 - Не работает аутентификация при вызове cifsmount с -o sec=krb5, если указывается ip-адрес или не каноническое имя сервера
: Не работает аутентификация при вызове cifsmount с -o sec=krb5, если указывает...
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/samba-client)
: unstable
: all Linux
: P2 major
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2009-04-08 19:07 by
Modified: 2016-05-25 21:34 (History)


Attachments
Патч исправляющий проблему (1.54 KB, patch)
2009-04-08 19:07, rlz
no flags Details | Diff
Новый патч (1.49 KB, patch)
2009-04-09 14:26, rlz
no flags Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2009-04-08 19:07:26
Created an attachment (id=3434) [details]
Патч исправляющий проблему

Это связано с тем, что генерируется не правильное имя принципала внутри
cifs.upcall.
Патч с исправлением прилагаю.
------- Comment #1 From 2009-04-08 21:45:57 -------
Я не удовлетворен предложенным кодом. Если уж исправлять, то стоит постараться
сделать все, как надо.

Преобразование hostname делается в cifs_resolver, зачем его делать в разборе
опций? Я считаю, что код c getnameinfo() необходимо добавить в cifs_resolver(),
а getaddrinfo() там и так уже есть.

На каком основании базируется #define MAX_DNS_NAMELEN (15*(MAXHOSTNAMELEN +
1)+1)?
------- Comment #2 From 2009-04-09 14:26:35 -------
Created an attachment (id=3435) [details]
Новый патч
------- Comment #3 From 2009-04-09 14:30:10 -------
(В ответ на комментарий №1)
> Я не удовлетворен предложенным кодом. Если уж исправлять, то стоит постараться
> сделать все, как надо.
> 
> Преобразование hostname делается в cifs_resolver, зачем его делать в разборе
> опций? Я считаю, что код c getnameinfo() необходимо добавить в cifs_resolver(),
> а getaddrinfo() там и так уже есть.
В cifs_resolver оно делается совсем по другому поводу. А именно, когда cifs
просит разрезольвить имя компьютера в ip-адрес. Мой же патч делает корректным
имя принципала, которое генерируется, когда cifs просит положить сессионный
ключ.

> На каком основании базируется #define MAX_DNS_NAMELEN (15*(MAXHOSTNAMELEN +
> 1)+1)?
Убрано в новом патче.
------- Comment #4 From 2016-05-25 21:34:35 -------
не актуально