View Issue Details

IDProjectCategoryView StatusLast Update
0005927GNUnetGNSpublic2019-12-15 14:18
Reporterdvn Assigned Toschanzen Due Date
PriorityhighSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.12.0Fixed in Version0.12.0 
Summary0005927: GNS/nss plugin fails on invalid IDN names
DescriptionWhen using a video downloading utility I became aware of some "interesting" domain names...

eg. 'r6---sn-5go7ynez.googlevideo.com'

Haven't looked into it much, but apparently google isn't the only one using domains like this breaking the "double-hyphen" standard.

With the nss plugin enabled:

`r6---sn-5go7yn7s.googlevideo.com' is not a valid domain name"

TagsNo tags attached.

Relationships

related to 0005922 closedschanzen Switch label processing to UTF-8 

Activities

schanzen

2019-10-10 13:37

administrator   ~0014992

Looking at the code it is not GNS that nags here, but libidn. This simply is not a valid domain name for IDNA-aware applications (or resolvers in this case).
See https://tools.ietf.org/html/rfc5890#section-2.3.1 second paragraph.

schanzen

2019-10-10 14:19

administrator   ~0014993

Also this seems to be a specific issue with IDN2. It works for IDN1.

schanzen

2019-10-10 16:29

administrator   ~0014994

For LSD001, this check will likely be removed alltogether.

schanzen

2019-11-30 14:31

administrator   ~0015098

Correction: The nss / gnunet-gns plugin will have to handle IDNA domain names even in LSD001. Not sure how to make libidn2 happy.

schanzen

2019-12-01 11:29

administrator   ~0015106

With the changes for LSD001, gnunet-gns will try to verify that the name given through NSS is in an acceptable IDNA format.
There, we will return with error "4" if the IDNA->UTF-8 conversion fails which will trigger NSS to continue with the next nss plugin.

Fixed in 435596a7c..bab0de2b0.

schanzen

2019-12-01 12:02

administrator   ~0015111

Reopen until we remove ifdefs

Christian Grothoff

2019-12-07 13:49

manager   ~0015135

Flipped on in 3a13f497b..b365e4d52

schanzen

2019-12-15 14:18

administrator   ~0015172

0.12.0 released

Issue History

Date ModifiedUsernameFieldChange
2019-10-10 05:03dvnNew Issue
2019-10-10 05:03dvnStatusnew => assigned
2019-10-10 05:03dvnAssigned To => Christian Grothoff
2019-10-10 13:37schanzenNote Added: 0014992
2019-10-10 14:19schanzenNote Added: 0014993
2019-10-10 16:29schanzenNote Added: 0014994
2019-10-10 16:29schanzenRelationship addedrelated to 0005920
2019-10-10 16:30schanzenRelationship addedrelated to 0005922
2019-10-10 16:30schanzenRelationship deletedrelated to 0005920
2019-10-10 16:30schanzenTarget Version => 0.12.0
2019-10-10 16:30schanzenAssigned ToChristian Grothoff => schanzen
2019-11-16 17:32Christian GrothoffProduct Version => Git master
2019-11-30 14:31schanzenNote Added: 0015098
2019-12-01 11:29schanzenStatusassigned => resolved
2019-12-01 11:29schanzenResolutionopen => fixed
2019-12-01 11:29schanzenFixed in Version => 0.12.0
2019-12-01 11:29schanzenNote Added: 0015106
2019-12-01 12:02schanzenStatusresolved => assigned
2019-12-01 12:02schanzenNote Added: 0015111
2019-12-07 13:49Christian GrothoffStatusassigned => resolved
2019-12-07 13:49Christian GrothoffNote Added: 0015135
2019-12-15 14:18schanzenNote Added: 0015172
2019-12-15 14:18schanzenStatusresolved => closed