LINUX.ORG.RU

Сообщения provaton

 

Hash-DoS уязвимость в btrfs

Форум — Talks

http://crypto.junod.info/2012/12/13/hash-dos-and-btrfs/

Для Ъ - умелец создал скрипт, который создает в одной директории небольшое кол-во файлов со специальными именами, на удаление которых тратится дохрена процессорного времени (эксперимент прервали после 220 минут, судя по всему система вошла в бесконечный цикл).

Причина - использование слабого алгоритма хеширования CRC32 и использование структур данных с высокой сложностью в наихудшем случае (worst-case complexity, как будет по-русски нормально?)

Разрабы уведомлены, баг признали, обещают починить в следующем релизе ядра.

ЗЫ - проверил у себя, не воспроизводится.

 ,

provaton
()

Вышел Bison 2.7

Новости — Open Source
Группа Open Source

Представлен новый релиз генератора грамматического разбора Bison 2.7. Bison поддерживает следующие языки программирования: C, C++ и Java. В релиз вошли следующие изменения:

  • Исправления ошибок:
    • исправлено предупреждение о неинициализированной переменной yylloc;
    • восстановлена совместимость с C90.
  • В генераторе представления парсера в виде графа улучшено отображение состояний — они теперь имеют прямоугольную форму, четко виден номер состояния, пункты списка пронумерованы и выровнены. Редукции изображены как переходы к ромбовидным узлам графа.
  • Улучшены возможности форматирования сообщений об ошибках, в частности поддерживается указание на место ошибки в строке с помощью символов «^^^^».
  • Улучшена поддержка «чистых» (реентерабельных) парсеров.
  • Добавлена возможность использования пользовательских типов местоположения (с помощью переменной api.location.type).
  • В парсере larl1.cc добавлен код, обрабатывающий исключения.
  • Поддержка %language больше не является экспериментальной.
  • Улучшена документация.

>>> Подробности

 ,

provaton
()

Использовании библиотеки на C++

Форум — Development

Возможно ли как-то использовать в хаскелле библиотеку, написанную на C++ (а именно exiv2)? Нагуглилось только такое - http://www.haskell.org/haskellwiki/CPlusPlusFromHaskell, но мне не кажется это нормальным решением.

 , ,

provaton
()

Предупреждение о отсутствии сигнатур типов

Форум — Development

ghc при использовании -Wall выдает предупреждение об отсутсвии сигнатур типов для определений на верхнем уровне (Top-level binding with no type signature). У меня пока опыт с хаскеллом небольшой, но регулярно встречаются ситуации, когда надо определить на верхнем уровне какую-то тривиальную функцию, для которых указывать явно тип не вижу смысла - только затрудняет чтение кода лишней очевидной инфой.

Хотел бы спросить у опытных хаскеллистов - действительно ли полезно всегда указывать сигнатуру на верхем уровне, или лучше отключить этот ворнинг? Под полезно - я понимаю какую-то ощутимую полезность, а не удовлетворение эстетических прихотей какого-то академического старпера.

 ,

provaton
()

Просьба запретить анонимусов

Форум — Linux-org-ru

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

 

provaton
()

Вышел GNU Guile 2.0.7

Новости — Open Source
Группа Open Source

Вышла новая версия реализации языка Scheme — GNU Guile 2.0.7. Несмотря на незначительное изменение номера версии, появились несколько интересных нововведений, а именно:

  • Полная поддержка инфиксных выражений (curly-infix-expressions). Теперь вместо (* a (+ b c)) можно писать {a * {b + c}}.
  • Поддержка разных опции чтения (read option) для разных портов.
  • Поддержка вложенных директив future.
  • Специальный синтаксис для добавления путей в переменные окружения GUILE_LOAD_PATH и GUILE_LOAD_COMPILED_PATH в конец списка путей, а не в начало.
  • Исправлен недочет в функции load-in-vicinity, которая не сканировала директории, установленные в переменной %load-compiled-path.
  • Исправлен порядок поиска расширений. Теперь Guile не изменяет для этого переменную окружения LD_LIBRARY_PATH.
  • Функция make-vtable-vtable помечена устаревшей, рекомендуется использовать make-vtable и <standard-vtable>.
  • Оптимизированы вызовы equal? и eqv? для случаев, когда один из аргументов — константа.
  • Новые предупреждения компилятора -Wduplicate-case-datum и -Wbad-case-datum.
  • Многочисленные незначительные улучшения и исправления ошибок.

>>> Подробности

 , , ,

provaton
()

Вышел Nmap 6.25

Новости — Open Source
Группа Open Source

Вышла новая версия популярного сетевого сканера Nmap 6.25. Многие нововведения были разработаны пятью студентами, трудившимися все лето по программе Google Summer of Code. Краткий список новшеств:

  • Добавлено 373 отпечатков (fingerprints) операционных систем. Теперь общее их число достигло 3946.
  • Добавлено 400 отпечатков сетевых сервисов. Общее их число достигло 8645.
  • Добавлены отпечатки операционных систем для протокола IPv6. Разработчики отмечают, что их все еще недостаточно, и просят администраторов сетей, работающих по этому протоколу, помочь с наполнением базы.
  • Добавлена поддержка traceroute для IPv6.
  • Добавлена поддержка возврата структурированной информации для скриптов, которая впоследствии выводится в формате XML.
  • Добавлены новые системы I/O: kqueue и poll, значительно увеличивающие быстродействие для операционных систем, отличных от Linux (в нем используется epoll). Также оставлена поддержка select.
  • Язык скриптового движка обновлен с Lua 5.1 до Lua 5.2.1.
  • Добавлено 85 новых NSE-скриптов.
  • Добавлена поддержка 12 новых протоколов для NSE.
  • Множество мелких улучшений и багфиксов.

>>> Подробности

 , ,

provaton
()

всесторонняя критика PHP

Форум — Talks

Нашел прикольную статью с всесторонней и аргументированной критикой языка программирования PHP - http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ Рекомендуется к прочтению всем, кто собирается изучать этот ЯП, с целью направить их энергию в более полезное русло.

Маленький отрывок для Ъ:

Что делает вот этот код?

  @fopen('http://example.com/not-existing-file', 'r');
  • Если PHP был скомпилирован с опцией --disable-url-fopen-wrapper, он не будет работать (при этом документация говоря «it won't work» не поясняет, каким именно образом он не будет работать: вернет null, выбросит исключение, и т. д.)
  • Если allow_url_fopen в php.ini выключен, то код тоже не будет работать, при этом совершенно непонятно как именно.
  • Из-за @ предупреждение о несуществующем файле не выведется
  • Но если scream.enabled включен в php.ini, то предупреждение выведется
  • Или если scream.enabled включен через ini_set.
  • Но оно не выведется, если задан неправильный error_reporting
  • Куда именно выведется предупреждение сказать нельзя, так как это зависит от опции display_errors в php.ini. Которая может быть переопределена через ini_set

Таким образом, не зная опций компиляции, системных настроек и настроек на уровне приложения, нельзя сказать даже приблизительно как себя поведет простейший кусок кода.

Update: Полный перевод статьи на русский - http://habrahabr.ru/post/142140/

 ,

provaton
()

Опасная удаленная уязвимость в Samba

Новости — Безопасность
Группа Безопасность

Разработчики Samba сообщают, что в их продукте (в версиях 3.0.x — 3.6.3 включительно) обнаружена опасная удаленная уязвимость. В коде, который отвечает за сериализацию и десериализацию данных для RPC-вызовов обнаружена ошибка проверки размера массива, что позволяет с помощью специально сформированного RPC-запроса выполнить произвольный код на сервере.

Уязвимость опасна тем, что ее может использовать анонимный пользователь не проходя процедуру аутентификации. Поэтому разработчики рекомендуют всем пользователям Samba обновиться как можно скорее. В связи с исключительностью ситуации, разработчики предоставили патчи даже для неподдерживаемых версий (вплоть до 3.0.*).

В случае невозможности оперативно установить новую версию разработчики рекомендуют использовать параметр конфигурации hosts allow для ограничения доступа к серверу неавторизованных пользователей.

>>> Подробности

 , ,

provaton
()

Вышел PostGIS 2.0.0

Новости — Open Source
Группа Open Source

После 26 месяцев напряжённой работы вышла новая мажорная версия расширения СУБД PostgreSQL для работы с географическими объектами — PostGIS 2.0.0. PostGIS предоставляет набор типов и функций, которые позволяют использовать СУБД PostgreSQL в качестве бекенда для геоинформационных систем. Разработка PostGIS ведётся в соответствии со стандартами и спецификациями OpenGIS.

Список нововведений:

  • Поддержка растровых данных, растрового и векторного анализа.
  • Топологические модели с поддержкой общих границ.
  • Интеграция с typmod для автоматического создания таблицы geometry_columns.
  • 3D и 4D индексация.
  • Основанный на индексации быстрый поиск соседей.
  • Новые функции: ST_Split, ST_Node, ST_MakeValid, ST_OffsetCurve, ST_ConcaveHull, ST_AsX3D, ST_GeomFromGeoJSON, ST_3DDistance.
  • Улучшения в дампере и загрузчике шейп-файлов.
  • Поддержка мульти-файлового импорта и экспорта в GUI.
  • Геокодер оптимизирован для бесплатных данных US Census TIGER (2010).

>>> Подробности

 , , ,

provaton
()

Профит от приема крупных спортивных соревнований

Форум — Talks

Есть ли какой-то профит от приема страной крупных спортивных соревнований? Почему-то все очень стремятся отхватить какой-то чемпионат по ногомячу, или олимпиаду. Зачем? Есть ли в этом экономический смысл? Вот в Греции фактически с приема олимпиады начался сложнейший кризис.

Конечно, один из самых очевидных вариантов - возможность распила. Но ведь развитые страны, где не пилят, тоже постоянно борются за очередную сходку легкоатлетов и их неадекватных поклонников.

 

provaton
()

Вышел StarPU 1.0.0

Новости — Open Source
Группа Open Source

StarPU — набор расширений GCC, предназначенный для облегчения разработки приложений для гетерогенных многопроцессорных систем, например, для компьютеров с программируемым GPU. StarPU позволяет создавать унифицированные абстрактные задания, называемые codelet, при этом может быть указано, на какой архитектуре может быть запущен каждый codelet. При этом, обернуть уже написанные функции в codelet не составляет особого труда. Это делает возможным быструю адаптацию уже существующего кода для гетерогенных систем.

StarPU самостоятельно определяет самый эффективный порядок исполнения заданий, что позволяет программисту сконцентрироваться на разработке алгоритма, а не на решении низкоуровневых задач.

StarPU работает под операционными системами Linux, Mac OS X и Windows. Поддерживаются следующие архитектуры процессоров:

  • обычные процессоры (x86, PPC, ...);
  • NVIDIA GPUs;
  • OpenCL;
  • Cell Processors (экспериментальная поддержка).

Планируется поддержка архитектур Intel SCC и Intel MIC.

>>> Подробности

 , starpu,

provaton
()

Первый стабильный релиз Go

Новости — Open Source
Группа Open Source

Сегодня состоялся релиз Go 1 — первый стабильный релиз языка программирования Go. Разработчики заявляют, что программы работающие под Go 1 в большинстве случаев будут работать без изменения и в следующих версиях языка. Также теперь будут предоставляться официальные сборки компилятора для всех популярных платформ: Linux, Mac OS X, FreeBSD и Windows.

В релиз вошло немного изменений, так как разработчики сосредоточились над исправлением ошибок и улучшением переносимости, но тем не менее, некоторые существенные нововведения все же были реализованы:

  • Новый тип для юникодных символов.
  • Новый тип для ошибок.
  • Простой синтаксис для удаления элемента из отображения (map).
  • Добавлен синтаксис для циклов по отображениям.
  • Добавлен синтаксис множественного присваивания.
  • Запрещен close для принимающих каналов.
  • Улучшен синтаксис композитных литералов.
  • Теперь можно использовать goroutines перед окончанием инициализации программы.
  • В функциях с именованной возвращаемой переменной нельзя использовать пустой return в случае, если возвращаемая переменная затенена локальной.
  • Изменения правил проверки равенства: добавлена возможность сравнения равенства массивов и структур, убрана возможность проверки равенства функциональных переменных и отображений (кроме сравнения с nil).
  • Полностью переработан модуль стандартной библиотеки time. Теперь он больше не привязан к unix epoch time и позволяет легко оперировать привычными единицами измерения, например, годами или часами. Также теперь различаются временные промежутки (durations) и абсолютные значения времени.

Также обновлен Google App Engine SDK для Go.

>>> Подробности

 ,

provaton
()

Вышел GNOME 3.4

Новости — GNOME
Группа GNOME

Состоялся релиз одного из самых популярных окружений рабочего стола — GNOME 3.4.

Нововведения для пользователей:

  • Добавлен поиск документов в Activities Overview.
  • Новые меню для приложений.
  • Новый виджет выбора цвета.
  • Плавная прокрутка.
  • Анимированные обои рабочего стола.
  • Улучшения в системных настройках:
    • В настройках сети можно удалить отдельные подключения.
    • Улучшены настройки энергосбережения.
    • Значительно улучшена поддержка планшетов Wacom, включая калибровку, маппинг кнопок и подключение нескольких планшетов.
  • Улучшена поддержка «железа»:
    • Улучшена организация цветовых профилей.
    • Улучшена поддержка док-станций и внешних мониторов. Теперь, например, ноутбук не будет засыпать при закрытии крышки, если к нему подключен внешний монитор.
    • Поддержка volume keys для USB-колонок и наушников.
    • Поддержка multiseat setup.
  • Значительно улучшена документация многих приложений.
  • Изменения в приложениях:
    • В Empathy полностью переработан интерфейс видео-звонков, который теперь полностью интегрирован в GNOME.
    • Переработан дизайн приложения Documents, которое служит для организации онлайн-документов.
    • Полностью переделан интерфейс браузера Web (ранее назывался Epiphany).
    • Новое приложение Contacts для организации адресной книги.
    • В приложении Disks (ранее называвшемся GNOME Disk Utility) переработан интерфейс и улучшена интеграция с GNOME.
    • Добавлена возможность делать откат действия (undo) в Nautilus.
    • Текстовый редактор gedit теперь работает под Mac OS X.
    • В просмотрщике изображений (Eye of GNOME) можно смотреть метаданные изображения в боковой панели.
  • Множественные улучшения для людей с ограниченными возможностями.

>>> Подробности

 

provaton
()

Вышел GTK+ 3.4.0

Новости — Open Source
Группа Open Source

Увидела свет новая версия популярной библиотеки для создания графических интерфейсов — GTK+ 3.4.0. Список новшеств:

  • Поддержка меню в GtkApplication.
  • Новый виджет для выбора цвета.
  • Улучшена поддержка устройств тактильного ввода:
    • Новые устройства GDK_SOURCE_TOUCHSCREEN и GDK_SOURCE_TOUCHPAD.
    • Новые события GdkEventTouch и GDK_TOUCH_MASK.
    • Новый сигнал GtkWidget::touch-event.
  • Поддержка плавной прокрутки (smooth scrolling).
  • На устройствах с тачскринами поддерживается кинетическая прокрутка (kinetic scrolling).
  • Значительно улучшена поддержка Mac OS X.
  • Впервые в ветке 3.x официально поддерживается Windows.
  • Значительно дополнен бекенд для Wayland.
  • Улучшена поддержка тем:
    • Более полная поддержка CSS (можно использовать 'transparent' в качестве цвета, добавлены свойства 'background-clip', 'background-origin', 'background-size', добавлен синтаксис задания линейного градиента).
    • В CSS поддерживаются проценты, углы и другие единицы измерения.
    • Во всплывающих подсказках можно использовать скругленные углы.
    • Можно задавать отдельные темы для окон без фокуса.

>>> Подробности

 , , ,

provaton
()

Colaborative editing в libreoffice.

Форум — Talks

Ребята из либреоффис запилили экспериментальную поддержку colaborative editing.

На видео совместное редактирование спредшита в libreoffice calc - http://www.youtube.com/watch?feature=player_embedded&v=g7s1WBFSeXs

 гуглодоксокапец

provaton
()

Фильтр системных вызовов seccomp войдет в релиз Ubuntu 12.04

Новости — Безопасность
Группа Безопасность

Разработчики seccomp сообщают, что код их продукта включен в дистрибутив Ubuntu 12.04 Beta 2, и в ближайшее время также появится в Chrome OS.

Seccomp — это набор патчей для ядра, позволяющий программам заранее объявить список системных вызовов, которые будут использоваться. В случае если злоумышленник из-за уязвимости в программе получит возможность выполнить произвольный код, seccomp не позволит ему использовать системные вызовы, которые не были объявлены. Seccomp использует Berkley Packet Filter, что в сочетании с проверкой аргументов и возвращаемых значений позволяет реализовать сложную логику проверки.

Имеется пошаговая инструкция, описывающая процесс написания программ с применением seccomp.

>>> Подробности

 , ,

provaton
()

Новый релиз фреймворка Django 1.4

Новости — Open Source
Группа Open Source

С опозданием на несколько недель вышел новый мажорный релиз фреймворка для разработки веб-приложений на языке Python − Django 1.4. Список изменений весьма обширен, наиболее интересные из них:

  • Продвинутая поддержка часовых поясов (timezone).
  • Поддержка браузерных фреймворков для тестирования (например, Selenium).
  • Шаблоны для создания новых проектов.
  • Улучшена поддержка WSGI.
  • Поддержка SELECT FOR UPDATE в ORM, которая позволяет заблокировать доступ на чтение и удаление к записям, соответствующим запросу.
  • Теперь можно хранить данные пользовательской сессии в cookie.
  • Добавлен метод Model.objects.bulk_create для эффективной вставки множества записей в БД.
  • Добавлен метод QuerySet.prefetch_related, схожий с известным методом select_related, но который более эффективно работает в некоторых сложных ситуациях (например, для отношений многое-ко-многим, или при использовании GenericForeignKey).
  • Улучшено хеширование паролей. Теперь используется алгоритм PBKDF2.
  • Страницы встроенной админки теперь имеют HTML5 Doctype.
  • Улучшения админки: улучшены фильтры, добавлена возможность множественной сортировки.
  • FormWizard переписан с использованием class-based views.
  • Добавлен метод reverse_lazy, позволяющий использовать обратный резолвинг URL (django.core.urlresolvers.reverse) до загрузки URLConf.
  • Улучшена поддержка интернационализации URL.
  • Улучшен вывод отладочной информации при ошибках в шаблонах.
  • Добавлена защита от Clickjacking (выключена по умолчанию для обратной совместимости).
  • Улучшена защита от CSRF.

Надо заметить, что в релизе 1.4 убрана поддержка Python 2.4, а в релизе 1.5 будет добавлена экспериментальная поддержка Python 3, о чем можно почитать здесь.

Список изменений, ломающих обратную совместимость

Список функций, не рекомендуемых для использования (deprecated)

>>> Полный список нововведений

 , , ,

provaton
()

[поттеринг][желтуха]Федора отказывается от the journal.

Форум — Talks

Разработчики федоры отказались от идеи использовать поттеринговский the journal в качестве единственного логгера системы. Причин три - не полностью реализована функциональность syslog, переход на journal затруднит внедрение project lumberjack и разработчики переживают, что в /var/log не будет плейнтекстовых файлов.

Лог митинга здесь - http://meetbot.fedoraproject.org/fedora-meeting/2012-03-19/fesco.2012-03-19-1...

 

provaton
()

В CyanogenMod больше не будет доступа с правами root по умолчанию

Новости — Android
Группа Android

Разработчики CyanogenMod объявили о том, что начиная с версии CM9 в их прошивке по умолчанию не будет доступа с правами root. Это решение объясняется заботой о безопасности пользователей. Отмечается, что энтузиасты всегда смогут использовать CyanogenMod с правами root если они того пожелают.

Разработчики говорят, что прошивка с правами root была установлена более чем на миллион устройств, и признаются, что это было не лучшим решением, так как root в руках неквалифицированных пользователей - это зияющая дыра в безопасности.

CyanogenMod является одной из самых популярных альтернативных прошивок для мобильных устройств под управлением ОС Android.

Так как сайт CyanogenMod сейчас недоступен, ознакомиться с подробностями можно с помощью кеша поисковых систем.

>>> Подробности

 , ,

provaton
()

RSS подписка на новые темы