LINUX.ORG.RU

Сообщения Baltika80

 

Фильтрация по маски мак адреса

Подскажите пожалуйста как на основе фильтра по содержимому пакета сделать фильтр по мак адресу. Какое смещение и как задать. Какую таблицу использовать. Или может есть другой способ сделать фильтр по маске мак адреса ? Очень много устройств и поэтому перебирать их всех без маски это слишком большая будет нагрузка на ядро.

Baltika80
()

Как узнать свой initrd ?

Возникла необходимость защиты дистрибутива линукса от взлома без ввода пароля. Пароль спрятан глубоко. Взломать при желании конечно можно, но сложно. Корневая файловая система открывается в initrd.
Как можно узнать внутри initrd какой initrd file выбран для загрузки для того чтобы сделать проверку целостности по CRC ?
Существуют конечно и более качественные решения как например объединения рам диска и ядра в один файл, но по быстрому не получилось, а времени у меня в обрез. Или может у когото есть код для парсинга menu.lst ?

Baltika80
()

автомонтирование CDROM

Народ, мож кто знает.
Есть такой трабл.
Лежат диски которые я записывал когда юзал экспи и неро.
И вот часть этих дисков не хочет автомонтироваться.
Вручную монтируеться нормально, а автоматически не хочет.
Вот лог ядра:
[quote]Apr 27 19:02:11 linux-0pt6 kernel: [34062.050846] sr 2:0:1:0: [sr0] Unhandled sense code
Apr 27 19:02:11 linux-0pt6 kernel: [34062.050869] sr 2:0:1:0: [sr0] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Apr 27 19:02:11 linux-0pt6 kernel: [34062.050881] sr 2:0:1:0: [sr0] Sense Key : Medium Error [current]
Apr 27 19:02:11 linux-0pt6 kernel: [34062.050894] Info fld=0x52c57
Apr 27 19:02:11 linux-0pt6 kernel: [34062.050901] sr 2:0:1:0: [sr0] Add. Sense: L-EC uncorrectable error
Apr 27 19:02:11 linux-0pt6 kernel: [34062.050914] end_request: I/O error, dev sr0, sector 1356120
Apr 27 19:02:11 linux-0pt6 kernel: [34062.050926] Buffer I/O error on device sr0, logical block 169515
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014778] sr 2:0:1:0: [sr0] Unhandled sense code
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014796] sr 2:0:1:0: [sr0] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014807] sr 2:0:1:0: [sr0] Sense Key : Medium Error [current]
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014820] Info fld=0x52c57
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014826] sr 2:0:1:0: [sr0] Add. Sense: L-EC uncorrectable error
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014840] end_request: I/O error, dev sr0, sector 1356120
Apr 27 19:02:18 linux-0pt6 kernel: [34069.014852] Buffer I/O error on device sr0, logical block 169515
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030234] sr 2:0:1:0: [sr0] Unhandled sense code
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030254] sr 2:0:1:0: [sr0] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030264] sr 2:0:1:0: [sr0] Sense Key : Medium Error [current]
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030277] Info fld=0x52c57
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030284] sr 2:0:1:0: [sr0] Add. Sense: L-EC uncorrectable error
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030297] end_request: I/O error, dev sr0, sector 1356120
Apr 27 19:02:25 linux-0pt6 kernel: [34076.030309] Buffer I/O error on device sr0, logical block 169515[/quote]
Дистрибутив: opensuse 11.2 (ток просьба без религиозных аргументов)

Baltika80
()

KDE4.3 Kiosk mode

Чтото не выходит у мну аленький цветочек.
Хотел отключить контекстное меню и шел.
Вот содержимое файла ~/.kde/share/config/kdeglobals:
[$Version][$i]
update_info=mouse_cursor_theme.upd:kde3.4.99,kwin.upd:kde3.2Xinerama,kaccel.upd:kde3.3/r1,kded.upd:kde3.0

[KDE Action Restrictions][$i]
action/kwin_rmb=false
action/kdesktop_rmb=false
shell_access=false
run_command=false

[KDE Resource Restrictions][$i]
plasma/containment_context_menu=false

[KShortcutsDialog Settings][$i]
Dialog Size=600,480


Как всётаки отключаеться контекстное меню и шел(Alt+F2) в кедах 4.3 ?

Baltika80
()

настройка KDevelop под компилятор ARM

