Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.programming > #29577

Re: Czego nie lubicie jako programiści?

From "AK" <nobody@nowhere.net>
Newsgroups pl.comp.programming
Subject Re: Czego nie lubicie jako programiści?
Date 2017-04-01 19:48 +0200
Organization ATMAN - ATM S.A.
Message-ID <obop55$tve$1@node2.news.atman.pl> (permalink)
References (5 earlier) <obnnpl$t75$2@node2.news.atman.pl> <obnqb2$vme$1@node2.news.atman.pl> <obnrcc$13b$1@node2.news.atman.pl> <obo7hh$cue$1@node2.news.atman.pl> <oboi7h$8q6$1@node1.news.atman.pl>

Show all headers | View raw


Użytkownik "Sebastian Biały" <heby@poczta.onet.pl> napisał:

> On 4/1/2017 2:47 PM, AK wrote:
>>> Czyli hackowanie jednak.
>> Zadne hackowanie.
>
> Jesli zmuszasz biblitekę aby pracowala w warunkach w której jej nie
> testowano/projektowano i w tym celu musisz poznać internalne działanie
> kompilatora i linkera, a bywa że i nieudokumentowane i/lub niestabilne jego elementy - to jest 
> *czyste* hackerstwo.

Doucz Cie C. Mangling w C jest _scisle zdefiniowany_ w standardzie
i niczego nie musze "internalnie" poznawac.
Zarowno w samym C jak i w laczeniu go (czystego C) z C++
(czy innymi jezykami programowania).
PS: Zreszta to jest technika ktora zecydownie preferuje niz mixowanie
kodu w C z kodem C++ w jednym przebiegu kompilacji/w jednym lib-ie
(nawet jesli mam pelny dostep do zrodel).

>> Wsio dokaldnie opisane zarowno w raporcie C jak i C++.
>> Problemem jest co innego.
>> Proiblemem jest nieustandaryzowane (w przeciwienstwie do C)
>> manglowanie nazw w "nowoiczesnym" C++.
>
> Czyli jednak wsio nie jest dokładnie opisane? Czyli hackerstwo?

Jakie hackerstwo?
Po prostu "tak sie nie robi" poniewaz mangling w C++ zwyczajnie
nieustandaryzowany (czytaj C++ jest spieprzony).
Dlatego takie mixowanie interkompilatorowe C++ robi sie
np.wlasnie za posrednictwem C a w C++ robi sie lekkie owijki
obiektowe (same *.h) (to niestety pracochlonne, ale to nie moja wina
ze C++ "tak ma"), albo za posrednictwem dll/so.
PS: Natomiast "niezdefiniowany" to _jest_ dokladny opis.

>> Fakt ze to wymaga niekiedy "hackingu" w przypadku mix-u
>> kompilatorow (nie polecam).
>
> No wreszcie.

Co "no wreszcie"?
Jakie jest niebezpieczenstwo w tym ze chcemy sie dobrac
do np. symbolu w DLLce (a wiec ustandarysowanej systemowo
biblioteki) ktorego mangling jest "nieznany" (czylli nazwa w DLLce jest niewiadoma) ?
Jelsi znalibysmy ta nazwe to spokojnie mozlinbysmy takigo symbolu/funkcji uzyc
(gdyz wolanie z dll-ki jest systempowo usystematyzowane - czylio ponad
kompilatorowe/jezykowe)?
Problemm polega tylko na tymze my tej nazwy nie znamy.
Trzeba ja wiec poznac i w tym celu nalezy zmanglowac nazwa C++wa
i uzyc tej zmanglowanej np w dynamicznym pobraniu adresu z dll-ki
(GetProcAddress()/dlsym()).
Jedyny problem jest tym ze mangling jest per-compiler-specyfic
i dlatego 1.trzeba wiedziec jakim kompilatorem dll-ka jest uskuteczniona
2. uzyc mangkera z tego wlasnie kompilatora.
Gdy DLL-a jest w czystym ten  nazwa (bez wzledu na kompilator C
ktorym jest tworzona) jest _zawsze_ zgodny z nazwa w zrodle
(a w przypadku obj/lib-ow: _ + nazwa_w_zrodle_C)
wiec problemow 1. i 2. w C zwyczjnie nie ma.
To jest _jedyna_ roznica - ale daleka od jakiegokolwiek hackerstwa.

