Opened 12 years ago

Closed 11 years ago

#2222 closed Enhancement (duplicate)

Satisfy Novell's concerns about DHT

Reported by: charles Owned by: charles
Priority: Normal Milestone:
Component: Transmission Version: 1.72
Severity: Minor Keywords:
Cc: jch@…

Description (last modified by charles)

According to <http://lists.opensuse.org/opensuse-gnome/2009-03/msg00049.html>, " Novell will not ship any torrent client with DHT enabled due to legal risks."

If this is correct, Then 1.70 has made it harder, rather than easier, for OpenSUSE to use Transmission. We should provide an autoconf option to easily disable DHT support at compile time.

Attachments (5)

dht_compile_time.diff (23.8 KB) - added by chantra 12 years ago.
makes dht a compile time option
dht_compile_time2.diff (13.9 KB) - added by chantra 12 years ago.
dht_compile_time3.diff (4.6 KB) - added by charles 12 years ago.
legal-notice.diff (2.4 KB) - added by charles 12 years ago.
add a dialog to pop up once for first-time users. the dialog uses the terminology suggested by Ciaran
legal-notice-2.diff (2.8 KB) - added by charles 12 years ago.
revision of the legal notice based on feedback from vuntz @ http://lists.opensuse.org/opensuse-gnome/2009-08/msg00031.html

Download all attachments as: .zip

Change History (32)

comment:1 Changed 12 years ago by charles

  • Owner set to charles
  • Status changed from new to assigned

comment:2 Changed 12 years ago by charles

  • Description modified (diff)

Changed 12 years ago by chantra

makes dht a compile time option

comment:3 Changed 12 years ago by chantra

that might get you sorted. macosx directory was not touched at all, so needs to be done still a typo in qt/prefs-dialog.cc was fixed at the same time (line 473 of the patch)

comment:4 Changed 12 years ago by jch

dht_compile_time.diff

That's completely the wrong approach. You're touching files all over the place, rather than just stubbing out the functions in tr-dht.c.

--Juliusz

comment:5 Changed 12 years ago by jch

  • Cc jch@… added

Independently of the technical comment above, I'd like to point out that Novell have been known in the past to make doubtful claims of « legal risks » in order to avoid distributing software for reasons unknown. I'd be opposed to a patch that disables the DHT, even optionally, until Novell disclose the alleged « legal risks ».

I haven't been able to find any information about this particular case of « legal risks ». However, quoting https://bugzilla.redhat.com/show_bug.cgi?id=492297 ,

After discussing this with the openSUSE legal folks, I've determined this is not an issue of concern for Fedora.

--Juliusz

P.S. A damn shame. SuSE was a pretty nice distribution before Novell got their greasy hands on it.

comment:6 Changed 12 years ago by charles

  • Severity changed from Normal to Minor

Juliusz: I wasn't able to find Novell's rationale for this. It doesn't make sense to me, either.

However, Transmission is one of the two BitTorrent? clients provided by opensuse-gnome, and the change is trivial to do, so if we can make life a little easier for the opensuse-gnome packagers, where's the harm.

comment:7 Changed 12 years ago by charles

chantra: I think you're on the right track wrt the configure.ac and Makefile.am changes to make libdht.a a conditional link.

But I think in the actual libtransmission code, for example, it makes more sense to just stub out the API in tr-dht.h as described by Juliusz. That approach would greatly reduce the number of #ifdefs, which almost always a Good Thing.

Could you please simplify the patch to do this?

comment:8 Changed 12 years ago by chantra

here a new cleaner one. I believe a IsDHTSupported function is still needed in a few places.
rpc implementation now has a dht-supported variable and rpc-spec was updated.

Changed 12 years ago by chantra

comment:9 Changed 12 years ago by livings124

I really don't think this ticket should be considered until we have more information about this "legal" issue.

comment:10 Changed 12 years ago by charles

I've attached a third patch for this. Basically this version tries to make the patch as minimal as possible. It leaves unresolved the issues of giving gui feedback in remote clients connected to a daemon built without DHT support, because I basically think these fringe cases aren't worth complicating the code with.

comment:11 Changed 12 years ago by jch

Replying to charles:

Juliusz: I wasn't able to find Novell's rationale for this. It doesn't make sense to me, either. [...] if we can make life a little easier for the opensuse-gnome packagers, where's the harm.

It's up to you, obviously. You're the main maintainer of transmission, and as long as you're doing the bulk of the work, there's not much we contributors are entitled to censor.

My personal opinion, however, is that you should not be collaborating with Novell's hidden agenda unless they fully disclose it with you.

Let me be very clear that I trust you, and it would be quite fine with me if you told us that Novell disclosed their agenda to you, that you're not at liberty to tell us about it, but that you are convinced it's legit and you have decided to collaborate. I do feel a little uneasy in the current situation, in which the Novell folks have not judged it suitable to communicate with you.

--Juliusz

comment:12 Changed 12 years ago by charles

Let me be very clear that I trust you, and it would be quite fine with me if you told us that Novell disclosed their agenda to you, that you're not at liberty to tell us about it, but that you are convinced it's legit and you have decided to collaborate. I do feel a little uneasy in the current situation, in which the Novell folks have not judged it suitable to communicate with you.

My agenda here, if you want to call it that, is really very straightforward: The opensuse-gnome mailing list shows some dissatisfaction with their current default torrent app, and Transmission was their runner-up choice. This is to make it easier for them to switch someday, should they want to.

About Novell... well, like many Linux users I have mixed feelings, especially with their Microsoft licensing deals. However, as a developer I will say this for them: they don't get nearly enough credit for paying developers to work on GPL software. Ximian would not have survived without them, and GTK/GNOME are better off for Novell's involvement.