поставил себе ARMовский toolchain в папку /usr/local/arm
Запускаю KDevelop
Выставлю в Проект->Параметры проекта->Параметры Configure->Главное->Параметры командной строки ключ: --host=arm-elf
После этого пытаюсь конфигурировать.
В логе вылазиет какойто другой компилятор arm-elf-...
(наверно стоит чтото ещё у меня)
Но конфигурирование не происходит изза ошибки ассемблера
Вот отрывок из файла config.log:

Configured with: ../gcc-3.4.3/configure --target=arm-elf --prefix=/srv/shared/gnuarm/gnuarm-3.4.3 --enable-interwork --enable-multilib --with-newlib --with-headers=../newlib-1.12.0/newlib/libc/include --enable-languages=c,c++,java --disable-libgcj
Thread model: single
gcc version 3.4.3
configure:2887: $? = 0
configure:2894: arm-elf-gcc -V >&5
arm-elf-gcc: `-V' option must have argument
configure:2898: $? = 1
configure:2921: checking for C compiler default output file name
configure:2943: arm-elf-gcc -O0 -g3 -c conftest.c >&5
/tmp/ccMoKTlW.s: Assembler messages:
/tmp/ccMoKTlW.s:249: Error: junk at end of line, first unrecognized character is `@'
/tmp/ccMoKTlW.s:250: Error: junk at end of line, first unrecognized character is `@'
/tmp/ccMoKTlW.s:251: Error: too many memory references for `mov'
/tmp/ccMoKTlW.s:253: Error: no such instruction: `stmfd sp!,{fp,ip,lr,pc}'
/tmp/ccMoKTlW.s:255: Error: too many memory references for `sub'
/tmp/ccMoKTlW.s:258: Error: expecting operand after ','; got nothing
/tmp/ccMoKTlW.s:260: Error: too many memory references for `mov'
/tmp/ccMoKTlW.s:261: Error: no such instruction: `ldmfd sp,{fp,sp,pc}'

Очень хочеться программировать в KDevelop.
Подскажите пожайлуста как подключить другой компилятор.

Baltika80
()

Метки в ассмблерных вставках

Столкнулся с проблемой использования меток во встроенном ассемблере.
При попытки компилировать вот эту процедуру:

/*-------------------------------------------------------*/
/* аналог паскалевской функции pos */
/*-------------------------------------------------------*/
// для совместимости с C99 нужно extern inline
extern inline short int strpos(char ch1,char * s1,const char n1);

inline short int strpos(char ch1,char * s1,const char n1)
{ //регистры вроде не надо сохранять так как они по идеи не должны портить
// потомучто функция инлайн
register short int lng;
__asm__ ( "push %edi"); //без volatile при оптимизации ошибки
__asm__ ( "mov %0,%%edi"::"r"(s1));
__asm__ __volatile__ ( "\
mov $0x00FF,%%cx;\
mov %2,%%al;\
cld;\
repne scasb;\
not %%cl;\
cmp %1,%%cl;\
ja _slbl1;\
mov %%cx,%0;\
jmp _slbl2;\
slbl1:\
mov $0xffff,%0;\
slbl2:\
nop;":"=r"(lng):"r"(n1),"r"(ch1));
__asm__ ( "pop %edi");
return lng;
}
Компилятор раньше не ругался а теперь ругается на метки.
/home/yura/my_progr.cpp/snifflog/source/mysnlog.c:61: Error: symbol `slbl1' is already defined
/home/yura/my_progr.cpp/snifflog/source/mysnlog.c:61: Error: symbol `slbl2' is already defined


Использовать обычный ассемблер не очень хочется. Там нужно будет разбираться с соглашениями о вызовах и както указывать ему(компилятору) что нужно использовать именно это соглашение. Но если подругому никак то вообщем можно и отдельный ассемблерный файл. Главное найти пакет установки а то мне KDevelop пишит что не может найти CCAS и я не могу его найти с помощью менеджера пакетов. Вообщем одни сплошные грабли.
А так хотелось сделать аналог паскалевской функции pos в Си.

Baltika80
()

Как сделать статическую компоновку в gcc по умолчанию

В gcc (или ld) имееться опция --static но мне нужно не жёсткое правило а именно чтобы сначало искалась статическая библиотека, а потом если не нашлась то динамическая.

Baltika80
()

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