abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 11:47 | Pozvánky
Začínáte s automatizací? Chcete se naučit správně používat Ansible? Přijďte na další Prague Containers Meetup 20. listopadu v prostorách Seznamu v Praze na Andělu.
little-drunk-jesus | Komentářů: 0
dnes 11:47 | Pozvánky
V úterý 20. 11. v Praze proběhne akce Oracle Czech Republic Meetup Group. Od 18.00 si budete moct vyslechnout přednášky NetSuite Developer Toolset a Product Recommendations system at Bronto.
RichardF | Komentářů: 0
dnes 10:33 | Nová verze

Byly aktualizovány živé instalační obrazy průběžně aktualizované linuxové distribuce Void Linux (Wikipedie). Nejnovější obrazy ve verzi 20181111 jsou k dispozici vedle i686 a x86_64 také pro jednodeskové počítače s ARM: BeagleBone, Cubieboard, Odroid a Raspberry Pi. Void Linux používá balíčkovací systém XBPS (X Binary Package System), LibreSSL a init systém a správce služeb runit. Ke stažení jsou obrazy postavené jak nad glibc, tak nad musl.

Ladislav Hagara | Komentářů: 0
dnes 02:00 | IT novinky

Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává superpočítač Summit. Český superpočítač Salomon klesl na 213. místo. Další přehledy a statistiky na stránkách projektu. V aktuálním žebříčku GREEN500 (GFlops/watts) obsadil superpočítač Summit 3. místo.

Ladislav Hagara | Komentářů: 0
včera 22:55 | Zajímavý projekt

Sir Tim Berners-Lee koncem září představil myšlenku projektu Solid. Jedná se o reakci na jednak jednostranné využívání webu k neinteraktivnímu publikování dokumentů, ale také centralizaci služeb, v jejichž případě uživatelé předávají svá data několika málo centrálním entitám. Článek na webu LWN.net Solid ukazuje konkrétněji. Základním konceptem je „pod“, uzel (lokální nebo v cloudu), kde by uživatelé mohli ukládat své komentáře k obsahu třetích stran.

Fluttershy, yay! | Komentářů: 0
11.11. 02:00 | IT novinky

S představením jednodeskového počítače Raspberry Pi 3 Model B+ v březnu letošního roku byla představena také rozšiřující deska Raspberry Pi PoE HAT (Power over Ethernet Hardware Attached on Top). Koupit ji bylo možné ale až v srpnu. Krátce na to se uživatelé začali stěžovat, že jim nefungují některá zařízení připojena k Raspberry Pi. Po potvrzení problému - nedostatečné napájení - byla rozšiřující deska stažena z prodeje. Nadace Raspberry Pi se omlouvá a informuje, že problém byl vyřešen a nová opravená verze desky je opět v prodeji.

Ladislav Hagara | Komentářů: 0
10.11. 19:55 | Komunita

Nadace pro svobodný software (FSF) aktualizovala své stránky věnované softwarovým licencím. Mezi nesvobodné licence byla například přidána licence Commons Clause. Ta zakazuje komerční použití, viz zprávička Společnost Redis Labs přelicencovala své rozšiřující moduly databáze Redis z GNU AGPL na Apache s Commons Clause a fork těchto modulů GoodFORM (Free and Open Redis Modules).

Ladislav Hagara | Komentářů: 0
10.11. 19:11 | Nová verze

Byla vydána verze 10.0 italské linuxové distribuce CAINE (Computer Aided INvestigative Environment) s kódovým názvem Infinity. Jedná se o živou linuxovou distribuci zaměřenou na forenzní analýzu digitálních dat. Nejnovější CAINE vychází z Ubuntu 18.04 a přináší řadu nových nebo aktualizovaných softwarových nástrojů.

Ladislav Hagara | Komentářů: 17
10.11. 18:55 | Nová verze

Byl vydán Debian 9.6, tj. šestá opravná verze Debianu 9 s kódovým názvem Stretch. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Předchozí instalační média Debianu 9 Stretch lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

Ladislav Hagara | Komentářů: 9
9.11. 20:11 | Nová verze

Byla vydána nová verze 2.10.8 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP. Přehled novinek i s náhledy v oznámení o vydání a v souboru NEWS.

Ladislav Hagara | Komentářů: 12
Jak nejčastěji otevíráte dokumenty na počítači?
 (89%)
 (4%)
 (7%)
Celkem 56 hlasů
 Komentářů: 4, poslední dnes 14:36
Rozcestník

Dotaz: Kompilácia starších zdrojákov.

5.11. 18:20 kysučan | skóre: 4
Kompilácia starších zdrojákov.
Přečteno: 730×
Zdravím, mám source code(lincardemu-emulácia smartcard cez rs232) cca z roku 2003. Kompilácia na súčasných distrách (ubuntu,lubuntu) mi vyhadzuje kopec chýb(a warning). Je možné nejakým nenásilnym spôsobom tie zdr. upraviť pre dnešné systémy? Podotýkam, že nie som programátorsky vybavený.

