Commit Graph

1163 Commits

Author SHA1 Message Date
Gioacchino Mazzurco
1ad1fdc7be
p3NetMgrIMPL::checkNetAddress() notify if port change
Plus cleanups and proper sockaddr_storage copy
2018-05-22 19:17:37 +02:00
Gioacchino Mazzurco
0bf02e2bc3
pqissludp::Initiate_Connection() check remote_addr to be IPv4 before use 2018-05-22 19:14:25 +02:00
Phenom
f39fd069b5 Fix CppCheck duplInheritedMember warning in RsItem
/libretroshare/src/rsitems/rsitem.h:92: warning:
Cppcheck(duplInheritedMember): The class 'RsPeerNetItem' defines member
variable with name 'peerId' also defined in its parent struct 'RsItem'.
/libretroshare/src/rsitems/rsitem.h:92: warning:
Cppcheck(duplInheritedMember): The class 'RsHistoryMsgItem' defines
member variable with name 'peerId' also defined in its parent struct
'RsItem'.
/libretroshare/src/rsitems/rsitem.h:91: warning:
Cppcheck(duplInheritedMember): The class 'RsBanListConfigItem' defines
member variable with name 'type' also defined in its parent struct
'RsItem'.
/libretroshare/src/rsitems/rsitem.h:92: warning:
Cppcheck(duplInheritedMember): The class 'RsBanListConfigItem' defines
member variable with name 'peerId' also defined in its parent struct
'RsItem'.
2018-05-07 17:29:11 +02:00
Gioacchino Mazzurco
f3ae61b462
Merge branch 'json_experiments' 2018-04-27 18:17:09 +02:00
csoler
c599b5a627
removed debug output in pqissl and pqissllistenner 2018-04-22 17:13:25 +02:00
Pooh
732e87a8bb
Merge branch 'master' into logshutup1 2018-04-09 11:15:43 +03:00
Gioacchino Mazzurco
c19919962d
pqissl silence extra debug message 2018-04-08 12:37:41 +02:00
Gioacchino Mazzurco
cc091cc2c8
Fixed hidden nodes listening failure
In case of hidden node the listen address was not properly converted to
  ipv4 mapped format causing bind to fail
Use sockaddr_storage_copy instead of = as sockaddr_storage is not
  guaranted to be copyable
2018-04-07 12:48:01 +02:00
Pooh
c0834cf232
Merge branch 'master' into logshutup1 2018-04-01 17:40:44 +03:00
RetroPooh
0a943ea9ee log shut up 2018-04-01 17:30:36 +03:00
Gioacchino Mazzurco
52ef72d761
Fix p3PeerMgrIMPL::UpdateOwnAddress local address
Due to a regression introduced in
dedfcb2b60 the local address was not
updated correctly causing part of RS networking being stuck and printing
lot of invalid sockaddr_storage messages, this commit fix the regression
2018-03-03 01:39:50 +01:00
Gioacchino Mazzurco
dedfcb2b60
More ipv6 to ipv4 conversion around
More safe sockaddr_storage copy
2018-03-01 10:12:15 +01:00
Gioacchino Mazzurco
7d765ec04e
pqissl::Initiate_Connection remove duplicated code 2018-02-26 16:30:27 +01:00
Gioacchino Mazzurco
f4a6090150
More ipv6_to_ipv4 conversions 2018-02-26 16:28:36 +01:00
Gioacchino Mazzurco
ac8b56951c
Enforce main IPv4 usage for better retrocompatibility 2018-02-26 08:49:06 +01:00
Gioacchino Mazzurco
f5160338ed
sockaddr_storage_familytostring be quite if not debugging 2018-02-25 13:18:34 +01:00
Gioacchino Mazzurco
4a138e07b9
Implement IPv6 listening
With this commit IPv6-v3 surpass v0.6-IPv6-2 in term of features
  obsoleting it.
p3BitDht handle gracefully unwanted non IPv4 addresses
rsUdpStack handle gracefully unwanted non IPv4 addresses
pqissludp handle gracefully unwanted non IPv4 addresses
Move single address limitation workaround from
  p3discovery2::sendOwnContactInfo to better
  place p3PeerMgrIMPL::UpdateOwnAddress this way local address list is
  queried less often and only id there is some suggestion that it may
  have changed (probably ir will not be called all the times there is a
  changes in local network interfaces but is good enough)
