Bug 38277

Summary: Проблема запуска apt-get через прокси сервер
Product: Sisyphus Reporter: pav <pav>
Component: aptAssignee: Ivan Zakharyaschev <imz>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: aen, boyarsh, cas, glebfm, imz, ldv, placeholder
Version: unstable   
Hardware: all   
OS: Linux   

Description pav@altlinux.org 2020-03-25 15:12:59 MSK
Проблема подключения через прокси сервер заключается в некорректном парсинге строк из файла /etc/apt/apt.conf или переменной окружения http_proxy, когда устанавливаемый пароль содержит символ @(0x40)

Предусматривается использование в формате
Acquire::http::Proxy "http://[user[:pass]@]host[:port]/";

Если в /etc/apt/apt.conf установлены параметры
Acquire::http::proxy "test:P@ssw0rd@10.0.5.213:3128/";
или установлена переменная http_proxy=http://test:P@ssw0rd@10.0.5.213:3128/
выдается ошибка
# apt-get update
Ошибка http://mirror.yandex.ru p9/branch/x86_64 release
  Could not resolve 'ssw0rd@10.0.5.213'
Ошибка http://mirror.yandex.ru p9/branch/x86_64-i586 release
  Could not resolve 'ssw0rd@10.0.5.213'

Замена символа @ на %40, также как использование \@, результата не дает.

По аналогии проблема может также касаться записей
Acquire::ftp::Proxy "ftp://[user[:pass]@]host[:port]/";
Acquire::rsync::proxy="[user[:pass]@]host[:port]";
Comment 1 pav@altlinux.org 2020-03-25 16:59:03 MSK
В /etc/apt/apt.conf прописано - 
Acquire::http::proxy "http://test:P@ssw0rd@10.0.5.213:3128/" вместо  "test:P@ssw0rd@10.0.5.213:3128/"
Comment 2 Andrey Cherepanov 2020-03-25 17:47:23 MSK
apt/apt-pkg/contrib/strutl.cc +1063