View Issue Details

IDProjectCategoryView StatusLast Update
0002483GNUnettransport servicepublic2012-11-05 17:34
ReporterMatthias Wachs Assigned ToMatthias Wachs Due Date
PriorityurgentSeveritymajorReproducibilityhave not tried
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.9.4 
Summary0002483: Protocol incompatability due to bug 0002480 and 0002481
DescriptionBugs 0002480 and 0002481 could cause protocol incompatabilities:

- Different format in validation PING messages
- Different data used to create PONG Signature

In PING Message
[HELLO][PING MESSAGE][transport name][address_data]

Before 0002841 (bug):
char * address_data[address->address_len] = (struct HELLO_Address *) address

After 0002841 (correct):
char * address_data[address->address_len] = (struct HELLO_Address *) address->address

For PONG signature:
Before 0002841 (bug):
(struct HELLO_Address *) address[address->address_len]

After 0002841 (correct):
(struct HELLO_Address *) address->address[address->address_len]

I have to figure out how peers with the bugs fixed and not fixed behave when communicating.

Just replying with a PONG when receiving a PING is not possible since the address to validate is included in the PONG signature.
TagsNo tags attached.

Activities

Matthias Wachs

2012-07-05 10:03

reporter   ~0006209

Last edited: 2012-07-05 12:03

Test setup:

- 2 not nat'ed peers
svn head: integration-tests/confs/c_no_nat_client_2.conf 131.159.20.52:20046 (called NBP)
rev 22471: integration-tests/confs/c_no_nat_client.conf 131.159.20.52:20028 (called BP)

- NBP bootstrapping server, BP client

- Peers did connect
- NBP printed 1 error message (per validation attempt):

Not confirming PING with address `78.77.244.242:40210' since I cannot confirm having this address
-> here we can see the buggy IP Address, because it should be (131.159.20.52:20028)

NBP has validated address for BP
BP has no validated address for NBP

Connection from NBP to BP

Matthias Wachs

2012-07-05 11:08

reporter   ~0006210

Last edited: 2012-07-05 12:14

- 1 not nat'ed peers, 1 nat'ed peer
svn head: integration-tests/confs/c_no_nat_client.conf 131.159.20.52:20028 (called NBP)
rev 22471: integration-tests/confs/c_nat_client.conf 131.159.20.52:0 (called BP)

- took hello from NBP -> BP:

Peers do not connect
BP cannot NBP address
BP sends PING to NBP, NBP does not respond

Matthias Wachs

2012-07-05 12:19

reporter   ~0006213

- 1 not nat'ed peers, 1 nat'ed peer
svn head: integration-tests/confs/c_nat_client.conf 131.159.20.52:0 (called NBP)
rev 22471: integration-tests/confs/c_no_nat_client.conf 131.159.20.52:20028 (called BP)

- took hello from BP -> NBP:

Peers do connect and NBP validates address

Matthias Wachs

2012-07-05 15:39

reporter   ~0006214

Added code to keep compatibility in 22503.

Issue History

Date ModifiedUsernameFieldChange
2012-07-05 09:12Matthias WachsNew Issue
2012-07-05 09:12Matthias WachsStatusnew => assigned
2012-07-05 09:12Matthias WachsAssigned To => Matthias Wachs
2012-07-05 09:14Matthias WachsDescription Updated
2012-07-05 09:16Matthias WachsDescription Updated
2012-07-05 09:18Matthias WachsDescription Updated
2012-07-05 10:03Matthias WachsNote Added: 0006209
2012-07-05 10:04Matthias WachsNote Edited: 0006209
2012-07-05 11:08Matthias WachsNote Added: 0006210
2012-07-05 11:29Matthias WachsNote Edited: 0006210
2012-07-05 12:01Matthias WachsNote Edited: 0006209
2012-07-05 12:03Matthias WachsNote Edited: 0006209
2012-07-05 12:14Matthias WachsNote Edited: 0006210
2012-07-05 12:19Matthias WachsNote Added: 0006213
2012-07-05 15:39Matthias WachsNote Added: 0006214
2012-07-05 15:39Matthias WachsStatusassigned => resolved
2012-07-05 15:39Matthias WachsResolutionopen => fixed
2012-11-05 17:34Christian GrothoffStatusresolved => closed