Odpovědi

5.11. 19:10 MadCatX
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
V jakém jazyku je to napsané, v C? Pokud je to napsané slušně, neměl by být problém zdroják z roku 2003 přeložit. Chtělo by samozřejmě vědět, jaké chyby to vyhodí.
5.11. 19:52 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Je to napísané v C.
marian@marian-lubuntu:~/lincardemu-0.21a$ make
OSTARGET='UNIX' uname='Linux' date: 20181105
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o main.o main.c
main.c: In function ‘main’:
main.c:773:8: warning: variable ‘fname’ set but not used [-Wunused-but-set-variable]
  char *fname;
        ^
main.c:887:18: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
  strncpy(prompt, curr_CS->system,28);
                  ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/errno.h:28,
                 from debug.h:27,
                 from common.h:22,
                 from main.c:20:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
main.c:913:5: warning: format not a string literal and no format arguments [-Wformat-security]
     scrprint(msg);
     ^
main.c:928:5: warning: format not a string literal and no format arguments [-Wformat-security]
     scrprint(msg);
     ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o command.o command.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o config.o config.c
config.c: In function ‘ConfigSection’:
config.c:148:22: warning: pointer targets in passing argument 1 of ‘StrNoCaseCmp’ differ in signedness [-Wpointer-sign]
     if(!StrNoCaseCmp(LcsConfig[i].system, section)) {
                      ^
In file included from config.c:29:0:
confutil.h:67:5: note: expected ‘const char *’ but argument is of type ‘byte *’
 int StrNoCaseCmp(const char *s1, const char *s2);
     ^
config.c: In function ‘ConfigVarVal’:
config.c:208:22: warning: pointer targets in passing argument 2 of ‘SetU’ differ in signedness [-Wpointer-sign]
       if (!SetU(val, &auto_check, 4, 0, 0, 0x7fffffff)) auto_check=0;
                      ^
In file included from config.c:29:0:
confutil.h:55:5: note: expected ‘unsigned int *’ but argument is of type ‘int *’
 int SetU (char *val,unsigned  *var, unsigned sz, int base,
     ^
config.c:211:22: warning: pointer targets in passing argument 2 of ‘SetU’ differ in signedness [-Wpointer-sign]
       if (!SetU(val, &auto_save, 4, 0, 0, 0x7fffffff)) auto_save=0;
                      ^
In file included from config.c:29:0:
confutil.h:55:5: note: expected ‘unsigned int *’ but argument is of type ‘int *’
 int SetU (char *val,unsigned  *var, unsigned sz, int base,
     ^
config.c: In function ‘build_ATR’:
config.c:410:8: warning: variable ‘TS’ set but not used [-Wunused-but-set-variable]
   byte TS,T0,FI=1,DI=1,II=0,PI1=0,PI2=0, N=0;
        ^
config.c:408:9: warning: variable ‘pTA1’ set but not used [-Wunused-but-set-variable]
   byte *pTA1=NULL;
         ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o std_log.o std_log.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o emu_options.o emu_options.c
ar r lce.a command.o config.o std_log.o emu_options.o
ar: creating lce.a
ranlib lce.a
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o des.o des.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o ec.o ec.c
ec.c: In function ‘log_current_status’:
ec.c:84:15: warning: pointer targets in passing argument 2 of ‘strcpy’ differ in signedness [-Wpointer-sign]
     strcpy(bf,chan->name);
               ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from ec.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:102:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
 ^
ec.c: In function ‘DoEC’:
ec.c:447:30: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
    if (cur_chan) strncpy(msg,cur_chan->labelname,16);
                              ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from ec.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
ec.c:448:39: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
    else if (real_ec.chan) strncpy(msg,real_ec.chan->labelname,16);
                                       ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from ec.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
ec.c:461:20: warning: pointer targets in passing argument 2 of ‘sendbyte_n’ differ in signedness [-Wpointer-sign]
    sendbyte_n(dbg, msg, n);
                    ^
In file included from common.h:63:0,
                 from ec.h:4,
                 from ec.c:9:
serfunc.h:39:5: note: expected ‘byte *’ but argument is of type ‘char *’
 int sendbyte_n(int deb,byte *ch, int n) ;
     ^
ec.c:1129:8: warning: variable ‘key’ set but not used [-Wunused-but-set-variable]
   byte key;
        ^
ec.c:1261:23: warning: variable ‘cp’ set but not used [-Wunused-but-set-variable]
        char txt[60], *cp;
                       ^
ec.c:1408:23: warning: variable ‘cp’ set but not used [-Wunused-but-set-variable]
        char txt[60], *cp;
                       ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o conax.o conax.c
conax.c: In function ‘ChangeConaxSubsystem’:
conax.c:173:32: error: lvalue required as left operand of assignment
       if (v>=0) (int)caselected=in[0];   
                                ^
conax.c: In function ‘ParseECM’:
conax.c:702:10: warning: pointer targets in passing argument 1 of ‘strncpy’ differ in signedness [-Wpointer-sign]
  strncpy(name, buf+i+1, nanolen-1);
          ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
conax.c:702:16: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
  strncpy(name, buf+i+1, nanolen-1);
                ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
conax.c:740:14: warning: pointer targets in passing argument 1 of ‘strlen’ differ in signedness [-Wpointer-sign]
    if(strlen(strb) > 0)
              ^
In file included from conax.c:6:0:
/usr/include/string.h:399:15: note: expected ‘const char *’ but argument is of type ‘byte *’
 extern size_t strlen (const char *__s)
               ^
conax.c: In function ‘build_OSD_txt’:
conax.c:855:11: warning: pointer targets in passing argument 1 of ‘strncpy’ differ in signedness [-Wpointer-sign]
   strncpy(OSD_txt+6, txt, l);
           ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
conax.c: In function ‘DoConax’:
conax.c:1322:43: warning: pointer targets in passing argument 1 of ‘sprintf’ differ in signedness [-Wpointer-sign]
               for(i=0; i<64; i++) sprintf(decoded+i*3, "%02X ", demm[i]);
                                           ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/stdio2.h:31:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (sprintf (char *__restrict __s, const char *__restrict __fmt, ...))
 ^
conax.c:1497:16: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name = tempChannel->name;
                ^
conax.c:1565:13: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
    curr_name=cur_chan->name;
             ^
conax.c:1695:15: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name=currch->name;
               ^
conax.c:1781:13: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
    curr_name=nagraChannel->name;
             ^
conax.c:1883:16: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name = subc->name;
                ^
conax.c:1885:16: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name = conaxChannel->name;
                ^
conax.c:1969:14: warning: pointer targets in passing argument 1 of ‘SetUL’ differ in signedness [-Wpointer-sign]
    if (SetUL(B2_ins+3,&pin,sz-1,10))
              ^
In file included from conax.c:9:0:
confutil.h:54:5: note: expected ‘char *’ but argument is of type ‘byte *’
 int SetUL(char *val,unsigned long  *var, unsigned sz, int base);
     ^
conax.c:1974:8: warning: format not a string literal and no format arguments [-Wformat-security]
        scrprint(msg);
        ^
conax.c:908:12: warning: variable ‘dbgsend’ set but not used [-Wunused-but-set-variable]
   int dbg, dbgsend;
            ^
conax.c:903:7: warning: variable ‘tempp3’ set but not used [-Wunused-but-set-variable]
   int tempp3 = 0;
       ^
xxxx: recipe for target 'conax.o' failed
make: *** [conax.o] Error 1
zdrojaky sú http://www.streamboard.tv/oscam/ticket/369
5.11. 20:05 pc2005 | skóre: 36 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Hmm takže odpověď na to zda je ten zdroják kvalitní máme :-/.

Ve výpisu je jen jeden error, zbytek není fatální. To neznamená, že to po opravě nechcípne jinde.
conax.c:173:32: error: lvalue required as left operand of assignment
       if (v>=0) (int)caselected=in[0];   
Autor se snaží přiřadit integer číslo do proměnné typu ukazatel. Zkus v tom kódu dát před "caselected" hvězdičku. Nevím ale zda to je to co měl autor na mysli, že chce udělat.

Ostatní chyby jsou takové ty klasické "kašlu na to, funguje to", kdy se používají signed typy v unsigned použití apod.

Jsi si jistý, že neexistuje nějakej modernější soft na komunikaci? Jestli to je z roku 2003, tak to dost možná nemusí být 64bit kompatibilní.
5.11. 20:33 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.

Vzhledem k tomu, jak se ta proměnná používá, měl autor spíš na mysli

    if (v >= 0)
        *(int *)&caselected = in[0]

Ale vzhledem k tomu, že proměnná je static a všude se před použitím castuje na int, nevidím důvod, proč je deklarovaná jako pointer. Ono i kdyby se v různých větvích používaly různé typy, tak od toho je union, který existoval už dlouho před rokem 2003.

5.11. 21:46 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
if (v>=0) *(int *)&caselected = in[0];
ma byt
if (v>=0) caselected = in[0];
Podla: https://www.comhit.net/archive/index.php?t-32910.html
6.11. 07:06 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Technicky to sice - s warningem - projde, ale nic to nemění na skutečnosti, že proměnná, do které se vždy ukládá int a ze které se vždy čte int, má být prostě int, ne pointer.
6.11. 17:49 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Ako dakto slavny povedal, C ti umoznuje odstralit nohu.

Este ze obycajne je, ze sizeof (void) >= sizeof(int).
5.11. 21:21 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Nič modernejšie public nie je, iba ak .exe aplikácia Fausto, kde to je implementované asi z týchto zdrojákov. Pomohlo
 if (v >= 0)
        *(int *)&caselected = in[0]
potom
marian@marian-lubuntu:~/lincardemu-0.21a$ make
OSTARGET='UNIX' uname='Linux' date: 20181105
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o main.o main.c
main.c: In function ‘main’:
main.c:773:8: warning: variable ‘fname’ set but not used [-Wunused-but-set-variable]
  char *fname;
        ^
main.c:887:18: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
  strncpy(prompt, curr_CS->system,28);
                  ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/errno.h:28,
                 from debug.h:27,
                 from common.h:22,
                 from main.c:20:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
main.c:913:5: warning: format not a string literal and no format arguments [-Wformat-security]
     scrprint(msg);
     ^
main.c:928:5: warning: format not a string literal and no format arguments [-Wformat-security]
     scrprint(msg);
     ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o command.o command.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o config.o config.c
config.c: In function ‘ConfigSection’:
config.c:148:22: warning: pointer targets in passing argument 1 of ‘StrNoCaseCmp’ differ in signedness [-Wpointer-sign]
     if(!StrNoCaseCmp(LcsConfig[i].system, section)) {
                      ^
In file included from config.c:29:0:
confutil.h:67:5: note: expected ‘const char *’ but argument is of type ‘byte *’
 int StrNoCaseCmp(const char *s1, const char *s2);
     ^
config.c: In function ‘ConfigVarVal’:
config.c:208:22: warning: pointer targets in passing argument 2 of ‘SetU’ differ in signedness [-Wpointer-sign]
       if (!SetU(val, &auto_check, 4, 0, 0, 0x7fffffff)) auto_check=0;
                      ^
In file included from config.c:29:0:
confutil.h:55:5: note: expected ‘unsigned int *’ but argument is of type ‘int *’
 int SetU (char *val,unsigned  *var, unsigned sz, int base,
     ^
config.c:211:22: warning: pointer targets in passing argument 2 of ‘SetU’ differ in signedness [-Wpointer-sign]
       if (!SetU(val, &auto_save, 4, 0, 0, 0x7fffffff)) auto_save=0;
                      ^
In file included from config.c:29:0:
confutil.h:55:5: note: expected ‘unsigned int *’ but argument is of type ‘int *’
 int SetU (char *val,unsigned  *var, unsigned sz, int base,
     ^
config.c: In function ‘build_ATR’:
config.c:410:8: warning: variable ‘TS’ set but not used [-Wunused-but-set-variable]
   byte TS,T0,FI=1,DI=1,II=0,PI1=0,PI2=0, N=0;
        ^
config.c:408:9: warning: variable ‘pTA1’ set but not used [-Wunused-but-set-variable]
   byte *pTA1=NULL;
         ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o std_log.o std_log.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o emu_options.o emu_options.c
ar r lce.a command.o config.o std_log.o emu_options.o
ar: creating lce.a
ranlib lce.a
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o des.o des.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o ec.o ec.c
ec.c: In function ‘log_current_status’:
ec.c:84:15: warning: pointer targets in passing argument 2 of ‘strcpy’ differ in signedness [-Wpointer-sign]
     strcpy(bf,chan->name);
               ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from ec.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:102:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
 ^
ec.c: In function ‘DoEC’:
ec.c:447:30: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
    if (cur_chan) strncpy(msg,cur_chan->labelname,16);
                              ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from ec.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
ec.c:448:39: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
    else if (real_ec.chan) strncpy(msg,real_ec.chan->labelname,16);
                                       ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from ec.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
ec.c:461:20: warning: pointer targets in passing argument 2 of ‘sendbyte_n’ differ in signedness [-Wpointer-sign]
    sendbyte_n(dbg, msg, n);
                    ^
In file included from common.h:63:0,
                 from ec.h:4,
                 from ec.c:9:
serfunc.h:39:5: note: expected ‘byte *’ but argument is of type ‘char *’
 int sendbyte_n(int deb,byte *ch, int n) ;
     ^
ec.c:1129:8: warning: variable ‘key’ set but not used [-Wunused-but-set-variable]
   byte key;
        ^
ec.c:1261:23: warning: variable ‘cp’ set but not used [-Wunused-but-set-variable]
        char txt[60], *cp;
                       ^
ec.c:1408:23: warning: variable ‘cp’ set but not used [-Wunused-but-set-variable]
        char txt[60], *cp;
                       ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o conax.o conax.c
conax.c: In function ‘ParseECM’:
conax.c:702:10: warning: pointer targets in passing argument 1 of ‘strncpy’ differ in signedness [-Wpointer-sign]
  strncpy(name, buf+i+1, nanolen-1);
          ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
conax.c:702:16: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
  strncpy(name, buf+i+1, nanolen-1);
                ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
conax.c:740:14: warning: pointer targets in passing argument 1 of ‘strlen’ differ in signedness [-Wpointer-sign]
    if(strlen(strb) > 0)
              ^
In file included from conax.c:6:0:
/usr/include/string.h:399:15: note: expected ‘const char *’ but argument is of type ‘byte *’
 extern size_t strlen (const char *__s)
               ^
conax.c: In function ‘build_OSD_txt’:
conax.c:855:11: warning: pointer targets in passing argument 1 of ‘strncpy’ differ in signedness [-Wpointer-sign]
   strncpy(OSD_txt+6, txt, l);
           ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
conax.c: In function ‘DoConax’:
conax.c:1322:43: warning: pointer targets in passing argument 1 of ‘sprintf’ differ in signedness [-Wpointer-sign]
               for(i=0; i<64; i++) sprintf(decoded+i*3, "%02X ", demm[i]);
                                           ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from conax.c:4:
/usr/include/i386-linux-gnu/bits/stdio2.h:31:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (sprintf (char *__restrict __s, const char *__restrict __fmt, ...))
 ^
conax.c:1497:16: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name = tempChannel->name;
                ^
conax.c:1565:13: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
    curr_name=cur_chan->name;
             ^
conax.c:1695:15: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name=currch->name;
               ^
conax.c:1781:13: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
    curr_name=nagraChannel->name;
             ^
conax.c:1883:16: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name = subc->name;
                ^
conax.c:1885:16: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
      curr_name = conaxChannel->name;
                ^
conax.c:1969:14: warning: pointer targets in passing argument 1 of ‘SetUL’ differ in signedness [-Wpointer-sign]
    if (SetUL(B2_ins+3,&pin,sz-1,10))
              ^
In file included from conax.c:9:0:
confutil.h:54:5: note: expected ‘char *’ but argument is of type ‘byte *’
 int SetUL(char *val,unsigned long  *var, unsigned sz, int base);
     ^
conax.c:1974:8: warning: format not a string literal and no format arguments [-Wformat-security]
        scrprint(msg);
        ^
conax.c:908:12: warning: variable ‘dbgsend’ set but not used [-Wunused-but-set-variable]
   int dbg, dbgsend;
            ^
conax.c:903:7: warning: variable ‘tempp3’ set but not used [-Wunused-but-set-variable]
   int tempp3 = 0;
       ^
conax.c: In function ‘ChangeConaxSubsystem’:
conax.c:176:22: warning: iteration 6u invokes undefined behavior [-Waggressive-loop-optimizations]
         if (systab[i].sys1) {
                      ^
conax.c:175:7: note: containing loop
       for(i=0; i<...) {
       ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o irdeto.o irdeto.c
irdeto.c: In function ‘DoIrdeto’:
irdeto.c:296:17: warning: pointer targets in initialization differ in signedness [-Wpointer-sign]
    byte *demm = buf+14+8+1;
                 ^
irdeto.c:299:31: warning: pointer targets in passing argument 1 of ‘Nagra_RSADecrypt_SSL_EMM’ differ in signedness [-Wpointer-sign]
      Nagra_RSADecrypt_SSL_EMM(buf+14, (int)buf[12],nagraChannel->b[E11], nagraChannel->b[N11],nagraChannel->b[N12]);
                               ^
In file included from irdeto.c:20:0:
nagra.h:11:13: note: expected ‘unsigned char *’ but argument is of type ‘char *’
 extern void Nagra_RSADecrypt_SSL_EMM(unsigned char* Data, int provid, BIGNUM *e1, BIGNUM *n1, BIGNUM *n2);
             ^
irdeto.c:302:31: warning: pointer targets in passing argument 1 of ‘Nagra_RSADecrypt_SSL_EMM’ differ in signedness [-Wpointer-sign]
      Nagra_RSADecrypt_SSL_EMM(buf+14, (int)buf[12],nagraChannel->b[E11], nagraChannel->b[N11],nagraChannel->b[N22]);
                               ^
In file included from irdeto.c:20:0:
nagra.h:11:13: note: expected ‘unsigned char *’ but argument is of type ‘char *’
 extern void Nagra_RSADecrypt_SSL_EMM(unsigned char* Data, int provid, BIGNUM *e1, BIGNUM *n1, BIGNUM *n2);
             ^
irdeto.c:306:33: warning: pointer targets in passing argument 1 of ‘Nagra_RSADecrypt_SSL_EMM’ differ in signedness [-Wpointer-sign]
        Nagra_RSADecrypt_SSL_EMM(buf+14, (int)buf[12],nagraChannel->b[E31], nagraChannel->b[N31],nagraChannel->b[N32]);
                                 ^
In file included from irdeto.c:20:0:
nagra.h:11:13: note: expected ‘unsigned char *’ but argument is of type ‘char *’
 extern void Nagra_RSADecrypt_SSL_EMM(unsigned char* Data, int provid, BIGNUM *e1, BIGNUM *n1, BIGNUM *n2);
             ^
irdeto.c:314:35: warning: pointer targets in passing argument 1 of ‘sprintf’ differ in signedness [-Wpointer-sign]
      for (i=0; i<64; i++) sprintf(decoded+i*3, "%02X ", demm[i]);
                                   ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/stdio.h:27,
                 from irdeto.c:3:
/usr/include/i386-linux-gnu/bits/stdio2.h:31:1: note: expected ‘char * __restrict__’ but argument is of type ‘byte *’
 __NTH (sprintf (char *__restrict __s, const char *__restrict __fmt, ...))
 ^
irdeto.c:438:13: warning: variable ‘nw’ set but not used [-Wunused-but-set-variable]
         int nw;
             ^
irdeto.c:211:25: warning: variable ‘camkey_inuse’ set but not used [-Wunused-but-set-variable]
   int i=0,counter=0,x=0,camkey_inuse=0;
                         ^
irdeto.c:207:12: warning: variable ‘dbgsend’ set but not used [-Wunused-but-set-variable]
   int dbg, dbgsend;
            ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o irdeto_v1_algorithm.o irdeto_v1_algorithm.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o seca.o seca.c
seca.c: In function ‘DoSeca’:
seca.c:608:12: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
       tbuf = buf;
            ^
seca.c:618:29: warning: pointer targets in passing argument 2 of ‘mlogprint_buffer’ differ in signedness [-Wpointer-sign]
       mlogprint_buffer(dbg, buf, 0,  counter, "\n\nIndata  :");
                             ^
In file included from common.h:22:0,
                 from config.h:23,
                 from seca.c:5:
debug.h:213:6: note: expected ‘unsigned char *’ but argument is of type ‘char *’
 void mlogprint_buffer(int dbg, unsigned char *buf, int first, int sz,
      ^
seca.c:622:38: warning: pointer targets in passing argument 3 of ‘Seca2decryptEMM’ differ in signedness [-Wpointer-sign]
  int res = Seca2decryptEMM(chan, p2, buf, p3);
                                      ^
In file included from seca.c:10:0:
seca2Algorithm.h:9:5: note: expected ‘unsigned char *’ but argument is of type ‘char *’
 int Seca2decryptEMM(struct Secachannel *ch, unsigned char key_in_use, unsigned char *emm, int len);
     ^
seca.c:634:16: warning: pointer targets in passing argument 3 of ‘SecaDecrypt’ differ in signedness [-Wpointer-sign]
                buf+counter-8);
                ^
In file included from seca.h:5:0,
                 from seca.c:8:
secaAlgorithm.h:7:6: note: expected ‘unsigned char *’ but argument is of type ‘char *’
 void SecaDecrypt(unsigned char *k1, unsigned char *k2, unsigned char *d);
      ^
seca.c: In function ‘log_current_SECA_status’:
seca.c:761:11: warning: variable ‘name’ set but not used [-Wunused-but-set-variable]
     char *name;
           ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o viaccess.o viaccess.c
viaccess.c: In function ‘log_current_status_Viaccess’:
viaccess.c:95:15: warning: pointer targets in passing argument 2 of ‘strcpy’ differ in signedness [-Wpointer-sign]
     strcpy(bf,chan->name);
               ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/string.h:25,
                 from viaccess.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:102:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strcpy (char *__restrict __dest, const char *__restrict __src))
 ^
viaccess.c: In function ‘DoViaccess’:
viaccess.c:281:20: warning: pointer targets in passing argument 2 of ‘sendbyte_n’ differ in signedness [-Wpointer-sign]
    sendbyte_n(dbg, provider, p3-6);
                    ^
In file included from common.h:63:0,
                 from config.h:23,
                 from viaccess.c:9:
serfunc.h:39:5: note: expected ‘byte *’ but argument is of type ‘char *’
 int sendbyte_n(int deb,byte *ch, int n) ;
     ^
viaccess.c:354:20: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
    if (cur_chan) cp=cur_chan->labelname ;
                    ^
viaccess.c:517:20: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
      strncpy(msg+n,cur_chan->labelname,lsz-n);
                    ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/string.h:25,
                 from viaccess.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘u8 *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
viaccess.c:528:22: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness [-Wpointer-sign]
        strncpy(txt+1,curr_CS->system,4);
                      ^
In file included from /usr/include/features.h:374:0,
                 from /usr/include/string.h:25,
                 from viaccess.c:3:
/usr/include/i386-linux-gnu/bits/string3.h:117:1: note: expected ‘const char * __restrict__’ but argument is of type ‘byte *’
 __NTH (strncpy (char *__restrict __dest, const char *__restrict __src,
 ^
viaccess.c:541:20: warning: pointer targets in passing argument 2 of ‘sendbyte_n’ differ in signedness [-Wpointer-sign]
    sendbyte_n(dbg, msg, n);
                    ^
In file included from common.h:63:0,
                 from config.h:23,
                 from viaccess.c:9:
serfunc.h:39:5: note: expected ‘byte *’ but argument is of type ‘char *’
 int sendbyte_n(int deb,byte *ch, int n) ;
     ^
viaccess.c:1449:19: warning: variable ‘cp’ set but not used [-Wunused-but-set-variable]
    char txt[60], *cp;
                   ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o tpscrypt.o tpscrypt.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o secaAlgorithm.o secaAlgorithm.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o videoguard.o videoguard.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o ec-s.o ec-s.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o nagra.o nagra.c
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o seca2Algorithm.o seca2Algorithm.c
seca2Algorithm.c: In function ‘Seca2decrypt’:
seca2Algorithm.c:1253:26: warning: variable ‘nanoD2Data’ set but not used [-Wunused-but-set-variable]
     const unsigned char *nanoD2Data=0;
                          ^
seca2Algorithm.c: In function ‘Seca2decryptEMM’:
seca2Algorithm.c:1419:10: warning: variable ‘Mask’ set but not used [-Wunused-but-set-variable]
   void (*Mask)(unsigned short offset, unsigned char *buffer);
          ^
seca2Algorithm.c: At top level:
seca2Algorithm.c:281:22: warning: ‘tabFx1_pol’ defined but not used [-Wunused-variable]
 static unsigned char tabFx1_pol[256] = {
                      ^
seca2Algorithm.c:298:22: warning: ‘tabFx2_pol’ defined but not used [-Wunused-variable]
 static unsigned char tabFx2_pol[256] = {
                      ^
gcc -Wall  -O2 -g  -DUNIX -DUSE_PRIORITY_SCHEDULING -DVERS=\"0.21a\"   -c -o sha.o sha.c
make: *** No rule to make target '6805_cpu.h', needed by 'NagraFxEmu.o'.  Stop.
5.11. 21:29 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Ak chces, daj mail, posli zdrojaky a Ti to upravim zajtra a zdrajoaky si nenecham/zmazem.

V makefile by niekde mal zacat riadok NagraFxEmu.o, tak zmaz zavistlost na .h. ten by sa nemal najskor generovat, cize sa proste len vlozi. (ak nie, ak by bolo inak, takto upravime).
5.11. 21:31 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Link na zdrojaky máš vyššie...
5.11. 21:40 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Uz som nasiel niekde inde na fore.
5.11. 21:43 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
pcsat (zavinac) mail (tecka) telekom (tecka) sk
5.11. 21:51 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Mas vytvorit prazdny subor v lincardemu-0.21a.

Takze napr.:
touch 6805_cpu.h
Podla: https://www.comhit.net/threads/32910-Funkar-lincardemu
5.11. 22:03 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Ok, dík, podľa tvojho odkazu kompilácia prejde...
10.11. 15:24 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Helfne mi niekto s úpravou tohto programu?
10.11. 20:22 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Co konkretne? ... Ten program mi v pohode prelozilo.
10.11. 21:03 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Neviem prečo, nefunguje tam jedna funkcia - ir_CAMencrypt. Ak sa zavolá, tak to ostane visieť.
10.11. 22:48 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Skor by som povedal, ze chyba nie je v kode, ale v ovladani zariadenia. Presne neviem. S takym HW skusenosti nemam. ... Nastavoval si podla toho madarskeho linku (tak pisal ako to rozbiehal)?
11.11. 06:11 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Skôr by som povedal, že to je švédsky link. Ovládanie zar. je ok. Bez toho camcryptu mi to ide. Ale na tom camcrypte je niečo naprd, aj keď to vyzerá, že je to ok.
void ir_CAMencrypt(unsigned char *a, byte *camkey)
{ 
  char i, j;
  unsigned char t;
  unsigned char xor;
  byte keytemp[8];
  
  memcpy((byte *)keytemp, (byte *)camkey, 8);
    	
for (i = 7; i >= 0; --i) 
{
    for (j = 7; j >= 0; --j)
    {
      xor = a[6];
      xor ^= keytemp[(unsigned char)j];
      xor ^= i;
      xor = ir_table1[xor];
      t = a[7];
      a[7] = a[6];
      a[6] = a[5] ^ xor;
      a[5] = a[4];
      a[4] = a[3];
      a[3] = a[2];
      a[2] = a[1];
      a[1] = a[0];
      a[0] = t ^ xor;
    }
    ir_rotrk(keytemp);
 } 
   
}
myslím, že to mrzne na tých cykloch...
11.11. 10:47 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Pozeral som zdrojak, tj. tu funkciu. Ale nie je tam nekonecny cyklus. Je tam nastavenie pamete. Konecny dvojcyklus a xor sa pouziva sifrovanie/encryptonie alebo vypocet kontrolnych suctov a po kazdom vypocte poslane na zaredenie. Nazov funkcie je CAM znaci ir_CAMencrypt. Kluc CAM enkryptuje. Neviem, co presne. Lebo tu oblast IT nepoznam az tak. CAM
11.11. 14:06 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Pomohla zmena char i, j; na int i, j;
11.11. 14:44 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Zaujimave. Zeby pretecenie? Ale otestoval som , ale neskoncilo mi nekonecnim cyklom. Tj. program sa ukoncil.
/* edited debian+ ir_CAMencrypt from lincardemu (GPLv2) */
#include "stdio.h"
#define byte char
void ir_CAMencrypt(unsigned char *a, byte *camkey)
{ 
  char i, j;
  unsigned char t;
  unsigned char xor;
  byte keytemp[8];
  
  //memcpy((byte *)keytemp, (byte *)camkey, 8);
    	
for (i = 7; i >= 0; --i) 
{
    for (j = 7; j >= 0; --j)
    {
      /*xor = a[6];
      xor ^= keytemp[(unsigned char)j];
      xor ^= i;
      xor = ir_table1[xor];
      t = a[7];
      a[7] = a[6];
      a[6] = a[5] ^ xor;
      a[5] = a[4];
      a[4] = a[3];
      a[3] = a[2];
      a[2] = a[1];
      a[1] = a[0];
      a[0] = t ^ xor;*/
    }
    //ir_rotrk(keytemp);
 } 
   
}

int main(int argc, char **argv)
{
	ir_CAMencrypt(0, NULL);
	return 0;
}

Ale ked pozeram na riadok:
xor ^= i;
tam mohlo pripadne zmenit vypocet kontrolneho suctu a potom nieco nesedelo, ked poslalo, tak to zostalo stat/vysiet. char ma definovanu velkost 1B, ostatne maju iba urceny minimalny rozsah.
11.11. 15:29 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Na tej funkcii to proste končilo(nič sa neposielalo). S CRC to nemá nič, ten sa dopočitáva inak(aj keď ešte neviem kde), pre celú ins.
11.11. 15:43 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Prave v tej funkcie rata ... Vid nazov encrypt (opak je decrypt). Vid kod, tam exclusiv OR ^ (XOR zapis v C).

A program len tak zamrznut nemohol. Kto vie, aky kod je v ir_rotrk()). Ale to je jedno. Hlavne ze si opravil.

Uz vsetko ide?
11.11. 16:24 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Spomínaná funkcia preráta(podľa camkey) 16 bytov plain cws(control words) na encryptovaných 16 bytov cws. Tie sa vložia do ins.(odpoveď karty/season), ku ktorej sa dopočítava 1B crc(signatúra) niekde inde v programe. Ir_rotrk je bitová rotácia a na nej to nepadalo(testované vynechaním funkcie). Problém bol jednoznačne v tom char_e, ale prečo, to musí vysvetliť nejaká múdra hlava.

Fakčí mi to zatial len v usb čítačke ovládanej oscamom, čo je len také testovacie prostr. Cieľom je rozbehať to v hw CAM_e, povedzme aj certifikovanom.

Nateraz to vidím tak, že bude potrebné sa pohrať s resetom a ATR_kom, tak ako to má vyriešené Fausto(windows apl., ktorá disponuje aj touto funkciou), kde po štarte sa čaká na reset(privedené napätie na určitý pin season interface), inak povedané zasunutie karty do CAM(čítačka). Lincardemu posiela ATR po štarte, aj keď je tam aj funkcia manual_reset...Proste ešte bude treba na tom čo porobiť.
11.11. 17:21 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Ak to robi chyby a fakt nevies preco, tak je zrejme poskodeny zasobnik (neuvolnanena pamet, nespravne pouzity pointer). Pouzi valgrind.
11.11. 18:52 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.

Mohlo by to záležet na tom, jak překladač implementuje typ char. Pokud jako unsigned, bude podmínka "i > 0" automaticky splněná a novější překladače rovnou přeloží cyklus jako nekonečný.

11.11. 19:43 kysučan | skóre: 4
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
To by mohlo byť ono, bolo to kompilované na arm_e OPi PC. Aj podľa tejto diskusie.
11.11. 20:55 debian+
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
To ma napadlo, preto som si vyskusal kod.
11.11. 21:21 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Kompilácia starších zdrojákov.
Tohle je právě jeden z příkladů, kdy vyzkoušet nestačí, protože chování závisí na překladači. Moje doporučení je:
  • Typ char používat jen tam, kde se jedná čistě o znak a neprovádím žádné aritmetické operace.
  • Pokud dělám cokoli, kde by výsledek mohl záviset na tom, jestli je typ znaménkový nebo ne, explicitně deklarovat jako (un)signed char.
  • Pokud hodnoty nepoužívám jako znaky ale jako osmibitová čísla, použít (u)int8_t.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.