Netgotiator limited use of VNC, RDP
and other Remote Desktop apps
VNC, RDP and other remote desktop apps
The Netgotiator "Supporter console", the "Supported client" and the "AlterEGO
collaboration" software that runs in your computer or your clients' computers
is able to use an advanced plug-in scheme that may load either a VNC
plug-in library or an RDP one and also create a shell command (exec) to invoke a type
of VNC (Virtual Network Computing) Viewer program, called "NetgViewer.exe" or call Internally the RDP
control from the machine's classes.
The current Windows version of Netgotiator is able to use these proprietary plug-ins
which will in turn might make use of a library based on UltraVNC, a free
GPL-licensed, remote control software package derived from the popular VNC software.
Exillion is able to load either this library or any third-party libraries (DLL
or OCX) that will provide a local VNC server functionality.
Exillion has improved the features and built the above mentioned special binary of
UltraVNC which can be included in the Netgotiator packaged software.
The binaries for UltraVNC can be downloaded here:
http://www.ultravnc.com
|
The source code for UltraVNC can also be downloaded here: UltraVNC Source Tree
Our modified source of the UltraVNC server that produces this library (called
vrc.dll) can be found by clicking [here].
|
|
|
|
If you use and like the FREE AlterEGO Netgotiator
Service, please consider making a donation to help
improve UltraVNC: Make a Donation to UltraVNC
Please note that the Terms of Service
for Netgotiator includes two licenses:
-
A separate license for the proprietary Netgotiator
program and its plugins, and
-
A second license, the GNU GENERAL PUBLIC LICENSE for the distributed
binary of VNC (vrc.dll).
When you run or install Netgotiator for Windows you must accept both the Netgotiator
license and the GPL for UltraVNC.
|
Netgotiator Architecture and VNC / RDP
The
Netgotiator "Supporter Console" , the "Supported client" and the "AlterEGO
collaboration" software that runs in your computers or clients' computers are proprietary
programs which use the EXILLION's "VORTEX IP Tunneling Technology" to negotiate
a connection between two peer computers.
After approval has been obtained from your
CLIENT's computer to accept a connection request from the EXPERT computer, an encrypted
and secure connection is established between the two peer computers using the
"VORTEX Tunneling Technology".
At that point, the Netgotiator "Supporter"
program invokes the selected plug-in functionality for Remote Control.
In the case of Netgotiator
for Windows as it is currently released, Netgotiator might use an exec to invoke the
"NetgViewer" viewer program
or
any
other
Remote
Desktop
Client
program
like
RDP
client,
Radmin
Client,
etc.

