- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
#include <stdio.h>
#include <inttypes.h>
#include <string.h>
// endian dependend
#define PUT3(a,b,c) (((uint64_t)a<<8*0) | ((uint64_t)b<<8*1) | ((uint64_t)c<<8*2))
void testswitch(uint64_t x)
{
switch (x)
{
case PUT3('a','b','c'): printf("abc\n");
break;
case PUT3('d','e','f'): printf("def\n");
break;
case PUT3('g','h','i'): printf("ghi\n");
break;
default: printf("Choice other than abc, def and ghi\n");
break;
}
}
int main()
{
uint64_t x = 0;
char a[] = "abc";
memcpy(&x, a, sizeof(a)-1);
testswitch(x);
char b[] = "def";
memcpy(&x, b, sizeof(a)-1);
testswitch(x);
char c[] = "ghi";
memcpy(&x, c, sizeof(a)-1);
testswitch(x);
return 0;
}
j123123 12.11.2019 21:35 # 0
хотя там один фиг все из трех байтиков в этом примере, так что пофиг
3.14159265 15.11.2019 21:05 # 0
В тех реализациях как-то фундаментальнее работало.
guest8 12.11.2019 21:37 # −999
j123123 12.11.2019 21:46 # 0
guest8 12.11.2019 21:48 # −999
j123123 12.11.2019 21:51 # 0
koshka_Sviborga 12.11.2019 22:35 # 0
guest8 13.11.2019 01:43 # −999
-__- 13.11.2019 15:32 # 0
Что ещё нужно добавить?
BJlADuMuPCKuu_nemyx 19.11.2019 22:12 # 0
XYPO3BO3 20.11.2019 11:32 # 0
bormand 12.11.2019 23:00 # 0
j123123 12.11.2019 23:28 # 0
guest8 13.11.2019 01:45 # −999
bormand 13.11.2019 10:55 # 0
До MAX_INT, конечно, не дотянет. Но в этой задаче больше 8 и не надо.
guest8 13.11.2019 14:18 # −999
guestinxo 13.11.2019 01:46 # 0
P.S. А, у вас всё равно сишка.
koshka_Sviborga 12.11.2019 21:53 # 0
Если нужно поддерживать более длинные строки, придётся строить рекурсивный алгоритм.
nyTuH_nugop 12.11.2019 22:56 # 0
bormand 12.11.2019 22:57 # 0
koshka_Sviborga 12.11.2019 23:33 # 0
https://newsland.com/static/u/comment_image_from_text/16092019/100151640-4695392.jpg
guest8 12.11.2019 23:38 # −999
3.14159265 14.11.2019 20:42 # 0
Зачем славянский взгляд на голое тело веселый и пьянящий?
Много возраст причастия явная ересь,
Зачем зарезанный пионерами немец?
Много скандинавы и немцы слетели с российского трона,
Зачем прекращать норманнское иго помогает соборность?
Малость раб принимает свою участь,
Много лютеранин начинает работать лучше.
nyTuH_nugop 13.11.2019 01:10 # 0
И даже для сёмы и сёмы премиум есть специальная ветрина с bgn за 77 и 115 руслей и бесплатной доставкой - свисток бросят прямо в ящик.
guest8 13.11.2019 01:21 # −999
guest8 13.11.2019 01:26 # −999
nyTuH_nugop 13.11.2019 01:41 # 0
nyTuH_nugop 13.11.2019 02:02 # 0
guest8 13.11.2019 02:07 # −999
nyTuH_nugop 13.11.2019 02:29 # 0
guest8 13.11.2019 02:34 # −999
guest8 13.11.2019 02:39 # −999
nyTuH_nugop 13.11.2019 02:45 # 0
https://ae01.alicdn.com/kf/HTB1IUyIavWG3KVjSZPcq6zkbXXaF.jpg
guest8 13.11.2019 03:01 # −999
guest8 13.11.2019 01:28 # −999
guest8 13.11.2019 01:29 # −999
guest8 13.11.2019 01:37 # −999
guest8 13.11.2019 01:41 # −999
guestinxo 12.11.2019 23:48 # 0
bormand 12.11.2019 23:52 # 0
guest8 13.11.2019 01:29 # −999
nyTuH_nugop 13.11.2019 01:35 # 0
nyTuH_nugop 13.11.2019 01:10 # 0
к моему удивлению там даже более специфичное железо продают, но скидки 5% всего
bormand 13.11.2019 01:12 # 0
guestinxo 13.11.2019 01:13 # 0
guest8 13.11.2019 01:19 # −999
nyTuH_nugop 13.11.2019 01:21 # 0
guest8 13.11.2019 01:22 # −999
guest8 13.11.2019 01:24 # −999
nyTuH_nugop 13.11.2019 01:43 # 0
guest8 13.11.2019 02:07 # −999
booratihno 13.11.2019 02:42 # 0
То ли люди, то ли куклы.
Взгляд похож на взгляд, а ты — на хуй.
nyTuH_nugop 14.11.2019 12:56 # 0
guest8 13.11.2019 01:20 # −999
nyTuH_nugop 13.11.2019 01:53 # 0
Это не через него ли Мирай пролезал? Лол, он всё еще считается активным!
guest8 13.11.2019 02:09 # −999
nyTuH_nugop 13.11.2019 02:26 # 0
guest8 13.11.2019 03:04 # −999
nyTuH_nugop 14.11.2019 20:15 # 0
bormand 13.11.2019 10:06 # 0
Нинужно.
guest8 13.11.2019 15:21 # −999
bormand 13.11.2019 16:15 # 0
nyTuH_nugop 14.11.2019 12:46 # 0
guest8 14.11.2019 16:05 # −999
bormand 14.11.2019 16:22 # +2
Какие, нахуй, гости? ^_^
gost 14.11.2019 16:53 # 0
Воображаемые 2D-девочки.
bormand 14.11.2019 17:01 # +2
-__- 14.11.2019 16:48 # +3
bormand 14.11.2019 17:02 # +2
guest8 14.11.2019 22:26 # −999
-__- 14.11.2019 16:51 # +2
guest8 14.11.2019 17:04 # −999
nyTuH_nugop 14.11.2019 22:45 # 0
gost 14.11.2019 16:53 # +1
bormand 14.11.2019 17:00 # 0
gost 14.11.2019 17:10 # 0
bormand 14.11.2019 17:18 # 0
guest8 14.11.2019 22:27 # −999
nyTuH_nugop 14.11.2019 22:42 # +2
guest8 15.11.2019 03:58 # −999
nyTuH_nugop 15.11.2019 18:54 # 0
Бывает распаян уже, но на хайэндах.
guest8 15.11.2019 19:01 # −999
guest8 15.11.2019 19:11 # −999
nyTuH_nugop 15.11.2019 19:53 # 0
guest8 15.11.2019 21:41 # −999
nyTuH_nugop 15.11.2019 23:12 # 0
Любая эмбеддота сама и есть "контроллер JTAG".
Да, еще в Android x86 тоже есть eth0.
guest8 16.11.2019 01:59 # −999
nyTuH_nugop 16.11.2019 02:33 # 0
JTAG короче есть везде кроме смарткарт и подобного
bormand 16.11.2019 06:02 # 0
Почти во всех микросхемах есть контроллер JTAG, ну кроме самых тривиальных. На плате все такие микросхемы просто объединяются в цепочку, никакого дополнительного обвеса там не надо. Это юзается для boundary scan'а - проверки, что на плате всё припаяно и работает. Эдакий функциональный тест после сборки. Ну и для заливки прошивок, отладки и т.п.
j123123 16.11.2019 14:13 # 0
XYPO3BO3 16.11.2019 15:04 # 0
guest8 16.11.2019 23:32 # −999
XYPO3BO3 17.11.2019 00:25 # 0
https://ru.wikipedia.org/wiki/JTAG
В более простых микросхемах в той же роли использовалась шина I2C:
https://ru.wikipedia.org/wiki/I²C
guest8 17.11.2019 01:36 # −999
bormand 17.11.2019 11:05 # 0
j123123 17.11.2019 14:29 # +2
>Using this technique, I was able to effectively reset the security fuses without impacting the FLASH code array too much. The pictures below show the array memory status according to the programming/readback tool I was using. A part of the code array was still erased, but probably some judicious resizing of the electrical tape could fix that problem.
bormand 17.11.2019 19:48 # 0
OCETuHCKuu_nemyx 17.11.2019 19:53 # 0
nyTuH_nugop 18.11.2019 00:24 # 0
Сразу видно интересовавшегося смарткартами!
guest8 17.11.2019 20:46 # −999
bormand 18.11.2019 11:11 # +1
На флешках и eMMC - нет, у них вроде не ставят jtag. Но если подключиться дебаггером к процессору, который с этой флешкой работает, то в теории можно.
Жопа в том, что JTAG - это просто транспорт, а набор команд у каждого чипа свой, часто вообще не документированный. Поэтому ты вроде и видишь чип в цепочке, а что он умеет - да хуй бы знал.
XYPO3BO3 18.11.2019 16:14 # +1
Уже представил себе, как гости пришли с паяльником, с припоем и разъёмом, с JTAG-адаптером и с кучей софта (у них же пока нет доступа к «Интернету», поэтому нужно брать с собой) для всевозможных чипов (у каждого чипа протокол свой, поэтому универсальным софтом не отделаешься). Кстати, на чём гости будут запускать прошивальщик? Притащат ноутбук или воспользуются компом хозяина?
Но самый главный вопрос, что они могут сделать с роутером через JTAG посредством такого пердолинга?
bormand 18.11.2019 16:24 # +1
На этом добычу пароля можно считать законченной. Зачем вся эта ёбля с jtag'ом если можно засунуть паяльник в жопу?
XYPO3BO3 18.11.2019 16:37 # +1
Зачем тогда ноутбук? Ну какой же хакер без ноутбука!
guest8 18.11.2019 18:52 # −999
nyTuH_nugop 18.11.2019 21:06 # 0
Карта мир вернула эти времена в зад.
А вообще в рашке отдельно стоящих уличных банкоматов вообще нет.
guest8 18.11.2019 23:22 # −999
guest8 18.11.2019 23:29 # −999
XYPO3BO3 18.11.2019 23:52 # 0
nyTuH_nugop 19.11.2019 00:07 # 0
Впрочем, даже он сразу же снимает свой велфер с "мира" и переводит на "визу".
guest8 19.11.2019 00:08 # −999
nyTuH_nugop 19.11.2019 00:18 # 0
j123123 02.12.2019 12:00 # 0
Можно пароль вообще не помнить, а хранить на особом самопальном девайсе с УФ-стираемым EPROM и УФ-светодиодом прямо возле окошка. И если стереть пароль, никаким паяльником в жопу его уже не добыть.
bormand 02.12.2019 12:12 # +1
Не просто будет объяснить все эти технические подробности с паяльником в жопе.
j123123 02.12.2019 12:16 # +1
gost 02.12.2019 13:30 # +1
Кстати, в связи с этим есть интересная техника: делаем «TrueCrypt» контейнер, записываем на него что-нибудь компрометирующее, но не УК-шное (порнуха с 18+, пиратский винрар, etc), пароль храним на бумажке. А внутри этого контейнера делаем ещё один, скрытый (штатная функциональность «TrueCrypt»), на который и записываем ЦП, поварённую книгу анархиста и дистрибутив «Kali Linux».
Суть в том, что если придут маски-шоу — им после некоторых колебаний (при виде паяльника) сдаётся бумажка с паролем, выплачивается штраф за незначительную хуйню в контейнере — и всё, если повезёт, то глубже копать не будут. А вот если у пациента на компе всё чистенько, легальненько и даже «WinRAR» куплен — у масок возникнут обоснованные вопросы.
bormand 02.12.2019 13:35 # 0
Но ведь они тоже знают про многослойные контейнеры...
j123123 02.12.2019 13:48 # 0
gost 02.12.2019 13:51 # 0
Разумеется, если у них есть какие-то более серьёзные подозрения (на террориста, экстремиста, политического активиста) — копать они будут куда лучше, и контейнер на наличие вложений проверят (паяльником).
j123123 02.12.2019 13:55 # 0
Antifriz_otrabotanyi 02.12.2019 13:58 # 0
gost 02.12.2019 14:05 # 0
bormand 02.12.2019 14:07 # 0
gost 02.12.2019 16:41 # 0
XYPO3BO3 02.12.2019 16:12 # 0
Это вообще деанон в момент покупки. Особенно в эпоху, когда есть «7-zip», «Freearc», «Peazip» и ещё куча бесплатных.
Да «WinRAR» не покупали, когда и конкурирующих архиваторов не было...
https://s.put.re/9K42VBx5.jpeg
guest8 18.11.2019 17:36 # −999
guest8 18.11.2019 18:52 # −999
nyTuH_nugop 18.11.2019 20:00 # 0
Лишнехромосомный, уже раза три упоминали
> заливки паршивок
Впрочем, менее тривиально, но более фруктово было бы снять пассфразу из памяти
nyTuH_nugop 18.11.2019 20:14 # 0
Учитывая, консумерские мыльницы представляют собой System-on-Chip... ну ты понял.
guest8 15.11.2019 23:28 # −999
guest8 16.11.2019 01:57 # −999
nyTuH_nugop 15.11.2019 19:38 # 0
> Как определить
Есть всякие кастомайзы типа Eee PC или TransformerPad, там оно точно есть, а в остальных случаях нужен какой-то пердолинг, чтобы определить. Так что проще попробовать.
Сначала найти конечно надо, ну а потом разумеется впаять гребенку.
guest8 15.11.2019 21:41 # −999
guest8 15.11.2019 23:28 # −999
guest8 16.11.2019 00:49 # −999
guest8 16.11.2019 01:57 # −999
guest8 16.11.2019 11:21 # −999
guest8 14.11.2019 22:26 # −999
gost 14.11.2019 23:29 # 0
nyTuH_nugop 14.11.2019 23:36 # 0
guest8 15.11.2019 03:59 # −999
nyTuH_nugop 15.11.2019 18:42 # 0
Получается даже, что не топовое ведро нужно, а ведро для гиков. Так что это не best practice, а хуита. Нассыте ему в каменты кто-нибудь.
guest8 15.11.2019 03:58 # −999
bormand 15.11.2019 00:20 # 0
-__- 15.11.2019 00:24 # 0
nyTuH_nugop 15.11.2019 00:46 # 0
guest8 15.11.2019 04:00 # −999
bormand 15.11.2019 17:16 # 0
nyTuH_nugop 15.11.2019 18:28 # 0
guest8 14.11.2019 22:26 # −999
nyTuH_nugop 14.11.2019 20:18 # 0
booratihno 13.11.2019 02:40 # 0
inho-pidar 12.11.2019 23:09 # 0
j123123 12.11.2019 23:36 # 0
https://godbolt.org/z/TjYqd-
а clang и icc осиливает.
bormand 12.11.2019 23:45 # 0
koshka_Sviborga 12.11.2019 23:46 # 0
j123123 13.11.2019 00:29 # 0
error: case label does not reduce to an integer constant
guest8 13.11.2019 01:39 # −999
bormand 13.11.2019 12:45 # 0
6. It is unspecified whether these arrays are distinct provided their elements have the appropriate values. If the program attempts to modify such an array, the behavior is undefined.
j123123 13.11.2019 00:55 # 0
<source>:7:10: warning: expression is not an integer constant expression; folding it to a constant is a GNU extension [-Wgnu-folding-constant]
Охуенно, учитывая что GCC такое компилить отказывается
j123123 13.11.2019 01:14 # +2
>So this is some GNU extension, but why GCC doesn't support it?
Because it was undocumented one which was removed a long time ago.
And when I say undocumented one, I Mean it was a bug that GCC accepted it in the first place :).
guestinxo 13.11.2019 01:21 # 0
j123123 13.11.2019 01:25 # 0
guest8 13.11.2019 01:25 # −999
-__- 13.11.2019 11:42 # 0
guest8 13.11.2019 14:15 # −999
j123123 13.11.2019 12:27 # 0
-__- 13.11.2019 12:42 # 0
Даже «Мозилла» какую-то хуйню сотворила, из-за чего у них теперь каждая вторая страница выдаёт «Rendering error» вместо текста статьи.
guest8 13.11.2019 14:17 # −999
-__- 13.11.2019 14:22 # 0
guest8 13.11.2019 14:32 # −999
-__- 13.11.2019 12:48 # 0
http://metroblog.ru/post/4853/
gost 13.11.2019 13:43 # 0
-__- 13.11.2019 14:12 # 0
Вот что такое сверхсложное может грузиться пару минут, да ещё сбрасывать фокус или введённый текст, если всего лишь нужно отобразить форму с текстовым инпутом и кнопкой отправки?
Desktop 13.11.2019 15:31 # 0
bormand 13.11.2019 15:32 # 0
Desktop 13.11.2019 15:40 # 0
-__- 13.11.2019 15:53 # 0
Desktop 13.11.2019 16:30 # 0
guest8 13.11.2019 17:10 # −999
nyTuH_nugop 14.11.2019 20:41 # 0
guest8 14.11.2019 22:27 # −999
guest8 13.11.2019 17:09 # −999
guest8 13.11.2019 15:24 # −999
guestinxo 13.11.2019 01:37 # 0
guest8 13.11.2019 01:42 # −999
guest8 13.11.2019 02:08 # −999
guest8 13.11.2019 02:14 # −999
gost 14.11.2019 12:49 # 0
https://wandbox.org/permlink/MQup6gNK125oeRgK
guestinxo 14.11.2019 12:54 # 0
j123123 14.11.2019 14:54 # +2
-__- 14.11.2019 15:05 # 0
Но иногда такое говно может ускорить поиск: если у нас много очень длинных строк с одинаковым началом, то несовпадение хэша их сразу отсечёт.
guestinxo 14.11.2019 15:20 # 0
j123123 14.11.2019 15:40 # +2
Если же у тебя хеш для слова "huipizda" который ты введешь с клавиатуры совпадет с хешем для "hello" в case то в компилтайме нихуя не обнаружится
gost 14.11.2019 17:02 # +1
https://wandbox.org/permlink/vGraig9HkxoFipJK
j123123 14.11.2019 22:34 # +1
gost 14.11.2019 22:57 # 0
Rooster 25.11.2019 07:52 # +1