Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: https://forum.uvnc.com/viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: https://forum.uvnc.com/viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://x.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

Fulfilling the GNU license terms for SC executables

Single Click discussions / bugs
Post Reply
bz922x
Posts: 7
Joined: 2005-07-04 16:57

Fulfilling the GNU license terms for SC executables

Post by bz922x »

I have just spent the morning reading, working, and playing with UltraVNC SC so that I can use it to support the users of my windows based application. And I LOVE IT. Simple. Easy to configure. Easy to use. Easy to build.

But ... from what I see, all of VNC, including SC, is covered by the GNU General Public License. To distribute the SC executable under the GPL I must be prepared to distribute all of the source files to build it:
3.b) ... a written offer ... to give any third party ... a complete machine-readable copy of the corresponding source code ...
So ... What do I need to archive and be prepared to ship to be in compliance with the license? The custom.zip is clearly not adequate, as the SC exe file cannot be built from that alone. I would, in fact, rather not distribute the custom.zip file, as it contains the rc4 key for the encrypted session.

Can I just archive the ultravnc_src_240605.zip from the download page to satisfy the license requirements? or do I need something else? something more?
God grant me the serenity to accept the code I cannot change, the courage to change the code I can change, and the wisdom to know the difference.
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6863
Joined: 2004-04-23 10:21
Contact:

Post by Rudi De Vos »

You only need to provide a link to the place where source codes can be downloaded.

http://msrc4plugin.home.comcast.net/index.html
http://cvs.sourceforge.net/viewcvs.py/ultravnc/

Code is current up to date until SC based on RC203.
SC code still need to be updated to Rel1.00, but hollidays comes first.

SC creator makes an SFX archive (7zip)
Using 7zip you can extract the files again, including key !!!!!!
bz922x
Posts: 7
Joined: 2005-07-04 16:57

Post by bz922x »

Rudi,

I see that you are one of the UltraVNC developers, so I give your opinion great weight and I don't want to get into a nit picky argument. I really want to accept your answer, but I also want to be a good distributer of GPL'd code (that is I want to "cover my ass").

The GPL only allows me to subjugate my responsibility for distribution per:
3.c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
For me to push the source distribution responsibility back to the sourceforge project site, my distribution of UltraVNC SC with my for profit application would have to be considered noncommercial.

Is that the case? Since I charge my customers for my application - not specifically for UltraVNC SC (which I hope to add) - will my distribution of UltraVNC SC be considered noncommercial? If not, then I think that section 3 requires me to keep a snapshot of the source code to distribute on demand (3.b.) or distribute the snapshot with the executable (3.a.).[br][br]P.S. The holiday should come first, but I'm working today so I can spend the rest of the week at scout camp. That will be my holiday.
God grant me the serenity to accept the code I cannot change, the courage to change the code I can change, and the wisdom to know the difference.
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6863
Joined: 2004-04-23 10:21
Contact:

Post by Rudi De Vos »

A) If you don't make any changes to the code, you don't have to distribute
the code.
Our code is maintained in the cvs on sourceforge, the only thing you have to do is to tell that the source is available there.

The only problem you can have is when sourcefourge would stop his service. Just in case keep a save copy somewhere.

B) If you make changes to the code, then you also need to make the code available. Usual the same media is used as you use for the exe.
If the exe can be downloaded, you provide also a link for the source.
If you distribute it on cd, you put the sources on cd.

3.c) is actual some outdated stuff, from the time bandwidth was narrow.
It allow to distribute only exe without the source code. But when someone request the code you need to deliver them for no more then the actual cost (empty floppy+post). This was only allowed for a noncommercial distribution.
bz922x
Posts: 7
Joined: 2005-07-04 16:57

Post by bz922x »

Rudi,

I'm not sure I fully agree with your interpretation of the GPL, but I don't need to. To make sure that I am covered, I'll keep a copy of the current source releases, and a copy of this conversation. That should be enough to satisfy all of the management/legal types that want to make sure we are doing the right stuff.

Now all I need to do is add a button, then *poof* instant remote support.

Thanks.
God grant me the serenity to accept the code I cannot change, the courage to change the code I can change, and the wisdom to know the difference.
TKD
20
20
Posts: 32
Joined: 2005-04-15 12:44
Location: U.S.

FOR CLARITY'S SAKE.

Post by TKD »