As the above Netgotiator Block Diagram illustrates, secure channels are
established between the Supporter and the Supported people.
Through
these
secure
channels,
every
remote
control
software
(including
- but
not
limited
to - VNC) can be deployed via the
"Vortex Technology plug-in" loading.
The only connection between the VORTEX Tunnel
and the VNC is through TCP/IP at the "localhost" interface
(127.0.0.1),
which
means
that
even
the
Windows
Firewall
is not
alerted,
because
every
connection
is
outgoing
to the
Internet
towards
the
Netgotiator
Mediation
Servers.
It is important to note that the Netgotiator program has no internal dependencies
on VNC or any other similar program as a remote desktop tool. To illustrate this point, there are several other applications which Netgotiator can use
through the "VORTEX Tunnel" and do not include VNC.
Two examples of these kind of programs
are: Microsoft RDP Client and Radmin Viewer.
Frequently Asked Questions (FAQs)
QUESTION: Are the Netgotiator
plug-in libraries and "Vortex IP Tunnel" libraries licensed under the GNU General Public
License?
ANSWER:No. The Netgotiator plug-in libraries and the underlying
"Vortex IP Tunnel"
libraries are proprietary software. The Netgotiator program uses a carefully
designed PLUG-IN architecture to specify how the external collaborative applications
are to be executed by the client and console plug-in programs after a secure
connection has been established. We can supply additional technical
information to our clients about the Netgotiator design for the deployment
of remote control plug-ins with the current release of Netgotiator,
upon request.
QUESTION:Are the Netgotiator VNC Server Library (vrc.dll) licensed under the GNU General
Public License?
ANSWER:
YES, The "vrc.dll" library which is based on modified code from the UltraVNC
server source, is licensed under the GPL and you can find the modified
sources [here]
QUESTION: Well, how do these disconnected
programs work together ?
ANSWER: The Netgotiator process, firstly establishes a remote session and then calls specific
methods from our proprietary remote control
plug-ins which in turn load
either :
- the NETVNC library (vrc.dll) in the case of a HOST connection (server), or
- the "NetgViewer" program in the case of a viewer connection (client).
In essence, the Netgotiator shell and Vortex Tunnel enable the
VNC to perform screen sharing between two computers on
separate networks through firewalls.
QUESTION:
Does Netgotiator violate the GNU GPL under which VNC is distributed?
ANSWER: No. The binary distribution of VNC by Netgotiator fully complies with the GNU
GPL. The Netgotiator shell program and Vortex IP Tunnel operate closely with the
VNC GPL program.
QUESTION: Are you sure that GNU GPL Section 1 is met by Netgotiator?
ANSWER
Yes. The binary distribution of VNC fully complies with the GNU GPL. The GNU
GPL Section 1 states:
1. You may copy and distribute verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and appropriately publish
on each copy an appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any warranty; and
give any other recipients of the Program a copy of this License along with the Program.
The Netgotiator website includes both the binary and source code of the VNC GPL
program (see above). The Netgotiator
TOS requires
that the user accept both the Netgotiator license and the VNC GPL license. The
download also includes a copy of the GPL license.
QUESTION: Are you sure that the GNU GPL (Section 2 b) is being met by Netgotiator?
ANSWER
Yes, the condition set forth in Section 2 (b) of the GNU GPL does not apply to Netgotiator. Section 2 states,
"2. You may modify your copy or copies of the Program or any portion of it, thus
forming a work based on the Program, and copy and distribute such modifications
or work under the terms of Section 1 above, provided that you also meet all of these
conditions:"
QUESTION: How do I know what the binary of VNC which you distribute is not malicious?
ANSWER You can browse the source code for this binary library, which we distribute
under the GPL To demonstrate:
The above steps prove that we have not modified a copy of UltraVNC and are thus
fully compliant with section 2. of the GNU GPL.
QUESTION: Aren't you violating the GPL because you are incorporating GPL-covered software
in a proprietary system?
ANSWER
No. The specific FAQ on this question from the GNU GPL website
(see http://www.gnu.org/licenses/gpl-faq.html#TOCGPLInProprietarySystem),
states:
- I'd like to incorporate GPL-covered software in my proprietary
system. Can I do this?
-
You cannot incorporate GPL-covered software in a proprietary system. The goal of
the GPL is to grant everyone the freedom to copy, redistribute, understand, and
modify a program. If you could incorporate GPL-covered software into a non-free
system, it would have the effect of making the GPL-covered software non-free too.
A system incorporating a GPL-covered program is an extended version of that program.
The GPL says that any extended version of the program must be released under the
GPL if it is released at all. This is for two reasons: to make sure that users who
get the software get the freedom they should have, and to encourage people to give
back improvements that they make.
However, in many cases you can distribute the GPL-covered software alongside
your proprietary system. To do this validly, you must make sure that
the free and non-free programs communicate at arms length, that they are not combined
in a way that would make them effectively a single program.
The difference between this and "incorporating" the GPL-covered software is partly
a matter of substance and partly form. The substantive part is this: if the two
programs are combined so that they become effectively two parts of one program,
then you can't treat them as two separate programs. So the GPL has to cover the
whole thing.
If the two programs remain well separated, like the compiler and the kernel,
or like an editor and a shell, then you can treat them as two separate
programs--but you have to do it properly. The issue is simply one of form: how you
describe what you are doing. Why do we care about this? Because we want to make
sure the users clearly understand the free status of the GPL-covered software in
the collection.
If people were to distribute GPL-covered software calling it "part of" a system
that users know is partly proprietary, users might be uncertain of their rights
regarding the GPL-covered software. But if they know that what they have received
is a free program plus another program, side by side, their rights will be clear.
The section specifically makes an exception where " you can distribute GPL-covered
software alongside your proprietary system". This exception applies
to Netgotiator because the two programs remain well separated, " like an editor
and a shell". The Netgotiator shell program uses fork and exec to
invoke the VNC GPL-covered software.
We describe what we are doing in numerous locations on our website to avoid any
confusion on the part of our users with respect to the rights they are receiving
regarding the GPL-covered software.
Does Netgotiator satisfy the GPL requirement that the two programs communicate at
"arms length" ?
Yes. The specific FAQ on this question from the GNU GPL website
(see http://www.gnu.org/licenses/gpl-faq.html#TOCNFUseGPLPlugins),
states:
- Can I release a non-free program that's designed to load a GPL-covered
plug-in?
-
It depends on how the program invokes its plug-ins. If the program uses
fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the
license of the plug-in makes no requirements about the main program.
If the program dynamically links plug-ins, and they make function calls to each
other and share data structures, we believe they form a single program, which must
be treated as an extension of both the main program and the plug-ins. In order to
use the GPL-covered plug-ins, the main program must be released under the GPL or
a GPL-compatible free software license, and that the terms of the GPL must be followed
when the main program is distributed for use with these plug-ins.
If the program dynamically links plug-ins, but the communication between them is
limited to invoking the `main' function of the plug-in with some options and waiting
for it to return, that is a borderline case.
This section clearly applies to the Netgotiator shell because it uses exec
to invoke the UltraVNC plug-in program. There are no function calls or shared data
structures between the Netgotiator shell and the GPL-covered UltraVNC.
What if I still have questions about whether Netgotiator satisfies the GPL
Please contact us at Netgotiator
|