Advertisement
Guest User

Voddler violates GPL, BSD licenses

a guest
Mar 1st, 2010
861
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.46 KB | None | 0 0
  1. Voddler's peer-to-peer based content distribution system, called VoddlerNet, incorporates code written by Google.
  2. The code they're using is Google's implementation of an elliptic curve ("curve25519") developed by Daniel J. Bernstein.
  3. The source code is available here: http://code.google.com/p/curve25519-donna/
  4.  
  5. (Voddler uses this for fast Diffie-Hellman agreements between peers, needed to agree on a shared encryption key to encrypt traffic between peers.)
  6.  
  7. The code implementing this elliptic curve is licensed under a 3-clause BSD license.
  8. This can be verified by downloading the archive and look at the file curve25519-donna.c.
  9. I've reproduced its header below.
  10.  
  11. The second clause in the BSD license has the following requirement:
  12. * Redistributions in binary form must reproduce the above
  13. * copyright notice, this list of conditions and the following disclaimer
  14. * in the documentation and/or other materials provided with the
  15. * distribution.
  16.  
  17. What this means in practice is that, if you distribute a program
  18. (e.g. VoddlerNet) that incorporates such code, you're required to
  19. reproduce the code's license somewhere.
  20. Most people do this by including a "CREDITS" or "COPYING" textfile
  21. where the license is reproduced.
  22.  
  23. I've got Voddler (which VoddlerNet is part of) installed on my Mac
  24. but none of the files installed by Voddler reproduces the license
  25. for curve25519-donna.
  26.  
  27. This violates the 3-clause BSD license under which Google's
  28. curve25519-donna implementation is distributed.
  29.  
  30.  
  31. Below is the full header from curve25519-donna.c:
  32.  
  33. /* Copyright 2008, Google Inc.
  34. * All rights reserved.
  35. *
  36. * Redistribution and use in source and binary forms, with or without
  37. * modification, are permitted provided that the following conditions are
  38. * met:
  39. *
  40. * * Redistributions of source code must retain the above copyright
  41. * notice, this list of conditions and the following disclaimer.
  42. * * Redistributions in binary form must reproduce the above
  43. * copyright notice, this list of conditions and the following disclaimer
  44. * in the documentation and/or other materials provided with the
  45. * distribution.
  46. * * Neither the name of Google Inc. nor the names of its
  47. * contributors may be used to endorse or promote products derived from
  48. * this software without specific prior written permission.
  49. *
  50. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  51. * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  52. * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  53. * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  54. * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  55. * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  56. * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  57. * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  58. * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  59. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  60. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  61. *
  62. * curve25519-donna: Curve25519 elliptic curve, public key function
  63. *
  64. * http://code.google.com/p/curve25519-donna/
  65. *
  66. * Adam Langley <agl@imperialviolet.org>
  67. *
  68. * Derived from public domain C code by Daniel J. Bernstein <djb@cr.yp.to>
  69. *
  70. * More information about curve25519 can be found here
  71. * http://cr.yp.to/ecdh.html
  72. *
  73. * djb's sample implementation of curve25519 is written in a special assembly
  74. * language called qhasm and uses the floating point registers.
  75. *
  76. * This is, almost, a clean room reimplementation from the curve25519 paper. It
  77. * uses many of the tricks described therein. Only the crecip function is taken
  78. * from the sample implementation.
  79. */
  80.  
  81.  
  82.  
  83. Also see their violation of the Gnu GPL license:
  84. http://en.wikipedia.org/wiki/Voddler#Source_Code_Copyright_Violation_Concerns
  85.  
  86. Basically, if you're distributing a program that incorporates GPL-licensed code,
  87. e.g. VoddlerPlayer.exe, all code needed to rebuild VoddlerPlayer.exe from scratch
  88. need to be provided in order to comply with the terms listed in GPL.
  89.  
  90. Voddler so far have only provided the source code for XBMC (the GPL-licensed media
  91. center application Voddler is based on). This code by itself cannot be used to
  92. rebuild VoddlerPlayer.exe and they are thus in violation of GPL.
  93.  
  94. Several people have complained here:
  95. http://getsatisfaction.com/voddler/topics/gpl_and_voddlerplayer_exe
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement