background preloader

Картинки

Facebook Twitter

Syncookied — OpenSource ddos protection system. Когда в нашей компании LTD BeGet встала задача прозрачной фильтрации атак на 4 уровне модели OSI, мы написали свое решение Syncookied.

Syncookied — OpenSource ddos protection system

Данным решением мы бы хотели поделиться с Internet сообществом, так как на текущий момент аналогов ему мы не нашли (или мы о них не знаем). Есть платные решения на подобии Arbor, F5, SRX, но стоят они совершенно других денег и в них используются другие технологии защиты. Почему для разработки мы выбрали язык Rust и фреймворк NetMap, с какими сложностями мы столкнулись в процессе — будет рассказано в этой статье. » GitHub » GitHub модуль ядра » Страница проекта Принцип работы Более подробную информацию о принципах работы TCP и методах защиты от DDOS атак уровня L4 можно прочесть на странице проекта. Syncookied — является логичным продолжением развития технологии Syncookie. Принципиальная схема работы приведена ниже: Пояснения: Основное отличие от аналогичных систем: Такая система фильтрации подходит не всем, так как из ее преимуществ вытекают и недостатки: 500px. USB mass storage device и libopencm3.

Моя работа связана с программированием микроконтроллеров, в частности STM32.

USB mass storage device и libopencm3

Долгое время для работы с периферией я использовала STM32 Standard Peripheral Library, так как она предоставляется производителем и, соответственно, является наиболее полной. Однако работать с ней крайне неудобно: инициализирующие структуры зачастую избыточны, в функциях черт ногу сломит, в общем, очень скоро появляется непреодолимое желание слезть с этой библиотеки и перейти на что-нибудь более аккуратное, грамотно спроектированное и написанное «чистым кодом». После долгих поисков была обнаружена open source библиотека libopencm3, которая отвечала всем требованиям.

Отзывы о ней были положительные и работать с ней оказалось максимально приятно. Одной из последних задач на работе было поднять USB MSD. Все это было связано с наличием нескольких багов в файле usb_msc.c. . * Более подробно ознакомиться с Mass Storage Bulk-Only or CBI Transport Specification можно здесь. С 100000000 днем в году / Блог компании Microsoft / Хабрахабр.

Сегодня в 13:59 В этот воскресный день мы все отмечаем 256й день в году.

С 100000000 днем в году / Блог компании Microsoft / Хабрахабр

И я с удовольствием хочу поздравить всех разработчиков с официальным Днем Программиста! Желаю каждому из вас отличного компилирования, оптимистичную подсветку кода, молниеносную отладку и очередь платящих пользователей! Профессиональный праздник — отличный повод изучить что-то новое. На этой неделе мы провели 4й традиционный Windows Camp — его материалы про новую экосистему разработки уже доступны для вас.

Также у нас есть набор полезных ресурсов для вас: Только зарегистрированные пользователи могут участвовать в опросе. О пользе изучения языков семейства С / Блог компании NIX Solutions. Если вы задумались о том, чтобы освоить первый в своей жизни язык программирования, то вам придётся поломать голову над тем, а что же выбрать из многообразия существующих языков.

О пользе изучения языков семейства С / Блог компании NIX Solutions

В мире веб-разработки царит JavaScript, во многих ВУЗах и школах предлагают изучать Python. Если поспрашивать на форумах, то вам вывалят кучу вариантов, включая Haskell, Scala и Erlang. Богатство выбора хорошо почти в любом деле, и обилие языков программирования свидетельствует о том, что это направление научно-прикладной деятельности продолжает развиваться. Одному человеку уже не под силу изучить все существующие языки, поэтому приходится решать какой же язык лучше всего начать осваивать. Зачастую изучают то, что принято в конкретной компании или сегменте рынка. Что за «семейство С»? Ответ на этот вопрос зависит от того, кого вы спрашиваете.

В качестве очень грубого определения можно сказать, что язык относится к семейству С, если в нём для выделения функциональных блоков используются фигурные скобки {}. Парламентская ассамблея (ПА) ОБСЕ приняла беспрецедентно жесткую резолюцию, осуждающую Россию за «акты военной агрессии против Украины».

В одобренном документе ПА ОБСЕ впервые — вслед за лишившей РФ голоса Парламентской ассамблеей Совета Европы (ПАСЕ) — признала присутствие российских военных на Украине, призвав Москву прекратить отправлять в Донбасс оружие и войска. Проект резолюции о «продолжении очевидных, грубых и неисправленных нарушений Российской Федерацией в рамках ОБСЕ и международных норм» в ПА ОБСЕ решили вынести на отдельное обсуждение участников пленарной сессии в субботу — уже после того, как стало известно, что россиян в Хельсинки не будет. Текст, составленный главой канадской делегации Дином Эллисоном, базируется на принятой в прошлом году в Баку одноименной резолюции, предложенной американским сенатором Бенджамином Кардином. Новая резолюция при этом существенно расширяет и ужесточает основные положения одобренного в прошлом году документа. Мария Ефимова, Хельсинки. Moment of Life by Roie Galitz. Android School.

Butter Knife. Introduction Annotate fields with @Bind and a view ID for Butter Knife to find and automatically cast the corresponding view in your layout. class ExampleActivity extends Activity { @Bind(R.id.title) TextView title; @Bind(R.id.subtitle) TextView subtitle; @Bind(R.id.footer) TextView footer; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.simple_activity); ButterKnife.bind(this); // TODO Use fields... }} Instead of slow reflection, code is generated to perform the view look-ups.

Butter Knife

Calling bind delegates to this generated code that you can see and debug. The generated code for the above example is roughly equivalent to the following: public void bind(ExampleActivity activity) { activity.subtitle = (android.widget.TextView) activity.findViewById(2130968578); activity.footer = (android.widget.TextView) activity.findViewById(2130968579); activity.title = (android.widget.TextView) activity.findViewById(2130968577);} Android.