[tor-bugs] #20683 [Applications/Tor Browser]: Integrate selfrando into the alpha Linux 64bit builds
Tor Bug Tracker & Wiki
blackhole at torproject.org
Thu Dec 1 13:39:56 UTC 2016
#20683: Integrate selfrando into the alpha Linux 64bit builds
-------------------------------------------------+-------------------------
Reporter: gk | Owner: tbb-
| team
Type: task | Status: new
Priority: Medium | Milestone:
Component: Applications/Tor Browser | Version:
Severity: Normal | Resolution:
Keywords: tbb-security, TorBrowserTeam201611, | Actual Points:
GeorgKoppen201611 |
Parent ID: | Points:
Reviewer: | Sponsor:
-------------------------------------------------+-------------------------
Comment (by gk):
Trying to compile selfrando for 32bit system crashes with
{{{
g++ -o sconsRelease/x86/gcc/LinuxSymproc/ObjectFileParser.o -c -std=c++11
-include /home/debian/build/elfutils-0.160/libelf/elf.h -I
/home/debian/install/elfutils/include -fno-reorder-functions -O2 -fno-
omit-frame-pointer -g -Wl,-z,noexecstack -m32 -DRANDOLIB_ARCH=x86
-DRANDOLIB_ARCH_SIZE=32 -DRANDOLIB_IS_X86=1
-IsconsRelease/x86/gcc/LinuxSymproc -ILinuxSymproc
LinuxSymproc/ObjectFileParser.cpp
LinuxSymproc/ObjectFileParser.cpp: In member function 'void
ExecFileParser::add_txtrp_section(const
std::vector<ObjectFileParser::Section>&, const
ObjectFileParser::NonExecutableRelocations&)':
LinuxSymproc/ObjectFileParser.cpp:383:78: error: no matching function for
call to 'max(long unsigned int&, ELFIO::Elf64_Addr)'
p = std::max(p, segm->get_virtual_address() +
segm->get_memory_size());
^
In file included from
/home/debian/install/gcc/include/c++/5.1.0/algorithm:61:0,
from LinuxSymproc/ObjectFileParser.cpp:9:
/home/debian/install/gcc/include/c++/5.1.0/bits/stl_algobase.h:219:5:
note: candidate: template<class _Tp> const _Tp& std::max(const _Tp&, const
_Tp&)
max(const _Tp& __a, const _Tp& __b)
^
/home/debian/install/gcc/include/c++/5.1.0/bits/stl_algobase.h:219:5:
note: template argument deduction/substitution failed:
LinuxSymproc/ObjectFileParser.cpp:383:78: note: deduced conflicting
types for parameter 'const _Tp' ('long unsigned int' and
'ELFIO::Elf64_Addr {aka long long unsigned int}')
p = std::max(p, segm->get_virtual_address() +
segm->get_memory_size());
}}}
After talking to the selfrando devs it turns out the 32bit mode never
really got finished properly. Thus we integrate it only for 64bit bundles
for now. I've filed #20848 for the 32bit part.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/20683#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list