Нужна софтинка для граббинга мп3 файлов с сайта. Сайт укажу в ЛС.
Поддержка http over named pipes в apache 2.2 win32
Нужно добавить поддержку работы по протоколу HTTP к веб-серверу apache 2.2.x для виндовс.
Надо добавить поддержку ключа командной строки -P (кажется он свободен, если нет - возьмите другую букву) после которого может быть указано имя named pipe. Если этот ключ указан при запуске, то апач не должен создавать слушающий TCP сокет, а должен слушать только в named pipe с именем переданным после ключа -P. А если ключа -P не передано - то апач должен работать как обычно (принимать запросы через TCP).
Грубо говоря надо подменить код по пересылке данных по сети и работе с сокетами на код, который данные шлет либо по сети, либо через named pipe. То есть если апач работает в режиме HTTP over named pipe, то вместо accept вызывать CreateNamedPipeW+ConnectNamedPIpe, вместо close - DisconnectNamedPipe+CloseHandle, вместо select - WaitForSingleObject, вместо recv - ReadFile, вместо send - WriteFile .
Такое уже было сделано для apache 1.3.x - можем передать патчи чтобы было легче работать над веткой 2.2.
Модифицированный апач при использовании http over named pipe естествено должен уметь поддерживать несколько параллельных соединенией. Естественно все модули собранные для "обычного" апача должны работать и на этом модифицированном.
Работать оно должно на win2k и выше (поддержкой win95 не надо заморачиваться). Никаких новых утечек памяти ваши изменения не должны добавлять - при тестировании надо будет сделать 10тысяч запросов и убедиться что потребление памяти апачем не растет.
Для тестирования мы можем дать ab (apachebench) которая умеет общаться через named pipes. С помощью ab надо будет убедиться что апач через named pipe может работать с 20 запросами одновременно.
Еще моменты:
* Надо будет поддерживать unicode в имени named pipe.
* никаких новых зависимостей в апач добавляться не должно (например зависимость на .net, cygwin И тд).
* если на named pipe имя которой передано после -P уже слушает другой процесс, надо завершить выполнение с ошибкой.
* модифицированный апач должен нормально работать не под админским аккаунтом (оригинальный апач это может)
* добавлять коментарии в те строки в сырцах, которые добавляем
* дорабатывать надо последнюю версию в ветке 2.2
Выбранный исполнитель
Похожие заказы
- Системное программирование1 исполнительЗакрыт13 лет назад
ФТП-клиент под Линукс на Си
Системное программирование2 заявкиЗакрыт13 лет назадДля исполнителя, если все будет нормально то периодически буду давать задания работы на питоне. mailing_prepare.py – программа берет из таблицы рассылок письмо и по шаблону генерирует текст и вставляет его в таблицу ...
Системное программирование1 исполнительЗакрыт13 лет назадЕсть сайт на Виртуальном хостинге head.nicedi.com Перенесли на Выделенный о Ip его можно увидеть добавляем в hosts ...
Системное программирование2 заявкиЗакрыт13 лет назад- $200
Клиентское приложение для взаимодействия с удаленным сервером. Типы передачи данных. Запрос на сервер: через http протокол Ответ сервера: xml Специальная возможность: подключение к ftp и загрузка на компьютер пользователя указанного ...
Системное программирование4 заявкиЗакрыт13 лет назад Разработка файловой системы для fuse. Используемый язык: C Поддержка чтения/записи. Удаленный сервер возвращает JSON в ответ на GET/POST реквесты. Подробности в прикрепленном файле (англ.) Проект срочный. ...
Системное программированиенет заявокЗакрыт13 лет назад- $100
Нужно сконвертировать код энкодера JPEG с языка C# на C++. В коде на C# классу передается объект Bitmap, класс сохраняет переданный объект на диск в виде JPEG файла. В коде на ...
Системное программирование1 исполнительЗавершен13 лет назад Проект ведется на английском, знание английского на уровне достаточном для беглого чтения документации и переписки -- необходимое условие. The goal of this project is to develop a tool for off-line MITM testing ...
Системное программированиенет заявокЗакрыт13 лет назадЕсть такая задачка. есть почтовый сервер. Postfix. есть Imap-овский каталог с почтовыми файлами (письмами). необходимо выполнить пакетную обработку файлов а именно: 1)берем файл например md50000000996.msg ...
Системное программирование2 заявкиЗакрыт13 лет назадНеобходимо написать dll, которая определяла для окна IE, Firefox, Chrome и Safari адрес текущей открытой web-страницы, используя WinAPI. Т.е. на входе hwnd, на выходе URL просматриваемой страницы. Можно просто по активному ...
Системное программирование3 заявкиЗакрыт13 лет назад