just to be very clear...

can I make plugins to this ultravnc and sell it bundled with the ultravnc executable if I havent modified any of the original ultravnc code?

so I can distribute and sell my developed plugins packaged with the vnc code. correct?

what if we compiled the vnc code (unmodified) with our developed plugins into one executeable and sold it? would that be okay too?
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6863
Joined: 2004-04-23 10:21
Contact:

Post by Rudi De Vos »

For me all would be ok, but as UltraVnc is build with other GPL software
you need to follow the GPL rules.

To fullfill 100% GPL

You need to provide 2 installers.
1) For your own application
2) For UltraVnc
You can not bundle the programs in 1 installer, as bundling is not allowed.
It have to be 2 seperated programs.


Let explain with a sample:
A)Current NSC.exe and NVC.exe is only available as bin. This is perfect GPL as thoose programs just listen to the loopback.
If i add them to UltraVnc ( 1 exe) , we also need to provide the code for it as it become a part of UltraVNC, even making a dll of them and call them from within VNC could be considered as a violation of GPL.
If we add them to the UltraVnc installer, we also need to provide the code for it.
This was the reason the driver was removed from the UltraVnc installer, as stricly GPL forbid this.

PS: Just a sample. The nat connectors will be added some day. But i just hate it that people tell me that a have to do something. Using the seperate exe, i have freedom for providing the code when i want.

B) Let say you want to add some logging.
It would be perfect ok, to let winvnc generate a log file and analyse the log with some external program. But if you add the log code to winvnc , you also need to make the source open.

An other problem could be the way your plugin interact with vnc.
sendmessage/socket is allowed but as soon as you start importing functions it could be considered as one.

Selling has nothing to do with GPL. You can sell every GP'ed software
if you include the full code.

You can offer to make custom version (logo's, dialog boxes etc..) and ask
money for it. GPL only say, that you need to make the code public to the person we get the exe.
can I make plugins to this ultravnc and sell it bundled with the ultravnc executable
Bundle ???? never use this word. You can make 2 installers and let the people download them as seperated parts.
packaged with the vnc
Same issue, make them as 2 seperated parts.
what if we compiled the vnc code (unmodified) with our developed plugins into one executeable and sold it
Break every GPL rule, you can only do it if all code, including your plugin is available.
TKD
20
20
Posts: 32
Joined: 2005-04-15 12:44
Location: U.S.

violation...

Post by TKD »

If what you say is true, then it would seem that a dozen companies that use ultravnc as their base code for their product is in violation of the GPL. Because these companies are still in operation selling their products as a single .exe or bundled with their plugin apps... what happens to them?

Does this mean that these companies, despite being in violation per your description, will not be penalized in any way? How is this license reinforced? It appears the companies who violate this licensing continue to bundle the vnc code with their proprietary code without any problems.

Thanks for taking the time to spell things out.
Last edited by TKD on 2005-09-22 00:14, edited 1 time in total.
frédo

license issues

Post by frédo »

I do not agree with this interpretation of the GPL...
Because, for exemple, a lot of linux distributions are distributing both GPL and non proprietary software in one package....
GPL says that you can package 2 applications, one being under GPL and the other the license you want. because if the second one is not a derivate of the GPL'ed software...
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6863
Joined: 2004-04-23 10:21
Contact:

Post by Rudi De Vos »

There is a difference between distribution and bundeling.

Linux cd can contain GPL and non GPL packages.
But one rpm will not contain priority and GPL software. If the priority
software need a GPL module, you install the GPL rpm and a priority rpm.
Using linux, this is usual invisable for the enduser.

For windows.
1)You can put GPL and priority software on one CD,
and add a start html page the link to both installers.
2)You can make an installer of your own priority software, that download and install the GPL package. The exe you distribute does not contain any
GPL parts... :)
3) Add a srcipt that make one installer of the other...
The enduser create a single installer, and he can not violate GPL without
distributing it.

License only say, you can not make a single installer that contain priority
and GPL software.

For me, all is the same...
But, UltraVnc is based on RealVNC, and RealVnc is a company that actual make there money with selling VNC.
With violating UltraVNC GPL, you also violate the RealVNC GPL license.
Take care, they active search the net for violations..........
Even with a commercial license of them, you only cover the parts from RealVNC, but still violate the UltraVNC GPL license.
Post Reply