Двусмисленост

Post Syndicated from original http://dni.li/2021/03/20/cynic/

Веднъж в 7 клас отидох при класната да се оплача, че Стоян се държи грубо и ползва обидни думи. Тя ме попита:

– Цинизми ли говори?

А аз знаех, че циниците са едни древногръцки философи и контрирах с:

– Неее, много по-лоши думи казва.

И ми отне доста време да разбера, че цинизми = вулгарности.

Always Name Your Thread Pools

Post Syndicated from Bozho original https://techblog.bozho.net/always-name-your-thread-pools/

Our software tends to use a lot of thread pools – mostly through java.util.concurrent.ExecutorService implementations (Created via Executors.new.... We create these for various async use-cases, and they can be seen all over the place. All of these executors have a thread factory. It’s hidden in the default factory method, but you can supply a thread factory. If not supplied, a default thread factory is used whenever a thread is needed.

When using spring, those can be created using <task:executor />. In that case, each executor service’s thread factory is provided by spring and it uses the name of the executor bean (specified with id="executorName"). But for those not created by spring, a default name is used which isn’t helpful and doesn’t let you differentiate threads by name.

And you need to differentiate threads by name – in case of performance issues you have various options to investigate: thread dumps and using the top command. In both cases it’s useful to know what function does a thread service, as the stacktrace in the dump might not always be revealing.

And my favorite tool for quick investigation is top. More precisely, top -H -p <pid>. This shows the usual top table, but the -H flag means that threads for the chosen process should be printed. You basically get the most CPU-heavy and currently active threads, by name. In those cases it’s extremely useful to have custom names.

But how do you set a name? By specifying a named thread factory when creating each executor. Here’s a stackoverflow answer with multiple ways to achieve thread naming.

The method that I’m using is based on the 2nd answer:

public class AsyncUtils {
    public static ThreadFactory createNamedThreadFactory(String name) {
        return new ThreadFactoryBuilder().setNameFormat(name + "-%d").build();
    }
}

Centrally managing all executors through spring might be a better idea, but not everyone is using spring and sometimes an executor is needed for a small piece of functionality that could even go outside spring beans. So it’s a good idea to have that method up your sleeve.

The post Always Name Your Thread Pools appeared first on Bozho's tech blog.

За атаките над медиите у нас Стоян Тончев представи Биволъ на медийна среща под егидата на ЕК

Post Syndicated from Николай Марченко original https://bivol.bg/%D1%81%D1%82%D0%BE%D1%8F%D0%BD-%D1%82%D0%BE%D0%BD%D1%87%D0%B5%D0%B2-%D0%BF%D1%80%D0%B5%D0%B4%D1%81%D1%82%D0%B0%D0%B2%D0%B8-%D0%B1%D0%B8%D0%B2%D0%BE%D0%BB%D1%8A-%D0%BD%D0%B0-%D0%BC%D0%B5%D0%B4%D0%B8.html

събота 20 март 2021


Многократно заплашваният автор от Поморие Стоян Тончев представи „Биволъ“ на Журналистическата среща на върха под егидата на Европейската комисия (ЕК). Срещата на върха се проведе от Media Freedom Rapid Response…

Избори 2021: секциите в чужбина

Post Syndicated from original https://yurukov.net/blog/2021/izbori-2021-sekcii/

На 12-ти март ЦИК излезе с решение за определяне на местата в чужбина, където ще има секции на изборите на 4-ти април. Последваха няколко промени, най-вече в изписването на имената им. Някои от местата все още са под въпрос заради очаквано одобрение от приемащата страна или проблеми със залата за секцията.

Седмица по-късно не са публикували обаче адресите на останалите над 440 места. Междувременно Външно публикува заповедите на посланиците за образуването им. В тях се съдържат адресите. За съжаление, повечето са сканирани документи от хартия. Така се публикуват от години и е непонятно, защо не пускат таблиците, които със сигурност имат. Липсва единен списък с адресите, където човек да може да намери и да се ориентира къде ще гласува. Очаква се такъв да излезе седмица преди изборите, както обикновенно.

Междувременно обаче с помощта на доброволците по света, които организират самите секции, успях да препиша и поставя на картата всички адреси на секции. Някои бяха поправени от самите доброволци, които са наясно с проблемите на място. Някои от промените тепърва ще се отразяват в заповеди идващи от посолствата. На едно място във Франция все още се търси зала, тъй като, доколкото стана ясно, кмет-националист отказал да предостави предварително уговорена такава.

Така събраните данни поставих в традиционната карта на секциите в чужбина. За разлика от картата със заявленията, която пуснах преди месец, тази показва с точност до пресечка къде може да гласувате, включително адреса и броят секции на това място. Може да търсите по места или да включите GPS-а на телефона си и да намерите най-близката до себе си секция. Отваряйки която и да е от тях, може да споделите във Facebook, че ще гласувате на това място призовавайки познатите около вас да го направят припомняйки им, че има секция до тях.

Рекордният брой заявления в чужбина позволи да се отворят доста секции на места с висока концентрация на българи. Проблемът е, че както дадох пример с Германия, дори тези секции и даже да нямаше пандемия, пак нямаше да стигнат да гласуват всички желаещи. За жалост, сегашното мнозинство отказа да въведе възможното гласуване по пощата, а години наред саботират електронното гласуване.

За да се улесни гласуването и да се олекотят опашките на традиционно натоварените места за гласуване е важно да се видят алтернативните секции. Затова карти като тази са важни – особено в Европа има понякога секции в граничен град в съседна държава, където може би ще е по-бързо и безопасно да се гласува.

Макар да се очакват промени в единични секции, в началото на следващата седмица ще изпратя индивидуален мейл на 2330-те абонирали се за новини на glasuvam.org. Освен съвети как се гласува, мейлът ще включва трите най-близки секции до градът, който са посочили в абонамента си заедно с адресите и линк към картата.

Ето някои от съветите за гласуване в чужбина:

  • Може да гласува всеки български гражданин независимо дали е подал заявление или не
  • Изборният ден започва в 7:00 сутринта местно време и свършва в 8:00 часа вечерта
  • Независимо от отбелязаната в заявлението ви секция, може да гласувате където и да е в чужбина
  • Ако все пак сте в България по време на изборите, може да гласувате само по постоянен адрес. Тогава попълвате декларация 17, че не сте гласували в чужбина и са длъжни да ви отбележат. Присъствате в списъка и след името ви е отбелязано МВнР
  • Ако гласувате в чужбина попълвате декларация 22, че не сте и няма да гласувате другаде. В секцията следва да има бланки за попълване на място, но имате право да я попълните вкъщи и да я донесете. Това ще ви спести време. Ако комисията на секцията откаже да приеме предварително попълнено заявление, имате право да обжалвате и са длъжни да се свържат с ЦИК и да решат въпроса веднага без отлагане. Ако откажат или продължават да настояват, може да подадете сами сигнал до ЦИК на телефоните, които ще бъдат обявени на сайта или по мейл
  • Гласува се с валидна лична карта или паспорт или такава изтекла след 15 март 2020 г. Ако е изтекла преди това може да гласувате като покажете бележка от консулството, че сте заявили нов документ
  • В чужбина има възможност да гласувате само за партия/коалиция. Няма възможност за преференции, каквито има в страната. Така гласът ви помага само на конкретната коалиция да влезе в парламента. Запознайте се и с образеца на бюлетината.

Няколко дни преди самите избори ще изпратя повторен мейл с аналогична информация, за всеки случай, ако има промяна в някой адрес или хората са променили абонамента си с нов град. Това става с попълване на формуляра със същия мейл адрес като първия им абонамент. Тук виждате къде са абониралите се. На основната страница на проекта Glasuvam ще намерите интерактивната версия на картата, както и линкове към всички карти със секции и заявления за предишни избори.

Препоръчвам ви да следите решенията на ЦИК, особено в частта за чужбина. Страницата на Външно също съдържа полезна информация.

Допълнение – 3-ти април

ЦИК най-накрая пусна списък с адресите на секциите в чужбина. Това става едва 12 часа преди отварянето на първата секция зад граница. При това линкът към адресите е скрит в подстраниците между останалата информация. Независимо, че сме събирали адресите в картата на glasuvam.org/parl21 с доброволците и организаторите по места, все пак препоръчвам да сверите отново с официалния списък на ЦИК.

The post Избори 2021: секциите в чужбина first appeared on Блогът на Юруков.

OpenLux: ТИМ “оптимизира” данъци и кредити през фирма-невидимка

Post Syndicated from Атанас Чобанов original https://bivol.bg/openlux-tim.html

четвъртък 18 март 2021


Документите от регистъра на Люксембург, известен като OpenLux, до които Биволъ има достъп, като част от международен разследващ журналистически консорциум, разкриват, че  Иво Каменов и Марин Митев от варненската групировка…

Червените “каскети” срещу “Зелени Закони” Лонгоза: как прокурори бранят строежите в защитени зони

Post Syndicated from Николай Марченко original https://bivol.bg/%D0%BB%D0%BE%D0%BD%D0%B3%D0%BE%D0%B7%D0%B0-%D0%BA%D0%B0%D0%BA-%D0%BF%D1%80%D0%BE%D0%BA%D1%83%D1%80%D0%BE%D1%80%D0%B8-%D0%B1%D1%80%D0%B0%D0%BD%D1%8F%D1%82-%D1%81%D1%82%D1%80%D0%BE%D0%B5%D0%B6%D0%B8.html

сряда 17 март 2021


Редица прокурори във Варна и в София официално признават в кореспонденцията си с природозащитна неправителствена организация (НПО), че нямат правомощия да се месят при незаконно застрояване на защитени зони като…

Наръчник на автентичния Българин

Post Syndicated from original http://www.gatchev.info/blog/?p=2351

Познавам Атанас „Наш“ Костадинов вече от над 20 години. За това време много неща се промениха. Острият му ум и здравият му разум обаче не поддадоха – за разлика от, уви, много хора наоколо…

Та, днес той ми гостува тук. Със специално съставения от него Наръчник на автентичния Българин. Не се ли познаете в него, не сте Българи! Най-много да сте българи с малка буква. Неавтентични…

Ето го:

—-

Важни правила, които трябва да следвате, ако искате да сте истински патрЕот. Не е нужно да сте учили история. Не е важно да сте учили квото и да е.

1. България на три морета!

Ама кои са тия морета? Черно, Бяло и Панчерево! Черното го знам, дето е слънчака. Аз не съм ходил, ама са ми разправяли. Аз ходя в Ахтопол, при баба Кина. Ей, кви мекици прави тая жена! Ама то не е черно, морето де. А бялото бяло ли е наистина? И къде се намира?

Панчерево не е море? Нищо, ще го направим! Нема да се излагаме!

2. България е на 1300 години! Американците да му мислят. Те са само на 200.

И кво като си сменят колата на 2 години и изплащат втора къща? Пак са си пеленачета. Освен това съм го виждАл Чарли Чаплин къв е бедняк в Америка. Само не мога да разбера що некви наши момчета-българчета му отмъкнали трупа за откуп преди години. Той е бедняк, ква им е била далаверата?

Гледах едни древни пирамиди, некъде си, имат древен надпис “Х*й”. Това иде да покаже, че сме най-древната нация в света, и не само. И в оная система, как и беше името, слънчевата? Начи и там си имат слънце.

3. Матушка Русия е единственият шанс за нас!

Така е, бе! Така е! Те са ни освободили от турско робство!

То Априлското въстание е било махленски кютек. Ние не сме се борили, Русия се е борила за нас! И епархия, и екзархия не сме имали (квото и да означават тия сложни думи), за нищо не сме се преборили сами.

И после братушките са ни освободили от фашистко робство. Те били партия с фашистите, ама не могли да се разберат по некои въпроси (по вина на фашистите) и Матушка Рус предриела правилните, повтарям, правилните действия по окупиране на некоя друга държавица. Уморила некои други подривни елементи – към двайсетина милиона от собственото си население преди това. За назидание.

И после ни окупирала, пардон, освободила. Много ме дразнеше оная тъпа песничка за 45-те години, дето стигали. То се видя, че не стигат. И още 45 няма да стигнат.
Сичките ми комшии и приятели обичат братушките! Само не ми е ясно що, и те, и децата им емигрираха у Германия, Англия, и даже, у гнусните щати. Що никой не отива при братушките? Не е патрЕотично!

4. Ковидо. 19.

Начи, да е ясно отначало: Пълна пунта мара на некви гейтсове, Елюминати, соросоиди, рептили, фашисти, ексхибиционисти, парашутисти, Не мое неква китайска кашлица да умори народ, дето се подмива у Тунджа посред зима, по стара, вече към 30 годишна традиция!

Падат мерките и ние с бандата сме на нисък старт. Събираме се в кръчмата, щото това е най-важното! Кво ме боли гъза, че некой умрел или го интубират от 23 дни. Аз нали съм добре и си пия ракията! Кво ме боли, че хора, дето са учили по 10 и повече години и работят по 20 часа на ден, а нямат вече сили. Да се оправят, не са малки. Аз, за това, не съм учил, да немам проблеми.

Ей, голем кеф! Събрали сме се на трапезата 15-20 души, с децата, с всичко. Веднага качваме снимка у фейсо. Гледам и други приятели са на същите трапези, и те качват снимки у фейсо. С вдигнати чаши! Кво ми разправяте, че в ония бар, как се казваше, ааа, да, Занзибар, нямало пандемониум. Така, де, пандемия. И у нас нема. Само ни лъжат.

Ех, живот. Да го ду*ат некви лекарчета, дето ми разправят, че то мерките паднали, ама да не се събираме. Аз два месеца за това живея, да се събера на трапеза. Писна ми от конспирации и нови световни редове! Пусни Преслава!

Абе, жената нещо взе да кашля и и сълзят очите. Ако сега земе да се разболее такъв бой ще и фърля, че ще забрави за ония дето и го фърлих, ония ден, като прегори мусаката!
ЗабелЕзал съм, че цЕл свят само дебне да ни прецака нас българите. Тели чипове ще ни слагат, тели ще искат да ни изкупят земите и да ни заробят. Видехте ли, че сме най-важни в света, а?

5. Ваксините

Ей, тука вече ми кипнаха ла*ната! Аз, още като малък, съм чел във фейсо, че ваксините са направени да ни направят послушни роби и да ни докарат утизъм, ли беше, кво беше. Аз, затова, всяка година декларирам във фейсо, че не му позволявам да ми ползва снимките и личните данни, дето доброволно съм му предоставил. Амаха.

Та, за ваксините. Четох там, че променят днк-то и ни слагат чипове. Аз днк незнам кво е, ама няма да дам да ми го променят. Имам смътен спомен, че една даскалица в 6-7 ми клас се опита да ми го обясни какво е, ама накрая се разбрахме, че ако не и изхвърлям чантата през прозореца ще ми пише тройка. Да не сте ми пипнали днк-то, да не ви изхвърлям чантата през прозореца!

За чиповете незнам. Ако дават безплатен интернет може да си затворя очите. Ама да мога да гледам порно по цял ден без да накъсва!

Абе, верно ли има опашки за ваксини? И верно ли няма да мога да ходя НА Халкидики без ваксина? Еее, това е друго нещо! Ще се ваксинирам! Съсипаха я тая държава!

6. Истанбулската конвенция

Имаше един голЕм проблем за всички патрЕоти като мен преди време. Те го забравиха, ама аз не съм!

За оная Истанбулската конвенция говоря. Аз съм ходил в Истанбул на пазар. Тва чорапи, гащи, дънки за без пари. Три пъти се губих в Капалъ чаршъ. Иначе други забележителности много не видЕх. Заведоха ни до Света София. Много тънко Боро продаваше един отпред, ама беше гадно.

Та, за конвенцията. Аз не съм я чел, ама всички в кръчмата и у фейсо казаха, че била за джендърите. Тва май било ново име на педалите. Начи, вече нема да има педали, а джендъри – трети пол. Аз тва разбрах. Аз съм твърдо против трети пол! То с два не можем да се оправим, а кво остава за три? Ама вече на педалчетата им викам джендърчета и приятелите ми много се смеят!

Имаше некви хора, дето обясняваха, че джендър е английската дума за пол. И, че конвенцията била, най-вече, за правата на жените и против домашното насилие. Имаше и анимационно филмче за деца, в което се обяснява какво точно представлява тая конвенция. Като за деца. Ама аз не го гледАх. На мен ми е достатъчно, че у фейсо казаха, че норвежките джендъри искат да ни гепят децата! Само да се пробват, ще видят те лют патрЕот как им начуква норвежките джендърски канчета!

7. ЕС

Ей, тоя Европейски съюз, само за него се приказва. На носа ми пораСНА!

Аз незнам точна кво представлява, ама мисля, че са от тия дето искат да ни прецакат. Искат да ни вземат децата, парите, земите. Искат да ни направят джендърчета насила. Толерасти, май му викат.

Взимат ни пари, ама после ни дават повече. Е как става тая работа!? С тия пари София я направиха да заприлича на цирк. Градинки, площади, метра, то нема един хубав храсталак, човек да се изпикае в него!

По провинцията, гледам, правят къщи за гости с пари от въпросния съюз. Ама няма една дето да работи. Като тоалетната пред Пирогов. А, кажи! Егати съюза!

Не, не го харесвам. Първо Путя не го харесва, а той най-добре ги разбира нещата. И второ, вече всеки може да си вземе шапката и да иде у некоя от двайсе и кусур държави от съюза, все едно е отишъл до Драгоман. Не е патрЕотично. Едно време си беше най-добре. Не можеш никъде да идеш. Даже за София се искаше жителство. Ееех, какъв патрЕотизъм имахме тогава!

8. Щатитите

Аз щатите не ги харесвам! Щото пречат на Путя. И по други причини.

Да, бе, гледами им там филмите и сериалите, ама не ги харесвам.

Щото си врът гагата по цял свят. Дето имат интерес веднага пращат умиротворители. Не се прави така. Умиротворяването не работи. Тва, дето работи се казва анексация. Отиваш и анексираш. Не ти трябват умиротворители.

И що махнаха нашия човек, дето ги управляваше? Той човека си викна разни хора да го защитят, щото ще го махат от власт. Да, верно, че го махнаха от власт по същия начин, по който го избраха, ама той си ги викна да си направят революция. Viva la revolution! Ама в щатите тия номера май не вървят.

Та после си говорехме с аверите и един, много начетен каза, че можело в щатите да погазят демократичната революция некви военни, а в Матушка Рус не можело! После се замислИх. В щатите действащия президент подстрекава към бунт и размирици, а в Матушка Рус действащия управляващ потушава с железан ботуш всяка реакция срещу него. Нещо не ми се върза, ама щом начетения авер, дето е в бизнеса отдавна, го казва, начи е верно.

Абе, не ги харесвам щатите. Те са ни традиционен враг. Рейгън е враг номер едно на тутраканската селищна система от десетки години. Как ми се иска да почерпя човека, дето е написал този гениален лозунг! Или наследниците му, поне!

9. Чалга

Секи патреЕот слуша само традиционна наша музика. Аз си слушам чалга. Ама истинската чалга, не тия простотии, дето ги бълват тия дни и се мъчат да приличат на нещо друго. Чалгата си е традиционна наша музика. Незнам що много пъти ми звучи като оная музика, дето я свиреха еничарите във “Време разделно”. Сигурно и тя е била традиционна наша музика.

Имаше един готин виц, че разликата между чалгата и порното била в озвучаването. Верно е! Спрете звука на чалга клип и все едно гледате порно. Един приятел имал приятел, дето живее в Чикаго. И там имало българско кафене. И на два телевизора по цял ден Планета ТВ. И скапаните американци седяли по цял ден да гледат и им течали лигите. Щото там порното им почва от 23 ч. А при нас е 24/7! Бастуни!

10. Истински патриотизъм

Аз съм си татуирал Васил Левски на единия прасец, отзад. А на другия копие с конска опашка и отдолу пише шестотин осемдесет и едно! Щото съм истински патрЕот!

Некъв бастун у фейсо написал цял роман: Да си патриот не означавало да си татуираш Левски и България на три морета. Според него, означавало да се гордееш с историята и държавата си, ама не било това най-важното. Най-важното било какво се случва днес в държавата. Най-важното било да ни е грижа за другите хора в тая държава. Да не си хвърляме боклуците по земята. Да се ваксинираме за да предпазим онези от нас, които не могат, по някаква причина. Да бъдем отговорни към държавата и обществото днес и сега. Такива простотии! Това било патриотизъм, моля Ви се!

Абе, тоя ли ще ми каже на мен аз кво да правя! Ще си фърлям боклуците, където си искам. Така създавам заетост на чистачите. Тва не е ли патреотично? И кво ми пука за другите, аз нали съм патрЕот.

Ей, тва ме дразни на фейсо, че секви серсеми зеха да пишат из него!

Абе, жената е болна. В болницата е пети ден вече. Едни лекари, едни сестри се грижат за нея 24/7. Като от некъф филм са! Като некви супер герои са!

Сега кой ще ми готви, кой ще се грижи за къщата? Кой ще ми дава аналгин и зелева чорба в леглото кат съм махмурлия и кой изобщо ще ме търпи?

Обещавам с пръст да не я пипна вече. И боклуците ще си фърлям в кошчетата. И ще се ваксинирам, и няма да ходя на кръчма, докат малко не се закрепят нещата. Само жената да оздравее!

Exploring my doorbell

Post Syndicated from original https://mjg59.dreamwidth.org/56345.html

I’ve talked about my doorbell before, but started looking at it again this week because sometimes it simply doesn’t send notifications to my Home Assistant setup – the push notifications appear on my phone, but the doorbell simply doesn’t trigger the HTTP callback it’s meant to[1]. This is obviously suboptimal, but it’s also tricky to debug a device when you have no access to it.

Normally I’d just head straight in with a screwdriver, but the doorbell is shared with the other units in this building and it seemed a little anti-social to interfere with a shared resource. So I bought some broken units from ebay and pulled one of them apart. There’s several boards inside, but one of them had a conveniently empty connector at the top with “TX”, “RX” and “GND” labelled. Sticking a USB-serial converter on this gave me output from U-Boot, and then kernel output. Confirmation that my doorbell runs Linux, but unfortunately it didn’t give me a shell prompt. My next approach would often me to just dump the flash and look for vulnerabilities that way, but this device uses TSOP-48 packaged NAND flash rather than the more convenient SPI NOR flash that I already have adapters to access. Dumping this sort of NAND isn’t terribly hard, but the easiest way to do it involves desoldering it from the board and plugging it into something like a Flashcat USB adapter, and my soldering’s not good enough to put it back on the board afterwards. So I wanted another approach.

U-Boot gave a short countdown to hit a key before continuing with boot, and for once hitting a key actually did something. Unfortunately it then prompted for a password, and giving the wrong one resulted in boot continuing[2]. In the past I’ve had good luck forcing U-Boot to drop to a prompt by simply connecting one of the data lines on SPI flash to ground while it’s trying to read the kernel – the failed read causes U-Boot to error out. It turns out the same works fine on raw NAND, so I just edited the kernel boot arguments to append “init=/bin/sh” and soon I had a shell.

From here on, things were made easier by virtue of the device using the YAFFS filesystem. Unlike many flash filesystems, it’s read/write, so I could make changes that would persist through to the running system. There was a convenient copy of telnetd included, but it segfaulted on startup, which reduced its usefulness. Fortunately there was also a copy of Netcat[3]. If you make a fifo somewhere on the filesystem, you can cat the fifo to a shell, pipe the shell to a netcat listener, and then pipe netcat’s output back to the fifo. The shell’s output all gets passed to whatever connects to netcat, and whatever’s sent to netcat gets passed through the fifo back to the shell. This is, obviously, horribly insecure, but it was enough to get a root shell over the network on the running device.

The doorbell runs various bits of software, one of which is Lighttpd to provide a local API and access to the device. Another component (“nxp-client”) connects to the vendor’s cloud infrastructure and passes cloud commands back to the local webserver. This is where I found something strange. Lighttpd was refusing to start because its modules wanted library symbols that simply weren’t present on the device. My best guess is that a firmware update went wrong and left the device in a partially upgraded state – and without a working local webserver, there was no way to perform any further updates. This may explain why this doorbell was sitting on ebay.

Anyway. Now that I had shell, I could simply dump the flash by copying it directly off the /dev/mtdblock devices – since I had netcat, I could just pipe stuff through that back to my actual computer. Now I had access to the filesystem I could extract that locally and start digging into it more deeply. One incredibly useful tool for this is qemu-user. qemu is a general purpose hardware emulation platform, usually used to emulate entire systems. But in qemu-user mode, it instead only emulates the CPU. When a piece of code tries to make a system call to access the kernel, qemu-user translates that to the appropriate calling convention for the host kernel and makes that call instead. Combined with binfmt_misc, you can configure a Linux system to be able to run Linux binaries from other architectures. One of the best things about this is that, because they’re still using the host convention for making syscalls, you can run the host strace on them and see what they’re doing.

What I found was that nxp-client was calling back to the cloud platform, setting up an encrypted communication channel (using ChaCha20 and a bunch of key setup stuff I couldn’t be bothered picking apart) and then waiting for commands from the cloud. It would then proxy those through to the local webserver. Since I couldn’t run the local lighttpd, I just wrote a trivial Python app using http.server and waited to see what requests I got. The first was a GET to a CGI script called editcgi.cgi, along with a path name. I mocked up the GET request to respond with what was on the actual filesystem. The cloud then proceeded to POST to editcgi.cgi, with the same pathname and with new file contents. editcgi.cgi is apparently able to read and write to files on the filesystem.

But this is on the interface that’s exposed to the cloud client, so this didn’t appear immediately useful – and, indeed, trying to hit the same CGI binary over the local network gave me a 401 unauthorized error. There’s a local API spec for these doorbells, but they all refer to scripts in the bha-api namespace, and this script was in the plain cgi-bin namespace. But then I noticed that the bha-api namespace didn’t actually exist in the filesystem – instead, lighttpd’s mod_alias was configured to rewrite requests to bha-api through to files in cgi-bin. And by using the documented API to get a session token, I could call editcgi.cgi to read and write arbitrary files on the doorbell. Which means I can drop an extra script in /etc/rc.d/rc3.d and get a shell on my doorbell.

This all requires the ability to have local authentication credentials, so it’s not a big security deal other than it allowing you to retain access to a monitoring device even after you’ve moved out and had your credentials revoked. I’m sure it’s all fine.

[1] I can ping the doorbell from the Home Assistant machine, so it’s not that the network is flaky
[2] The password appears to be hy9$gnhw0z6@ if anyone else ends up in this situation
[3] https://twitter.com/mjg59/status/654578208545751040

comment count unavailable comments

Виждаме това, което виждаме…

Post Syndicated from original https://bivol.bg/%D0%B2%D0%B8%D0%B6%D0%B4%D0%B0%D0%BC%D0%B5-%D1%82%D0%BE%D0%B2%D0%B0-%D0%BA%D0%BE%D0%B5%D1%82%D0%BE-%D0%B2%D0%B8%D0%B6%D0%B4%D0%B0%D0%BC%D0%B5.html

понеделник 15 март 2021


Представяте ли си как биха се изразили членовете на Венецианската комисия, ако не бяха достатъчно добре владеещи метафоричния изказ юристи? Да, за оня проект на Конституция, спасителната сламка, поредната партенка…

Production Media Management: Transforming Media Workflows by leveraging the Cloud

Post Syndicated from Netflix Technology Blog original https://netflixtechblog.com/production-media-management-transforming-media-workflows-by-leveraging-the-cloud-1174699e4a08

Written by Anton Margoline, Avinash Dathathri, Devang Shah and Murthy Parthasarathi. Credit to Netflix Studio’s Product, Design, Content Hub Engineering teams along with all of the supporting partner and platform teams.

In this post, we will share a behind-the-scenes look at how Netflix delivers technology and infrastructure to help production crews create and exchange media during production and post production stages. We’ll also cover how our Studio Engineering efforts are helping Netflix productions to spend less time on media logistics by utilizing our cloud based services.

Lights, Camera, Media! Productions take on media management

In a typical live action production, after media is offloaded from the camera and sound recorders on set, it is operated on as files on disk using various tools between departments, like Editorial, Sound and Music, Visual Effects (VFX), Picture Finishing and teams at Netflix. Increasingly, the teams are globally distributed, and each stage of the process generates many terabytes of data.

Media exchanges between different departments constitute a media workflow, and no two productions share the same workflow, known in the industry by the term ‘snowflake workflow’. The stories demand different technical approaches to production, which is why a media workflow for a multi-camera show with visual effects such as Stranger Things, has a different workflow to Formula 1: Drive to Survive with an extensive amount of footage.

Media workflows are always evolving and adapting; driven by changes in production technology (new cameras and formats), post production technology (tools used by Sound, Music, VFX, and Picture Finishing) and consumer technology (adoption of 4K, HDR, and Atmos). It would be impossible to describe all of the complexities and the history of the industry in a single post. For a more comprehensive overview, please refer to Scott Arundale and Tashi Trieu’s book, Modern Post: Workflows and Techniques for Digital Filmmakers.

Workflows are louder than words. Technology empowering Netflix productions today!

Now that we understand what media workflows are, let’s take a look at some of the workflows we’ve enabled.

Collect Camera Media (On-Set/Near-Set)

We enable camera and sound media imports via our partner API integrations or via Netflix media import UIs. Along with the files, metadata plays an important role in downstream workflows, so we make significant efforts to categorize all media into respective assets with the help of the metadata we collect from our partner API integrations as well as our internal video inspection services. Media Workflows:

  • Content Hub (Netflix UI) Import: Imports footage media, which is inspected and, with the help of the metadata, categorized into assets.
  • Partner API Import: We provide external APIs for our partners to exchange media files and metadata to and from the cloud. We have pilot integrations with media management tools including Colorfront’s Express Dailies, Light Iron and Fotokem’s Nextlab and we’re looking to extend this in the future.

Iterate on a Movie Timeline (Editorial)

We enable Editorial workflows to drive media interchange between Editorial and VFX, Sound & Music, Picture Finishing facility and Netflix. Most of the workflows start with an Editor providing an edit decision list timeline with a playable reference (.mov file). Depending on the type of the workflow, this timeline can be shared as is, or transformed into alternative formats required by the tools used in other areas of production. Media Workflows:

  • VFX Plate Generation & Delivery: Editorial turns over an edit decision list timeline which is processed into media references and either matched to already uploaded VFX Plates (ACES EXR images + other files) or, if the plates are not available, they are transcoded from the raw camera media. At the end of the workflow, the VFX facility receives VFX Plates as a downloadable folder.
  • Conform Pull: Editorial shares an edit decision list timeline, which upon processing is turned over to the Picture Finishing facility as a downloadable folder with original camera media trimmed to the parts used in the timeline.
  • Studio Archival (Cut Turnover): As production iterates on the timeline, versions of the timeline (cuts) are shared (turned over) with other areas of production so they can begin their work. Major versions are known as “Locked Cuts”. Utilizing this workflow, an Editor uploads the aforementioned timeline with its related files. The media is transcoded onto different formats and, as required and permitted, shared with other departments downstream, such as dubbing, marketing or PR.

Produce Visual Effects (VFX)

We enable VFX via several media workflows, starting from the initial request from an Editorial department to facilitate the visual effects work, iterating on the produced VFX shots using Media Review workflows, delivering back the finished product by VFX Shot Delivery and, at the very end, archiving everything for safekeeping. Media Workflows:

  • Media Review: VFX Shot delivery and review workflow, used by Editorial, show-side VFX and Netflix. Both Netflix and our productions frequently rely on 3rd party software to manage their VFX assets, which is why this workflow leverages integrations to sync media and metadata.
  • VFX Shot Delivery: VFX Shots are delivered from VFX to Picture Finishing facility.
  • Studio Archival (most VFX media): Shots and other media used to produce visual effects are delivered and archived for safekeeping.

Picture Finishing (Picture Finishing Facility)

We enable Picture Finishing facilities to get all of the ingredients needed to do the conform, where all media used in the timeline is verified and made available for color grading. If the facility also helps with media management on a given production, we have workflows where the Picture Finishing facility would manage VFX Plate delivery to the VFX facility. Media workflows: VFX Plate Delivery: Provides means to procure VFX Plates (ACES EXR images + other files) used by VFX in the process of creating visual effects.

Sound, Music

We enable Editorial to share their versions of the timeline (cuts) in the form of playable timeline references (.mov files) with Sound/Music. We also enable Sound/Music to deliver their final products as Stems and Mixes so they can be used further into the production cycle, such as for mixing, dubbing and safekeeping. Media Workflows: Studio Archival and its variants.

Localization, Marketing/PR, Streaming (Netflix)

We enable our production partners to deliver media from many different aspects of production, some of which are mentioned in the areas above, with many more. In addition to safekeeping the media, Studio Archival media workflows empower media used during production for Marketing, PR and other workflows. Media Workflows: Studio Archival and its variants.

The magic is in the details. VFX Plate Generation & Delivery workflow

Lets dive deeper into VFX Plate Generation & Delivery media workflow to demonstrate the steps required within this media exchange. While describing the details we’ll use the opportunity to refer to how our technology infrastructure enables this workflow among many others.

The VFX Plate Generation & Delivery workflow is a process by which an Editor provides the necessary media to a Visual Effects team, with metadata and raw ingredients necessary to begin their work. This workflow is enabled by camera media workflows, which would have been done earlier to make the camera media and its metadata available.

The VFX Plate Generation & Delivery workflow is started by an Editorial team with an edit decision list timeline file (.edl, .xml) exported from a Non Linear Editing tool. This timeline file contains only the references to media with additional information about time, color, markers and more, but not any of the actual media files. In addition to the timeline, the Editor chooses whether they would want the resulting media to be rescaled to UHD and how many extra frames they would like to have added for each event referenced in the timeline.

After processing the timeline file, each individual media reference is extracted with relevant timecode, media reference, color decisions and markers. To support different editorial tools, each having its own edit decision list timeline format, our Video Encoding platform interprets the timeline into a standardized interchange format called OpenTimelineIO.

Media reference, color decisions and markers are linked with the original camera media and transcoded from raw camera formats onto ACES EXR. Most Visual Effects tools are not able to process raw camera files directly. Along with image media, color metadata is extracted from the timeline to generate Color Decision List files (.cdl, .xml) which are used to communicate color decisions made by an Editor. All of the media transformations and metadata are then persisted as VFX Plate assets.

The Editor then reviews VFX Plate Generation & Delivery details, with all of the timeline events clearly identified and any inconsistencies spotted, such as if raw camera media is not found or there are any challenges with transcoding media. If all looks good, an Editor is able to submit this workflow onto the final step where results are packaged and shared with the Visual Effects team.

To share results with Visual Effects artists, we’re transforming all of the VFX Plate assets and media created earlier and sharing with the recipients, who can either download the files via browser, or use our auto-downloader tools for additional convenience. Concluding this workflow is an email, sharing all the relevant information with the Editorial and VFX teams.

We’re leveraging the VFX Plate Generation & Delivery workflow (among others) on shows including the next installments of our amazing series like Money Heist, Selena and others. We’re excited to help even more productions this year, as we’re continuing to build support for more use cases and polish the experiences.

Walk, before you run. Scalable components powering Media Workflows

Let’s now zoom out and take a look at the foundation that supports the 20+ unique media workflows that we’ve enabled in the last two years, with more being added at an accelerating rate.

No single monolithic service would scale to support the various demands of this platform. Many teams at Netflix contribute to the success of Media Workflows Platform, by providing the foundations we rely on for many of the steps taken.

Media Workflows Platform (also known as “Content Hub”): a component that powers all of our media workflows. At a very high level it is composed of the Platform, UI and Partner APIs.

  • UI + GraphQL Services: facilitating various media workflows, one use case at a time, built with the help of the recently open sourced domain graph service implementation for the federated GraphQL environment.
  • Partner APIs: external partner APIs enabling integrations into Netflix media workflows.
  • Media Workflows Platform: a flexible platform that enables diverse, scalable, easy to customize production media workflows, built on the foundational tenets:

— Resource Management to associate files, assets and other workflows
 — 
Robust Execution Engine execution engine, powered by Conductor
 — 
State Machine defining user and system interaction
 — 
Reusable Steps enabling component reuse across different workflows

Media Inspection and Encoding: scalable media services that are able to handle various media types, including raw camera media. Use cases range from gathering metadata to transforming (change format) or trans-wrapping (trim media).

Universal Asset Management: all media with its metadata maintained in a common asset management system enabling a common framework for consuming media assets in a microservice environment.

Global Storage: global, fault tolerant storage solution that supports file-based workflows in the cloud.

Data Science Platform: all of the layers feed into the data science platform, enabling insights to help us iterate on improving our services using data-driven metrics.

Netflix Platform Tools: paved path services provided in building, deploying and orchestrating our services together.

Take me home. We ❤️ empowering Media Workflows, do you?

We’ve helped productions manage and exchange many petabytes of media which is only accelerating with more usage of the platform. Some of our recent workflows in Editorial are in pilot on a handful of productions, our VFX workflows helped dozens of shows, Media Review assisted hundreds of shows and, our Archival workflows are used on all of our shows. While we’ve innovated on many workflows, we’re continuing to add support for more workflows and are refining existing ones to be more helpful. Our media workflows platform is a robust, scalable and easy to customize solution that helps us create great content!

Thanks for getting this far! If you are just learning about how production media management works, we hope this sparks an interest in our problem space. If you are designing tools to empower media workflows, we hope that by sharing our challenges and approaches to solving them, we can all learn from each other. Realizing common challenges inspires more openness and the standardization we crave. We’re really excited to see the proliferation of open APIs and industry standards for media transformation and interchange such as OpenTimelineIO, OpenColorIO, ACES and more.

If you’re passionate about building production media workflows, or any of the foundational services, we’re always looking for talented engineers. Please check out our job listings for Studio Engineering, Production Media Engineering, Product Management, Content Engineering, Data Science Engineering and many more.


Production Media Management: Transforming Media Workflows by leveraging the Cloud was originally published in Netflix TechBlog on Medium, where people are continuing the conversation by highlighting and responding to this story.

OpenLux: Медиен бос на бТВ продал на медиен бос на Нова ТВ вила на Лазурния бряг

Post Syndicated from Атанас Чобанов original https://bivol.bg/gergov-solak.html

петък 12 март 2021


Членът на Надзорния съвет на бТВ Красимир Гергов и новият собственик на Нова ТВ Драган Шолак са в имотни отношения през люксембургска фирма, показва анализът на документи от OpenLux. Става…

Бургас отбеляза Деня на спасяването на българските евреи от Холокоста

Post Syndicated from original https://bivol.bg/%D0%B1%D1%83%D1%80%D0%B3%D0%B0%D1%81-%D0%BE%D1%82%D0%B1%D0%B5%D0%BB%D1%8F%D0%B7%D0%B0-%D0%B4%D0%B5%D0%BD%D1%8F-%D0%BD%D0%B0-%D1%81%D0%BF%D0%B0%D1%81%D1%8F%D0%B2%D0%B0%D0%BD%D0%B5%D1%82%D0%BE-%D0%BD.html

петък 12 март 2021


Денят на спасяването на българските евреи от Холокоста и почитане паметта на невинно загиналите 11343 евреи от Вардарска Македония, Беломорска Тракия и Пирот  бе отбелязан с тържествен ритуал, организиран от…

Избори 2021: рекорден брой заявления и секции в чужбина

Post Syndicated from original https://yurukov.net/blog/2021/izbori2021-rekorden-broi-zaqvleniq/

Снощи в полунощ свърши кампанията за събиране на заявления за гласуване в чужбина. Пуснати бяха рекорден брой заявления – 87750. За сравнение, на предишния парламентарен вот бяха подадени около 45 хиляди заявления или почти наполовина. Събрани са достатъчно заявления за 427 секции извън дипломатическите представителства. Под 8% от подадените заявления са останали в места, където няма достатъчно събрани за секция.

Забелязва се голяма промяна и в активността. За разлика от всички предходни кампании имаше голям брой подадени в самото начало. Причините за това описах в предишната си статия. В графиката долу съм показал цялата активност в сравнение с тази през 2017-та в светло синьо. Забелязва се, че кампанията тогава е била точно 5 дни по-малко. Дори взимайки това предвид, дори със същия срок виждаме почти 79% увеличение в активността.

Общо сега е отнело 13.6 дни да се задминат заявленията от изборите през 2017-та. В Германия този срок е бил само 2 дни и 4 часа. За Великобритания е отнело 4 дни и 20 часа. За Испания и САЩ са били въответно 8 и 12 дни. В Турция са събрали колкото предишните парламентарни за почти 28 дни или само ден и половина преди крайния срок. Очаква се обаче, че са подадени там доста писмени заявления, които ще видим попълнени в следващите дни.

Макар да са събрани заявления за толкова много секции, някои от тях няма да могат да бъдат отворени по няколко причини. Основната е ограничението за секции извън ЕС – 35 на държава. Това ще засегне най-много Великобритания, където от възможни 87 секции ще отпаднат 52. Дори преди Брексит, когато броят на секциите беше значително по-голям от 35 и нямаше пандемия имаше огромни опашки за гласуване. В Турция пък това ограничение ще засегне само 6 секции.

Друга причина е огранизацията по места. Макар на повечето секции български организации и доброволци вече са намерили помещения и комисии, на други просто са подадени заявления без местна организация. В някои случаи няма и позволение на приемащата страна. Германия е пример за това, където 7 от секциите ще отпаднат. Важен аспект тук е и пандемията – макар без съмнение ограниченията в различни държави ще забави гласуването и ще създаде проблеми с опашките и местните власти, затруднява сериозно самата логистика по организацията. Пример за това са книжата и отговорните лица, които трябва да присъстват във всяка секция.

Добрата новина е, че Германия позволи рекорден брой секции тази година. Днес са добавили разрешение за още една и така стават 63. Аналогични разрешения са получени вече за повечето държави, където това е наложително.

Дори с този рекорден брой секции обаче, не може да очакваме броя на гласувалите в чужбина да е значително по-голям. На първо място колкото и секции да има, те имат ограничен капацитет за гласуване, който допълнително се намалява в условията на пандемия. Не по-малко важно е това, което илюстрирах за Германия – дори с рекорден брой секции и желание на съгражданите ни да пътуват по два часа и още поне толкова да се редят на опашка, трудно може да се покрие голяма част от желаещите да гласуват в чужбина. Затова е толкова важно гласуването по пощата и през интернет – за да имат възможност всички българи да упражнят правото си на глас независимо къде се намират по принцип, конкретно в неделния ден и какви физически и здравословни ограничения имат. Пример за последното са бизнес пътувания, невъзможност за излизане от дома или ограничения заради контакт с болни от корона. Особено при последното виждаме как абсурдните решения на ЦИК ще спрат поне 10 хиляди да гласуват в деня на вота.

Окончателният списък с градовете и конкретните адреси, където ще има секции ще бъде обявен от ЦИК в следващите две седмици. Междувременно по зелените точки на настоящата карта може да се ориентирате къде ще бъдат. Картата със самите секции, точните им координати и адреси ще бъде създадена в рамките на следващата седмица. Първоначално точките ще бъдат с адресите от предишни избори и ще бъде отбелязано, когато не са потвърдени от ЦИК. Ще бъде обновявана и довършвана с всяка нова информация от ЦИК.

Подобните карти от предишни години ще намерите в Glasuvam.org. Когато са ясни точните адреси ще разпратя индивидуални мейли на всички 2300 абонирали се за бюлетина, в който се показват трите най-близки до тях секции. Преди това ще пратя и разяснителен текст за гласуването в чужбина, който ще пусна и тук в блога. Отново, ако имате желание да помогнете с вота, моля свържете се с местното консулство по мейл или телефон, за да изразите желание да сте част от комисия или доброволец в организацията. Посочете име и телефон за връзка.

The post Избори 2021: рекорден брой заявления и секции в чужбина first appeared on Блогът на Юруков.

The collective thoughts of the interwebz

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close