Implement crossplatform rs_setsockopt to avoid too much ifdef around
Implement sockaddr_storage_copy to safely copy sockaddr_storage objects
2018-02-24 17:14:49 +01:00
Gioacchino Mazzurco
b3c7d195c8
Port pqissl to dual stack IPv6+IPv4
Changed unix_connect signature to be more comfortable for dual stack
  usage
Remove dead code in pqissl::pqissl(...)
Adapt p3I2pBob::connectI2P() to new unix_connect
Adapt extaddrfinder to new unix_connect
Add sockaddr_storage_ipv4_to_ipv6 to convert from flat IPv4 to IPv4
  mapped as IPv6
2018-02-24 14:29:56 +01:00
Gioacchino Mazzurco
8d5cd8afef
Increase size of list of ip shared via discovery2 2018-02-23 02:10:58 +01:00
Gioacchino Mazzurco
4fa6bdc789
Improve discovery
Workaround RS single local address flawed assumption by spreading
  all viables local addrresses via discovery
Spread addresses also through hidden node as they are the only hope
  to help direct connection happening for common trusted nodes
  behind nasty firewalls
2018-02-23 02:10:58 +01:00
Gioacchino Mazzurco
2044a2c848
Use retrocompatible iterators
Explain why shuffling the local addresses list before looking for
 a viable local is a bad idea.
