LINUX.ORG.RU
ФорумAdmin

Кириллица openLdap


0

0

Здравствуйте форумчане. Возникла необходимость хранить в лдапе Ф.И.О. пользователей. Сколько не пытался не позволяет. Подскажите какк это можно сделать. Млжет в кодировке другой? Я добавляю их самописным перл-скриптегом - т.е. в стандартной консольной кодировке: KOI8-R. Где-то кто-то когдато мне сказал что он нуждается в utf8. Подскажите кто знает.

anonymous

лдап конечно круто, но может всётаки SQL?

а вообще ты её сначала хоть родными консольными утилитами заведи (они-то уж поди сами с кодировкой разберутся), потом уж через перловые биндинги (заодно не забудь почитать как в перле локаль выставляется, мало ли...)

LowLevel
()

> Где-то кто-то когдато мне сказал что он нуждается в utf8.
а что проверить не судьба?
тем более в самописном перл-скриптинге это как два пальца..

anonymous2 ★★★★★
()

Там всё в UTF8 да ещё в base64, к тому же одна строка при большой длине может быть разрезана на несколько. Раскодировать можно, например awk скриптом:

function printrec(R,H,T)
{
if (-1!=T)
{
if (1==T)
{
print R |& CMD; close(CMD,"to");
CMD |& getline R; close (CMD);
}
if (SLNT) print R;
else print H " " R;
}
T=-1;
}
BEGIN {T=-1; CMD="recode utf8/base64";}
/^ / {RET=RET $1;}
/^\w/ {printrec(RET,HDR,T); HDR=$1; RET=$2;}
/^\w+:: / {T=1;}
/^\w+: / {T=0;}

ЗЫ: кто знает как это сделать лучше и без перла - киньте скрипт

AnyKey
()
Ответ на: комментарий от AnyKey

Если дело касается самбы,openLDAP и smbldap-useradd, то никакими известными способами вписать туда реальное имя пользователя не получилось. Получилось так - в консоли с кодировкой cp1251 (через putty например) заводится пользователь smbldap-useradd -a login ..... а затем pdbedit -r -f "$username" $login` Где $username Реальное имя пользователя в кодировке Cp1251. Тогда русские буквы верно отображаются во всех клиентах LDAP(phpLDAPAdmin, Softera LDAP Administrator 3.3).

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.