::::::::::. :::::::.. :::.,:::::: ::: ... . : `;;;```.;;;;;;;``;;;; ;;;;;;;'''' ;;; .;;;;;;;. ;;,. ;;; `]]nnn]]' [[[,/[[[' [[[ [[cccc [[[ ,[[ [[,[[[[, ,[[[[, $$$"" $$$$$$c $$$ $$"""" $$' $$$, $$$$$$$$$$$"$$$ 888o 888b "88bo,888 888oo,__ o88oo,.__"888,_ _,88P888 Y88" 888o YMMMb MMMM "W" MMM """"YUMMM""""YUMMM "YMMMMMP" MMM M' "MMM prielom #10, 9.1.99, prielom(at)hysteria.sk, http://hysteria.sk/prielom/obsah
nasiel som koniec sveta. hned sa mi to zdalo podozrive, ked sa mi v aute polhodinu pred tym ako som TAM dorazil natrvalo stratil signal na mobile a nepomahal ani osvedceny recept, to jest vytrcit antenu v smere predpokladaneho nalezu najblizsej bts-ky a v pravidelnych intervaloch plieskat mobil o pristrojovu dosku. rozhodnutie stravit romanticky vikend na samote na vidieku neovplyvnilo samozrejmost pribalit si notebook a modem. ked som po par testoch pripojenia pochopil ze ma caka vikendove surfovanie letovou rychlostou 1200 baudov cez analogovu ustrednu s pulzovym dialom, pochopil som ze som asi fakt na konci sveta. pripomenulo mi to ale stare dobre casy zaciatkov internetu… taka nostalgia… surfovanie pri rychlosti 1200 baudov je romanticke – skuste si to – pekne vidite ako vam naskakuju jednotlive pismenka do okna telnetu..
asi to je tou nostalgiou… rozhodol som sa konecne pozliepat nove cislo prielomu.. po dost trapnom osmom cisle som trucoval a povedal som si ze ked to nema stat za to, tak radsej netreba nic pustat do eteru. potom prisiel ten forik s neexistujucim deviatym cislom, ktore ziskalo obrovsku popularitu vdaka tomu ze vobec neexistovalo…
inak co sa tyka toho maleho cgi-binu na uvodnej stranke prielomu, do ktoreho sa vpisuje e-mail pre automaticku notifikaciu pri novom cisle – musim vam oznamit ze sa mi uspesne podarilo vymazat subor s e-mailami ktore tam boli zadane… takze pokial ste sa tam uz raz zaregistrovali, musite to spravit este raz..
pajkus, 9.1.99, libichava
navrat na obsah
co ty na to ? board
zasielanie unix prikazov z mobilu
|/home/pajkus/bin/gsmunix pajkusa vsetka posta sa mi okrem ulozenia do mailboxu posle aj do scriptu “gsmunix”. tento programcek najprv pozrie ci je to e-mail zaslany z mojho mobilu a ak ano, nacita si prikaz, execne ho, a posle mi naspat vypis z prikazu:
#!/bin/sh # predpokladajme ze moje cislo ewrotelu je 0903 555123 :) # minimalny pocet pismen prikazu min=2 # pracovny adresar adresar=/home/pajkus/bin # dnesny datum v peknuckom formate, koli zapisovaniu logov datum=`date | awk '{print $2 "-" $3 "-" $4}'` # nacitame si odosielatela mailu, je to vzdy prvy riadok read line from=`echo "$line" | awk -F "From " '{print $2}'` # ak nie je mail zaslany z mojho mobilu, tak exit echo "$from" | grep -i 421903555123@sms.eurotel.sk > /dev/null || exit 0 # nacitanie prikazu while read line ; do echo $line | grep "prikaz:" > /dev/null && prikaz=`echo "$line" | awk -F "prikaz:" '{print $2}'` done # kedze mobily nemaju znaky "|", "@" a podobne, nadefinujeme si nahradne znaky prikaz=`echo "$prikaz" | sed 's/#/|/g' | sed 's/!/@/g'` # zapis do logu... opatrnosti nikdy nie je nazvys :) echo "$datum $from $prikaz" >> $adresar/gsm-unix-history # ak nema prikaz minimalny pocet znakov, tak exitni if [ $min -gt `echo "$prikaz" | wc -c` ] ; then exit 0 fi # zapiseme prikaz do suboru, execneme a posleme output naspat na mobil echo "$prikaz" > $adresar/gsm-unix-prikaz chmod 700 $adresar/gsm-unix-prikaz $adresar/gsm-unix-prikaz | mail 555123@sms.eurotel.skcize staci poslat SMSku vo formate login@server.sk prikaz: sem_unixovy_prikaz a poslat na cislo 111 a o par sekund dostanes naspat vypis prikazu…
kombinacia SMS -> unix skryva netusene moznosti 🙂 da sa vymysliet vselico, dalsia vec co som realizoval je posielanie SMSiek medzi sietou Globtel a Eurotel. situacia medzi tymito dvoma operatormi je zial taka, ze su medzi nimi nekrestanske poplatky za telefonaty (okolo 15 Sk / min) a absolutne nie je moznost posielat SMSky z globtelu na eurotel, alebo naopak. staci si trosku upravit horny scriptik a po nacitani prikazu si staci zadat globtelacke cislo a nacitat text a potom ho poslat dalsim scriptom cez globtelacku www sms branu na mobil v sieti globtel. okrem toho ze je to prakticke je to aj moja vlastna forma vztyceneho prostrednika na manazerov eurotelu a globtelu – kym vy sa medzi sebou neviete dohodnut, hocikto vas v pohode dokaze obist zaslanim SMSky cez internet. rozmyslal som aj o zverejneni tejto sluzby, myslim si ze posielanie SMSiek medzi ewrotelom a globtelom by privitalo velmi vela ludi. bojim sa vsak ze by to narobilo velky traffic ktory by si operatori vsimli a sluzbu mi s najvacsou pravdepodobnostou zakazali.
dalsi dost uleteny sposob ako vyuzit posielanie e-mailov cez SMS je IRC – Internet Relay Chat. pokial patrite medzi fanatikov traviacich dost casu na irc, urcite to privitate. na hysterke uz asi dva mesiace bezia dve sluzby, blizsie info je na http://hysteria.sk/ircgsm.html a http://hysteria.sk/ircbot.html. druha sluzba dokonca umoznuje kompletne irc-ckovanie z mobilu, mozete posielat text na kanal, msg-ovat, menit topic, atd.. a prijimat naspat zadany text.
na zaver este pripajam script na jednu z dvoch vyssie spomenutych sluzieb – zasielanie odkazov z mobilu na irc. je to na ilustraciu, na zaklade tohoto scriptu by si uz mal kazdy dokazat upravit si to podla vlastnych potrieb a vyuzivat mobil na rozne druhy interakcie s unix serverom a s internetom vo vseobecnosti. zabudni na drahe notebooky a datovy prenos cez gsm… ako vidis na neobmedzene vyuzivanie internetu cez mobil ti staci aj ciselnikovy dial vaseho mobilu 🙂
#!/bin/sh min=5 min2=5 datum=`date | awk '{print $2 "-" $3 "-" $4}'` read line from=`echo "$line" | awk -F "From " '{print $2}'` echo "$from" | grep -i eurotel.sk > /dev/null || exit 0 from=`echo "$from" | awk -F"@" '{print $1}' | sed 's/421903//'` if [ $min -gt `echo "$from" | wc -c` ] ; then exit 0 fi mail=`echo "0903$from"` while read line ; do echo "$line" | grep "t:" > /dev/null && { irc=`echo "$line" | awk -F "t:" '{print $2}'` nick=`echo "$line" | awk -F "n:" '{print $2}' | awk '{print $1}'` } done echo "$datum $mail $nick $irc" >> /home/ircgsm/history if [ $min2 -gt `echo "$irc" | wc -c` ] ; then exit 0 fi echo "USER bonzacik hysteria.sk hysteria.sk :robot na dorucenie sprav z GSM" > /home/ircgsm/ides-irc echo "NICK bonzacik" >> /home/ircgsm/ides-irc echo "JOIN $nick" >> /home/ircgsm/ides-irc echo "PRIVMSG $nick :cafte ludkovia, ja som bonzacik a dorucujem spravy z gsm mobilov na irc.. blizsie info viz http://hysteria.sk/irc-gsm.html" >> /home/ircgsm/ides-irc echo "PRIVMSG $nick :sprava od $mail :" >> /home/ircgsm/ides-irc /bin/echo -n "PRIVMSG $nick :" >> /home/ircgsm/ides-irc echo "$irc" >> /home/ircgsm/ides-irc echo "QUIT :odchod na parky" >> /home/ircgsm/ides-irc cat /home/ircgsm/ides-irc | nc irc.stealth.net 6667 > /dev/nullpajkus
navrat na obsah
co ty na to ? board
navrat na obsah
co ty na to ? board
navrat na obsah
co ty na to ? board
Styl formatovani zdrojovych textu jadra Linuxu
Kapitola 2: Umistovani slozenych zavorek
if (plati x) { udelame y }Nicmene, je jedna vyjimka, totiz funkce: u nich umistime levou slozenou zavorku na zacatek nasledujiciho radku, takto:
int funkce(int x) { telo funkce }Kaciri na celem svete tvrdi, ze tahle neduslednost je… tedy … nedusledna, ale vsichni cestni lide vedi, ze (a) K&R; maji __pravdu__ a (b) K&R; maji pravdu. Krome toho, funkce jsou stejne specielni (v jazyce C je nelze zanorovat).
Vsimete si, ze prava slozena zavorka je na samostatnem radku __krome__ pripadu kdy je nasledovana pokracovanim stejneho prikazu, tedy “while” v prikazu do a “else” v prikazu if, nasledovne:
do { telo smycky do } while (podminka); a if (x == y) { .. } else if (x > y) { ... } else { .... }Zduvodneni: K&R.;
Take, vsimete si, ze tento zpusob umisteni slozenych zavorek minimalizuje pocet prazdnych (nebo temer prazdnych) radku, bez jakehokoli zhorseni citelnosti. Tedy, protoze zasoba volnych radek na vasi obrazovce neni obnovitelnym zdrojem (myslete na 25-ti radkove obrazovky terminalu), ziskate vice volnych radku pro umisteni poznamek.
Kapitola 3: Jmena
Jazyk C je spartansky a stejna by mely byt i jmena ktera zvolite. Narozdil od programatoru v Module-2 a Pascalu Ceckovi programatori nepouzivaji roztomile nazvy jako TatoPromennaJeDocasnyCitac. Ceckovy programator by takovou promennou nazval “pom”, coz se daleko lepe pise a take chape.
ALE, zatimco na jmena s kombinaci malych a velkych pismen se pohlizi s nelibosti, popisna jmena pro globani promenne jsou nezbytna. Nazvat globalni promennou “bla” je neomalenou drzosti.
GLOBALNI promenne (pouzivat jen tehdy kdyz je __opravdu__ potrebujete) potrebuji popisna jmena stejne jako globalni funkce. Kdyz mate funkci ktera pocita pocet aktivnich uzivatelu, meli byjste ji nazvat “pocet_aktivnich_uzivatelu()”, nebo podobne, __nemeli__ byste ji nazvat “pocakuz()”.
Zakodovat typ navratove hodnoty do jmena funkce (takzvana “Madarska” notace) je hloupe – prekladac stejne zna typy navratovych hodnot a muze je zkontrolovat – a tak to jen mate programatora. Neni se co divit, ze v MicroSoftu delaji v programech chyby.
Jmena LOKALNICH promennych by mela byt kratka a vystizna. Pokud mate nejaky celociselny citac cyklu, mel by se pravdepodobne jmenovat “i”. Pojmenovat jej “citac_cyklu” je neproduktivni, pokud neni nebezpeci spatneho pochopeni. Stejne tak, “pom” muze byt promenna libovolneho typu pro prechodne ulozeni nejake hodnoty.
Pokud se obavate, ze si popletete jmena lokalnich promennych, trpite takzvanym syndromem zvysene tvorby rustoveho hormonu funkci. Viz nasleduji kapitola.
Kapitola 4: Funkce
Funkce by mely byt kratke a libezne a delat jen jednu vec. Mely by se vlezt na jednu nebo dve obrazovky textu (velikost obrazovky podle ISO/ANSI je 80×24, jak vsichni vime) a delat jednu vec a delat ji dobre.
Maximalni delka funkce je neprimo umerna slozitosti funkce. Takze, kdyz mate koncepcne jednoduchou funkci ktera je jednim dlouhym (ale jednoduchym) prikazem switch, kde pro spoustu ruznych ripadu (case) delate spoustu malych veci, je vporadku mit delsi funkci.
Avsak, pokud mate slozitou funkci, a tusite, ze neprilis nadany student prvniho rocniku stredni skoly by nemusel vubec pochopit o cem ze ta funkce vubec je, meli byste se drzet maximalnich delek daleko tesneji. Pouzivejte pomocne funkce s popisnymi jmeny (pokud si myslite, ze je to kriticke z hlediska vykonu, muzete pozadat prekladac, aby je prelozil in-line – pravepodobne to udela lepe nez by jste to udelali sami).
Dalsim meritkem funkce je pocet lokalnich promennych. Nemel by prekrocit 5 az 10, jinak delate neco spatne. Rozmyslete si znovu funkci a rozdelte ji na mensi casti. Lidsky mozek je obecne schopen zaroven sledovat kolem 7 veci naraz. Vetsi pocet ho zmate. Vy vite, ze jste genialni, ale mozna, ze by jste chteli chapat, co jste delali pred dvema tydny.
Kapitola 5: Komentare
Komentare jsou dobre, ale je zde take nebezpeci prekomentovani. NIKDY se nesnazte v komentari vysvetlit JAK vas kod funguje: je daleko lepsi napsat kod tak, ze __funkce__ je zrejma, a je ztratou casu komentovat spatne napsany kod.
Vseobecne chcete aby vase komentare rikaly CO vas kod dela, ne JAK. Taktez, zkuste nevkladat komentare do tela funkce: pokud je fuknce natolik komplikovana, ze potrebujete samostatne okomentovat jeji casti, meli by jste se pravepodbne nachvili vratit ke kapitole 4. Muzete udelat male komentare abyste upozornili na neco obvzlast chytreho nebo nepekneho, ale pokuste se to neprehanet. Radeji vlozte komentare u hlavicky funkce, s tim ze reknete co dela a mozna taky PROC to dela.
Kapitola 6: Zpackali jste to
To je v poradku, vsichni to obcas zpackame. Pravdepodobne vam vas mistni unixovy radce rekl, ze “GNU emacs” automaticky formatuje vase Ceckove zdrojove texty a vy jste si vsimli ze to skutecne dela, ale implicitni nastaveni ktere pouziva neni prilis zadouci (skutecne, je horsi nez nahodne psani – nekonecny pocet opic klepajicich do GNU emacsu by nikdy nevytvoril dobry program).
Takze, bud se muzete zbavit GNU emacsu, nebo ho nastavit tak aby pouzival rozumnejsi hodnoty. Abyste udelali to druhe vlozte nasledujici do vaseho souboru .emacs:
(defun linux-c-mode () "C mode with adjusted defaults for use with the Linux kernel." (interactive) (c-mode) (setq c-indent-level 8) (setq c-brace-imaginary-offset 0) (setq c-brace-offset -8) (setq c-argdecl-indent 8) (setq c-label-offset -8) (setq c-continued-statement-offset 8) (setq indent-tabs-mode nil) (setq tab-width 8))Tim nadefinujete prikaz M-x linux-c-mode. Kdyz budete psat modul, pokud vlozite retezec -*- linux-c -*- nekde na prvnich dvou radcich zpusobi to automaticky prechod do tohoto rezimu. Mohli byste take chtit pridat:
(setq auto-mode-alist (cons '("/usr/src/linux.*/.*\.[ch]$" . linux-c-mode) auto-mode-alist))do vaseho souboru .emacs pokud chcete zapnout rezim linux-c kdykoli editujete soubory pod /usr/src/linux.
Ale i kdyz se vam nepodari primet emacs delat rozumne formatovani, neni jeste vse ztraceno: pouzijte “indent”.
Ovsem, opet, GNU indent ma stejne hloupe implicitni nastaveni jako GNU emacs a proto musite na prikazovem radku pouzit nekolik prepinacu. Nicmene, neni to tak hrozne, protoze i tvurci GNU indentu uznavaji autoritu K&R; (lide z GNU nejsou zli, maji jen velmi scestne predstavy co se tohoto tyce), takze dejte indentu prepinace “-kr -i8” (coz znamna “K&R;, odsazeni 8 znaku”).
“indent” ma spoustu prepinacu, a zvlaste pokud se tyce preformatovavani komentaru, mohlo by se vam hodit podivat se na manualovou stranku. Ale pamatujte si: “indent” neni opravnym prostredkem spatneho programovani.
Napsal: Linus Torvalds
Z anglictiny prelozil Milan Vavra.
navrat na obsah
co ty na to ? board
Presne vtedy ako povedla nich prefrci poziarne auto.
Phiber rad vyucuje. “Chcete sa stretnut ?” pyta sa.
A Paul si mysli. Kto je tento chalan ?
Coskoro sa dozvedia Phiberovo ozajstne meno: Mark Abene.
Mark sa na sekundu zamyslel a potom pevne odvetil “Ja som v LOD.”
Samotne hlasovanie prebehlo o par tyzdnov neskor. Mark sa dostal dnu.
A v 1989, Mark ma iba 17 rokov.
A to je to co si Chris o Markovi myslel: ozajstny arogantny, vychytraly zasran.
Mark a Chris sa nikdy nezhodli. Mark dostane vyhadzov z Legion of Doom.
“M-O-D,” hovori Eli, hlaskujuc pismena.
“Ideme za vami s jednym pripadom, ktory tu mame… a ako by sme na to mali ist ?” pyta sa Kaiser.
“A co vlastne mate ?” pyta sa jeden z federalnych vysetrovatelov.
“Mame troch hackerov,” hovori Kaiser.
Ale este prebehne niekolko mesiacov pred tym ako niekoho usvedcia.
preklad z knizky Michelle Stallovej a Joshua Quittnera, prelozil k0lik(at)email.cz
navrat na obsah
co ty na to ? board
Wrrrrrr , momentalne som zistil ze uz newiem zistit absolutne nic , esteze som sa poistil, pre pripad ze by to zvonenie v hlave prestalo…. ……….
Rozbil som telku , newiem co ma to chytilo ale dostal som take brutalne nervy, ze som to proste newydrzal …..
Ked prisiel foter, skoro ma zabil …. Powedal som mu ze spat skludom moze aj pri mame a on mi jednu vrazil ,….. kua … Uz viem z coho mam to zwonenie w hlave…. Zo zakrvavenym trickom som pomaly balil fotra do igelitu … Fucking world … Cely som od krvy ale srat ma tu nikdo nebude .. Akoze tu facku – dve som zniesol v pohode ale to, ze my resetoval linux, to bolo aj na mna wela…. chudinka PP06…. Stala ma dve vodky a 1 pagac… Ten pagac som vykseftil za bratov osuxany casopis minicat ….
Linux je w riti …. Disk hlasi nejaku chybu … wobec v sebe nebadam znamky lutosti za to co som spravil….
Po prestudovani HTML z priliehavym nazvom MURDERS som dokoncil moje dielo …. Na tom internete sa clovek dozvie naozaj vsetko …. Rozhodol som sa ze budem rebel … Budem pluvat na chodniky , nadavat ucitelom a smiat sa policajtom …. a nebudem mat ten skurweny windows….
Porozbijal som wsetky okna na protest proti Microsoftu … Akoze susedia sa cudovali ale ja som im powedal nech sa staraju o seba a ignoroval som ix. …. Za dalsi sposob uznania rebelanstva som powazowal striekanie neslusnych slov v spojeniach z Microsoftom …… Bum
Zobudil som sa na policajnej stanici … Sprej my nezobrali tak som zo zvyku nastriekal I hate Microsoft … Strasne ma dobili …. newladzem sa ani pohnut … Boha je my zle . Na polici som tvrdil ze ten napis som naozaj ja nenastriekal …. Zase ma zbili … skkurveny fizli……Hm akoze ked ma konecne doviezli domov za 1. Som nemal cim striekat a za 2 som nemal ako striekat lebo som mal obe ruky zlomene …. po lici mi stekal maly pramienok krvi … PP06 tka je mrtva … co uz ale newiem ci budem mat dost igelitu aj na nu ….
Wytah som brutalne doflusal, robilo my to extremnu radost. Na zaver som ogrcal tlacitka a veselo som vyhupol von . Zapalil som si jointa a zacalo ma drhnut , tak som w samoske lopol plechovku Coca Coly …. Vypil som ju na ex stale som smedny boze ten joint bol brutalny a ujebal som este jednu …. znova som sa vygrcal… zeby v tom bola nejaka suvislost ? Zaznacil som si do diara : NikDY VIAC nespajaj JOINTA a CoCa colu … Ono miesat drogy by sa naozaj nemali …. zacalo sa zmrakat wonku som widel matne sa pohybujuce tiene wolajakych galganow , potmehudsky sa dohodujuc a tak debilne gestikulujuc ze uz aj Vinetue by poxopil ze sa jedna o diilerov… Dneska bol Windows po 350… kua zase isli disky hore ….
Bola za mnou socialna kuratorka a pytala sa ma somariny …. Bola celkom pekna a ja som nesulozil ani nepametam …. Zacal som ju balit. Po pol hodine vstala a odisla no ja som si stihol vypytat je telefon keby sa njeco stalo . aj tak z toho nic nebude a prilepil som si na zastavku dalsi otrhany listok z telefonom … Chcel som zapnut video ale bolo my to na prt lebo bola rozbita telka…. Pice to som si neuvedomil … Ziadne porno dnes nebude pomysliac si tuto tupost som si obul bakandze nahodil bundu a odvrknuc “Von” na maminuotakzu “kam ides ?” som sa vytratil z bitu …
Zase ma dobili ….. tentokrat to boli dilery … Vcera som im lopol dva disky … dnes si ma pockali …. ledva sa hybem boze …
bloody, www.bloody.sk
navrat na obsah
co ty na to ? board