2018-02-21 12:35:27 +01:00
Gioacchino Mazzurco
0c99975800
Use link local address only if necessary
This should solve APIPA address being always selected as preferred local
address on Windows which was causing problems connecting to machines on
the same local network.
Now the link local address is used as fallback only if there is non link
local private address available.
2018-02-19 23:23:15 +01:00
csoler
d0039241d3 replaced usleep() by rstime::rs_usleep() which accepts times >= 1 sec. Should fix problems on windows 2018-01-27 20:22:31 +01:00
Gioacchino Mazzurco
443ffb9f85 Fix some warnings 2018-01-22 15:02:33 +01:00
csoler
e28886fe79 updated to upstream/master 2018-01-05 21:59:22 +01:00
csoler
ab60f49820 prevent sending/receiving of IP addresses to/at hidden nodes 2018-01-03 18:37:43 +01:00
csoler
fcc3995d87 removed BanList service from Retro-Tor version 2018-01-01 15:49:49 +01:00
csoler
da5253059a fixed retrotor compilation when removing dht and udp 2017-12-31 17:27:21 +01:00
csoler
63b3acb95a
Merge pull request #1113 from csoler/v0.6-SSL110Fix
added sha256 calculation functions, and non backward compatible SSL I…
2017-11-23 21:27:03 +01:00
csoler
1faa274e07 simplified memory management in certificate signature verification code 2017-11-22 23:46:57 +01:00
csoler
669f2ba7ba fixed a few bugs in signature verification code accross versions 2017-11-22 22:56:40 +01:00
csoler
f6d69e09d5 ensured maximum backward compatibility for crypto changes that will occur in future v0.7 2017-11-22 00:02:11 +01:00
Gioacchino Mazzurco
6d4c9422d9 Removed unnecessary executable flag on some files 2017-11-21 13:28:24 +01:00
csoler
e2c1661c49 fixed compilation with v0.7 defines 2017-11-20 22:44:34 +01:00
csoler
cd51afbc70 fixed small bug in signature and compilation 2017-11-20 22:26:14 +01:00
csoler
9367aa0d84 changed #ifs into #ifdefs because it us more robust, and moved the definition of variables to retroshare.pri 2017-11-19 20:15:36 +01:00
csoler
ef1a61374c added proper debug output for signature verification 2017-11-19 19:57:38 +01:00
csoler
863e6256c3 centralized the defines into a single file 2017-11-19 19:34:54 +01:00
csoler
e72bd9ff4f fixed bug causing certificate rejection 2017-11-19 18:38:46 +01:00
csoler
b4fdd4e0d0 added two additional non packward compatible changes for future version 0.7, and improvements of verifications of certificate signatures 2017-11-19 18:21:56 +01:00
csoler
7472f78223 added sha256 calculation functions, and non backward compatible SSL Id computation code to active later (0.7) 2017-11-15 23:24:43 +01:00
Phenom
a248ee7d41 Fix CppCheck in rsservicecontrol.h
/libretroshare/src/retroshare/rsservicecontrol.h:46: warning:
Cppcheck(passedByValue): Function parameter 'service_name' should be
passed by reference.
2017-11-06 22:20:44 +01:00
Phenom
6219b3199b Fix CppCheck in pqiqos.h
/libretroshare/src/pqi/pqiqos.h:62: warning: Cppcheck(uninitMemberVar):
Member variable 'ItemQueue::_threshold' is not initialized in the
constructor.
/libretroshare/src/pqi/pqiqos.h:62: warning: Cppcheck(uninitMemberVar):
Member variable 'ItemQueue::_counter' is not initialized in the
constructor.
/libretroshare/src/pqi/pqiqos.h:62: warning: Cppcheck(uninitMemberVar):
Member variable 'ItemQueue::_inc' is not initialized in the constructor.
2017-11-06 22:20:44 +01:00
Phenom
87947b1f21 Fix CppCheck in pqiindic.h
/libretroshare/src/pqi/pqiindic.h:39: warning:
Cppcheck(noExplicitConstructor): Class 'Indicator' has a constructor
with 1 argument that is not explicit.
2017-11-06 22:20:44 +01:00
Phenom
20462496e9 Fix CppCheck in pqihandler.cc
/libretroshare/src/pqi/pqihandler.cc:200: warning:
Cppcheck(unusedVariable): Unused variable: it
2017-11-05 18:32:54 +01:00
Phenom
b77d027454 Fix CppCheck in p3linkmgr.cc
/libretroshare/src/pqi/p3linkmgr.cc:329: warning:
Cppcheck(unusedVariable): Unused variable: it2
2017-11-05 18:32:16 +01:00
Phenom
73e1ddc557 Fix CppCheck in pqi_base.h
/libretroshare/src/pqi/pqi_base.h:195: warning:
Cppcheck(noExplicitConstructor): Class 'PQInterface' has a constructor
with 1 argument that is not explicit.
2017-11-05 18:31:39 +01:00
Phenom
50a9d8a1e3 Fix CppCheck in p3servicecontrol
/libretroshare/src/pqi/p3servicecontrol.cc:840: warning:
Cppcheck(unreadVariable): Variable 'changes' is assigned a value that is
never used.
/libretroshare/src/pqi/p3servicecontrol.cc:941: warning:
Cppcheck(unusedVariable): Unused variable: mit
/libretroshare/src/pqi/p3servicecontrol.cc:972: warning:
Cppcheck(unusedVariable): Unused variable: mit
/libretroshare/src/pqi/p3servicecontrol.cc:88: warning:
Cppcheck(uninitMemberVar): Member variable
'p3ServiceControl::mServiceServer' is not initialized in the
constructor.
/libretroshare/src/pqi/p3servicecontrol.h:69: warning:
Cppcheck(noExplicitConstructor): Class 'p3ServiceControl' has a
constructor with 1 argument that is not explicit.
/libretroshare/src/pqi/p3servicecontrol.cc:45: warning:
Cppcheck(noExplicitConstructor): Class 'RsServiceControlItem' has a
constructor with 1 argument that is not explicit.
/libretroshare/src/pqi/p3servicecontrol.cc:52: warning:
Cppcheck(noExplicitConstructor): Class 'RsServicePermissionItem' has a
constructor with 1 argument that is not explicit.
/libretroshare/src/pqi/p3servicecontrol.cc:359: warning:
Cppcheck(passedByValue): Function parameter 'serviceName' should be
passed by reference.
2017-11-05 18:28:37 +01:00
Phenom
d21b41f871 Fix CppCheck in p3netmgr.cc
/libretroshare/src/pqi/p3netmgr.cc:926: warning:
Cppcheck(unreadVariable): Variable 'title' is assigned a value that is
never used.
/libretroshare/src/pqi/p3netmgr.cc:1808: warning:
Cppcheck(unreadVariable): Variable 'connectstr' is assigned a value that
is never used.
2017-11-05 18:25:36 +01:00
Phenom
6a0fd1179c Fix CppCheck in p3historymgr.cc
/libretroshare/src/pqi/p3historymgr.cc:353: warning:
Cppcheck(invalidScanfArgType_int): %d in format string (no. 1) requires
'int *' but the argument type is 'unsigned int *'.
2017-11-05 18:24:32 +01:00