> Pamietam jak kilkanascie lat temu w jednej z firm w okolicy która pisała skomplikowany kod pod 
> Sparka, wylatywał u userów, ale nie wylatywał na testowaniu produkcji [1]. Winien był jeden hacker 
> w firmie który zgodnie z zasadą "będzie Pan zadowolony" stosował niedozwolone sztuczki podczas 
> linkowania aby zmusić stary kod do dzialania z nowym [2]. Wliczając w to edycję plików binarnych 
> hex edytorem i automatyczną podmianę prologów funkcji żeby ABI się zgadzało.

Jak sie ktos nie douczyl, to sobie napisze "hacker" i robi takie i inne glupoty.
Tymczasem to nie zaden hacker ale zwykly niedouczony palant :(.
Tymczasem mozna prosto i latwo i zgodnie ze standardami.
Trzeba "tylko" wiedziec co to jest *.obj, *.lib, *.dll/*.so i co tak naprawde
robi linker czy loader dllki ("kiedys" linker byl osobnym programem.
Ba!. Byl programem "ponadjezykowym".)

PS:  Nie moge "wyjsc z podziwu" jak Wy mlodzi dzis piszecie w C/C++
      nie znajac tak podstawowych systemowych rzeczy :(

AK

Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-03-30 19:48 +0000
  Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-03-30 21:14 -0700
    Re: Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-03-31 18:08 +0200
      Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-03-31 10:37 -0700
        Re: Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-03-31 19:46 +0200
          Re: Czego nie lubicie jako programiści? Andrzej S <asta@evbox.pl> - 2017-04-03 08:18 +0200
            Re: Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-04 17:22 +0200
        Re: Czego nie lubicie jako programiści? t-1 <t-1@todlaspamu.pl> - 2017-03-31 21:03 +0200
        Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-01 00:37 +0000
          Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-04-01 01:52 -0700
            Re: Czego nie lubicie jako programiści? "PawelS cbrbob(at)wbcd(dot)pl" <fake@email.org> - 2017-04-02 12:08 +0200
              Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-04-02 09:10 -0700
                Re: Czego nie lubicie jako programiści? Andyy <nie@spamowac.tego> - 2017-04-02 18:22 +0200
                Re: Czego nie lubicie jako programiści? slawek <fake@fakeemail.com> - 2017-04-03 17:25 +0200
                Re: Czego nie lubicie jako programiści? Andyy <nie@spamowac.tego> - 2017-04-03 18:12 +0200
        Re: Czego nie lubicie jako programiści? fir <profesor.fir@gmail.com> - 2017-04-02 01:00 -0700
          Re: Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-05 17:39 +0200
  Re: Czego nie lubicie jako programiści? godek.maciek@gmail.com - 2017-03-30 22:55 -0700
    Re: Czego nie lubicie jako programiści? fir <profesor.fir@gmail.com> - 2017-03-31 00:20 -0700
      Re: Czego nie lubicie jako programiści? fir <profesor.fir@gmail.com> - 2017-03-31 00:32 -0700
        Re: Czego nie lubicie jako programiści? fir <profesor.fir@gmail.com> - 2017-03-31 00:47 -0700
  Re: Czego nie lubicie jako programiści? Andyy <nie@spamowac.tego> - 2017-03-31 08:45 +0200
    Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-01 00:49 +0000
      Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-03-31 23:46 -0700
        Re: Czego nie lubicie jako programiści? Andyy <nie@spamowac.tego> - 2017-04-01 09:13 +0200
          Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-01 10:19 +0200
            Re: Czego nie lubicie jako programiści? "AK" <nobody@nowhere.net> - 2017-04-01 11:02 +0200
              Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-01 11:20 +0200
                Re: Czego nie lubicie jako programiści? "AK" <nobody@nowhere.net> - 2017-04-01 14:47 +0200
                Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-01 17:50 +0200
                Re: Czego nie lubicie jako programiści? "AK" <nobody@nowhere.net> - 2017-04-01 19:48 +0200
                Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-01 20:31 +0200
                Re: Czego nie lubicie jako programiści? "AK" <nobody@nowhere.net> - 2017-04-01 23:44 +0200
                Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-02 00:36 +0200
          Re: Czego nie lubicie jako programiści? "AK" <nobody@nowhere.net> - 2017-04-01 10:55 +0200
        Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-01 10:47 +0000
          Re: Czego nie lubicie jako programiści? Andyy <nie@spamowac.tego> - 2017-04-01 14:40 +0200
            Re: Czego nie lubicie jako programiści? "AK" <nobody@nowhere.net> - 2017-04-01 14:51 +0200
              Re: Czego nie lubicie jako programi?ci? antispam@math.uni.wroc.pl - 2017-04-06 05:04 +0000
  Re: Czego nie lubicie jako programiści? Roman Tyczka <noemail@because.no> - 2017-03-31 09:08 +0200
    Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-01 00:39 +0000
  Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-03-31 20:17 +0200
    Re: Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-03-31 20:57 +0200
    Re: Czego nie lubicie jako programiści? fir <profesor.fir@gmail.com> - 2017-03-31 13:04 -0700
      Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-01 00:42 +0000
    Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-01 00:29 +0000
      Re: Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-01 10:16 +0200
      Re: Czego nie lubicie jako programiści? slawek <fake@fakeemail.com> - 2017-04-01 21:27 +0200
  [OT] Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-02 18:32 +0200
    Re: [OT] Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-02 18:33 +0200
      Re: [OT] Czego nie lubicie jako programiści? Sebastian Biały <heby@poczta.onet.pl> - 2017-04-02 18:41 +0200
        Re: [OT] Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-02 18:52 +0200
          Re: [OT] Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-04-02 11:38 -0700
            Re: [OT] Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-05 18:49 +0200
  Re: Czego nie lubicie jako programiści? Wojciech Muła <wojtek.mula@gmail.com> - 2017-04-02 22:04 -0700
  Re: Czego nie lubicie jako programiści? "Netteria.NET" <slawek@netteria.net> - 2017-04-08 23:48 +0200
    Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-04-09 21:17 -0700
      Re: Czego nie lubicie jako programiści? Roman Tyczka <noemail@because.no> - 2017-04-10 08:40 +0200
        Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-04-10 10:42 -0700
          Re: Czego nie lubicie jako programiści? szykcech@gmail.com - 2017-04-11 12:38 -0700
            Re: Czego nie lubicie jako programiści? slawek <fake@fakeemail.com> - 2017-04-12 10:06 +0200
              Re: Czego nie lubicie jako programiści? Tomasz Kaczanowski <kaczus@poczta.onet.pl> - 2017-04-12 10:24 +0200
                Re: Czego nie lubicie jako programiści? slawek <fake@fakeemail.com> - 2017-04-12 13:09 +0200
                Re: Czego nie lubicie jako programiści? Roman Tyczka <noemail@because.no> - 2017-04-12 13:30 +0200
                Re: Czego nie lubicie jako programiści? slawek <fake@fakeemail.com> - 2017-04-12 15:10 +0200
  [OT] Czego nie lubicie jako programiści? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2017-04-10 20:11 +0200
  Re: Czego nie lubicie jako programiści? Jivanmukta <jivanmukta@poczta.onet.pl> - 2017-04-14 10:34 +0200
  Re: Czego nie lubicie jako programiści? gof@somewhere.invalid (Adam Wysocki) - 2017-04-20 10:36 +0000

csiph-web