Re: ITA: lostirc -- simple gtk-based IRC client

Paulo <[email protected]> Mon, 25 Jul 2016 12:01:37 -0300
Newsgroups gmane.linux.debian.devel.portuguese
Message-ID <[email protected]>
Oi Terceiro,

pois é, a dúvida permanece, pois:

grep  g++ ../*.build | grep cpp|grep -v FORTIFY

não devolve nada, o que nos permite deduzir que todas as linhas que compilam os cpps tem o FORTIFY.

estariam em posição errada?

Estou propenso a achar que é um falso positivo, o que acha?

[]'s
kretcheu
:x


Em 25-07-2016 08:06, Antonio Terceiro escreveu:
> On Mon, Jul 25, 2016 at 07:59:56AM -0300, Antonio Terceiro wrote:
>> On Sun, Jul 24, 2016 at 03:53:39PM -0300, Paulo wrote:
>>> Opa,
>>>
>>> fiz um teste que pode dar uma luz, para quem entende!!
>>>
>>> Alterei o makefile.in que que produz as linhas onde não aparecia o FORTIFY colocando "na unha" a flag, assim.
>>>
>>> grep  g++ ../*.build | grep -v FORTIFY
>>>
>>> checking for g++... g++
>>> checking whether g++ accepts -g... yes
>>> checking dependency style of g++... none
>>> checking how to run the C++ preprocessor... g++ -E
>>> checking for ld used by g++... /usr/bin/ld -m elf_x86_64
>>> checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
>>> checking for g++ option to produce PIC... -fPIC
>>> checking if g++ PIC flag -fPIC works... yes
>>> checking if g++ supports -c -o file.o... yes
>>> checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
>>>
>>> ou seja aquelas linhas que não possuíam o FORTiFY passaram a possuir ficando assim:
>>>
>>> /bin/bash ../../libtool --mode=link g++  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall  -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -D_FORTIFY_SOURCE=2 -o lostirc  main.o MainWindow.o MainNotebook.o Tab.o Prefs.o ServerWindow.o GuiCommands.o Entry.o StatusBar.o TextWidget.o NickList.o DCCList.o ../libirc/libirc.a -lgtkmm-2.4 -lgtk-x11-2.0 -lgdkmm-2.4 -lgiomm-2.4 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lfontconfig -lfreetype -latkmm-1.6 -latk-1.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lcairo 
>>> mkdir .libs
>>>
>>> g++ -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -Wl,--as-needed -D_FORTIFY_SOURCE=2 -o lostirc main.o MainWindow.o MainNotebook.o Tab.o Prefs.o ServerWindow.o GuiCommands.o Entry.o StatusBar.o TextWidget.o NickList.o DCCList.o  ../libirc/libirc.a -lgtkmm-2.4 -lgdkmm-2.4 -lgiomm-2.4 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lfontconfig /usr/lib/x86_64-linux-gnu/libfreetype.so -latkmm-1.6 -latk-1.0 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lcairo -Wl,--rpath -Wl,/usr/lib/x86_64-linux-gnu -Wl,--rpath -Wl,/usr/lib/x86_64-linux-gnu
>>>
>>> No entanto.....
>>
>> o problema é que -D_FORTIFY_SOURCE=2 afeta o preprocessador, e nesses
>> dois comandos aqui você está apenas fazendo o link de binários
>> pré-compilados (*.o) num binário dinâmico final.
>>
>> o -D_FORTIFY_SOURCE=2 aparece nos pontos onde se está compilando de fato
>> o código C (*.c) pros arquivos de código objeto (*.o)?
> 
> err, s/*.c/*.cpp/ nesse caso
>
signature.asc (application/pgp-signature, 819 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJXlinTAAoJEDnxel9a775z8goP/jEmkkbOYuruyue+xhTnvaio
EPDTStxOgvXBbxfHcVRMHws6cG3lDVfjW2OqpVrEpCV4LXxD6K7R+5nNE3BOk1Hp
zKPKaaWWikm6VMvNL449PUdBry6wS8Dlb9SEpYUmauVpGghDQPH93L0xes1wxgQL
FgEc9zFW+QuafothNW3MvBc3xuREeXFcUosc96s01ROTPU5ptI6az5/uV3QoIH81
D/oCdRcfnakVyVvWVn08HzLdCYynBpgC1hrGWmrN9Umq2r1sqQI7juGw1OmhEKyh
HAT1iYVcK3dRvS8oyas+W8WRDm8oIXkSf6lKMwB/8kscR9PA0ONBC3bH716Ghz4J
dotOayyLFSts9QkBFjmJuHPbcx9pNFTXilfXcF1SiPcjmZlLKcqpt0a+c85eFfw+
GJFRFXpdYBWgvpQ9wN+YuLdW9+BxRMhwrVWGrpL+MdV7oLBzRijKVNZhiTlh7WmT
jzcpCCp6eGK2AtiSEx8ww4fpHtgf37cXg6HLjtfHHeOQyVGiQTNSif8peL6XEh8g
dpob2ffXDWq4GtNHj5j+C1zAGOT9FrsTgANV44/8mmu60Ee2c8xtxCl6exg2uemJ
5zYzccrJkQQO6zAlgvDpe0EPkHk6tPe7s4nEhdeztuIcn2IXKOik0c+AS4Lnb0QV
8cIuwyu5fUhpXGjah6Gt
=qAWy
-----END PGP SIGNATURE-----