About the DHT question: I don't have any inside knowledge. My occam's-razor feeling is that it's because of a paranoid Novell lawyer. But I don't know that, so it's possible that in some smoke-filled room somewhere, Darl McBride?, Anders Hejlsberg, and Brian Goldfarb pounded their fists on the table and said, "Miguel! Alan! NO FUCKING DHT!" ;)

Changed 12 years ago by charles

comment:13 Changed 12 years ago by charles

  • Resolution set to fixed
  • Status changed from assigned to closed

added to trunk in r8727 for 1.73

comment:14 Changed 12 years ago by charles

  • Milestone changed from 1.73 to 1.74
  • Resolution fixed deleted
  • Status changed from closed to reopened
  • Summary changed from Make DHT support a compile-time option to Satisfy Novell's concerns about DHT

Reopening this ticket based on new information a Novell legal rep.

> Am Montag, 10. August 2009 16:41:45 schrieb Charles Kerr:
>> Hi Adrian,
>>
>> I have a question about a three-year old bug ticket that you once
>> commented on ;)
>>
>> I'm one of the programmers on the BitTorrent client "Transmission" and
>> am looking to find out what Novell would find acceptable and unacceptable
>> wrt the DHT feature.  Since your comments are the only *firsthand* statement
>> I've found on the subject, I was wondering if you were able to elaborate or,
>> more likely, would be able to pass me along in the right direction to someone
>> who can give a definitive answer.

> Hi Ciaran,
>
> can you help Charles here ?
>
> thanks
> adrian

Sure,

first off, the DHT issue has been popping up every so often over the past
couple of years (ktorrent etc). It was decided that, whereas there are good
reasons for accepting packages with DHT support from upstream, from a US legal
perspective, the situation in Germany makes it risky to do this.
 
As it is quite frustrating to review packages for DHT functionality, I talked
to our german attorney about this a few months ago. It was agreed that
shipping DHT enable package is possible, but that we should ensure that we at
least inform the user that the package ($BITTORRENT_CLIENT) should only be
used for legal file transfer. As this solution would entail hacking these
messages into n packages, it was thereafter decided that we could maybe
instead display a message on $DE first startup to ask the user to respect
other peoples property (need not necessarily target P2P specifically - just a
general notice).
 
As this wasn't implemented (AFAIK coolo was against the idea as e.g. the KDE
first startup pop-up was supposed to be chopped anyway), the situation remains
as it was before - i.e. we need some way of avoiding a "Störerhaftung" in
german law. One way of avoiding this is to inform the user. If your client
displayed a notice on startup it might suffice - of course, it would be much
more elegant to have the distro do this so that there would be no need to
change all currently available P2P clients.
 
HTH

Ciaran

comment:15 Changed 12 years ago by charles

based on the information in the previous post, r8888 removes the "compile without DHT" option.

Changed 12 years ago by charles

add a dialog to pop up once for first-time users. the dialog uses the terminology suggested by Ciaran

comment:16 Changed 12 years ago by charles

  • Milestone changed from 1.74 to None Set

comment:17 Changed 12 years ago by charles

gnome-opensuse ML thread from August 2009: http://lists.opensuse.org/opensuse-gnome/2009-08/msg00002.html

gnome-opensuse ML thread from March 2009: http://lists.opensuse.org/opensuse-gnome/2009-03/msg00050.html

gnome-opensuse ML thread from March 2008: http://lists.opensuse.org/opensuse-gnome/2008-03/msg00104.html

comment:18 Changed 12 years ago by charles

comment:19 Changed 12 years ago by charles

  • Resolution set to invalid
  • Status changed from reopened to closed

Since this patch solves Novell's complaint and has already been applied downstream @ openSUSE, but nobody else is requesting this popup dialog, I don't think it makes sense to be in the default build for everyone else as well.

I'm going to close the ticket without applying the patch to trunk and mark it as "invalid" since the fix lies in applying the patch downstream, rather than here.

Changed 12 years ago by charles

revision of the legal notice based on feedback from vuntz @ http://lists.opensuse.org/opensuse-gnome/2009-08/msg00031.html

comment:20 follow-up: Changed 12 years ago by charles

I was probably too hasty in removing the DHT conditional compile in r8888, since legal-notice-2 introduces prominent strings that opensuse won't have time to translate for their 11.2 release.

r8967 reverts r8888. I'll re-remove the DHT conditional compile for 1.80 after all the dust has settled.

comment:21 Changed 11 years ago by charles

  • Resolution invalid deleted
  • Status changed from closed to reopened

comment:22 Changed 11 years ago by charles

  • Milestone changed from None Set to 1.80

comment:23 in reply to: ↑ 20 Changed 11 years ago by charles

  • Resolution set to fixed
  • Status changed from reopened to closed

r9522 reverts r8967, as alluded to in comment:20

comment:24 Changed 11 years ago by charles

charles * r9643 /trunk/configure.ac: (trunk) #2222 "DHT support" -- remove "DHT support enabled/disabled" line from configure.ac, since it's always enabled now.

comment:25 Changed 11 years ago by charles

  • Milestone 1.80 deleted

Removing milestone. This ticket has been superceded by #2478, whose first-time-user popup message contains terminology both for the proposed "informed p2p user act" and also for the suggestions from Novell legal.

comment:26 Changed 11 years ago by charles

  • Resolution fixed deleted
  • Status changed from closed to reopened

comment:27 Changed 11 years ago by charles

  • Resolution set to duplicate
  • Status changed from reopened to closed
Note: See TracTickets for help on using tickets.