Войти

Показать полную графическую версию : [решено] squid и доменная авторизация AD с русскими логинами


skeletor
12-10-2010, 13:58
Есть squid 3.1, настроена доменная авторизация через AD (2008 сервер). Кодировка на сервере KOI8-R. Всё нормально работает, только вот в логах отображается вот такое (вместо имени пользователя):
%25d3%25d4%25cf%25cc%25c5%25d4%25ce%25c5%25d7%25c1
Пробовал декодировать и гуглом и штирлицом - не получается. Есть ли способ как-то конвертировать это матюк в что-то читабельное?

ПС. Не спрашивайте зачем так сделали (было уже до меня), я сам плююсь на это.

skeletor
13-10-2010, 13:12
Вот несколько вариантов (подсказали на форуме)

1) echo "%25d3%25d4%25cf%25cc%25c5%25d4%25ce%25c5%25d7%25c1" | awk '{gsub(/%25/, " 0x", $0); FS=" "; for(i=1; i<=NF; i++) printf "%c", $i; print ""}' -
2) echo '%25d3%25d4%25cf%25cc%25c5%25d4%25ce%25c5%25d7%25c1' | perl -pe ' s/%25([a-f0-9]{2,2})/chr(hex($1))/eg;' | recode -f koi8-r..utf-8
3) $ s=""; for i in d3 d4 cf cc c5 d4 ce c5 d7 c1; do o=`printf "%o" 0x$i`; c=`printf "\0$o"`; s=${s}${c}; done; echo "$s"
4) printf '%b\n' "$(echo '%25d3%25d4%25cf%25cc%25c5%25d4%25ce%25c5%25d7%25c1' | sed 's/%25/\\x/g')" | iconv -f koi8-r




© OSzone.net 2001-2012