| General
Topics
Writing
Plugins
Modifying
The System
|
1.
Can I help to develop code for BO2K? I've heard it's open source.
Yes you can, and
yes it is. You can develop whatever you want to extend the BO2K system.
You can develop plugins, or you can extend the server by modifying the
server code directly. Feel free to enhance the client. We only ask one
thing: Let us know what you develop, and send us copies of the source
so we can consider putting it in the cDc Official BO2K Distribution.
Also, try to develop what you're thinking of as a plugin so others
can use your enhancements easily.
2.
What was BO2K written with?
BO2K was written
using Microsoft Visual C++ 6.0. It has not been compiled with any other
compilers, but changes to the codebase to support other compilers are
welcome. One thing we would love would be for someone to port the system
to use CYGWIN or some other free Win32 compatible compiler. Lets try
to make this project as FREE as possible.
3.
What needs to be done?
We'd like to have
a lot of enhancements to the client interface. Probably a better 'BO2K
Neighborhood' style connection manager. Also a multi-user authentication
plugin, supporting different privilege levels for different users, and
perhaps a way to handle password authenticated connections that doesn't
require storing the password in the registry via the client in order
to operate. BoPeep could use some enhancements too, to increase its
performance, and put it on par with tools like VNC. And we're always
looking for skilled cross-platform clients to create clients for all
other platforms and architectures.
4.
What can I do to help?
You can get the
Plugin SDK, and/or the BO2K source tree, and start learning about writing
plugins. Practice, get to know the system, and when you feel like contributing,
please do! This is an open source project, and we'd like to harness
this to make BO2K an amazing platform for remote administration.
5.
Will things I write make it into the cDc BO2K distribution? Will they
be linked off of this website?
Possibly. We're
setting our standards relatively high. If we don't put your code in
the distribution, don't feel bad. We're only accepting changes in this
distribution that make for the most generally useful remote administration
tool. If you want to modify the BO2K server to have automatic hard-drive
formatting capabilities, or do really obscene malicious things to people,
you'll have to make your own distribution.
6.
What are the licensing terms? Is this GPL or something else?
It's primarily
GPL. The compiled, distributed product, is governed by the terms of
the GNU Public License. The source code, is also GPL'd, but some parts
of the distribution are not covered by the GPL. These things include
sections that were not written by the Cult of the Dead Cow, and were
included with their original licenses intact. Particularly, we've made
the source distributed in the Plugin SDK not governed by the GPL. This
way, commercial, non-open-source plugins can be developed for BO2K as
well as free ones. Try to write free plugins, though, since the world
needs good free software. The BO2K distribution itself will always be
GPL, and hence, always free and open-source.
Back to top
7.
How do I get started writing a BO2K plugin? Where's the SDK?
Get started by
downloading the Plugin SDK, and referencing the SDK Docs on the BO2K
website's Development section. There's a full hyperlinked HTML reference
for every function, class, typedef and struct used by the Plugin SDK.
Refer to the sample plugin in the SDK, but don't feel you're limited
to what it does (which is very little). Plugins can be used to extend
EVERY PART of the BO2K system. Also, check the tutorials on writing
simple BO2K plugins for a quick start.
8.
Can I write commercial plugins and sell them?
Yes, you can. But
do the world a favor and try to make it open-source/GPL, shareware,
or freeware. We'd like to see more open-source software available.
9.
How do I publish a BO2K plugin once I've written it?
Put it up on a
website. Send mail to the BO2K authors with the URL of where it can
be downloaded. If you want us to host it for you, we will. If we consider
your plugin worthy, we may propose you to have it hooked to our source
tree, and we will provide you some storage space for that plugin's documentation.
10.
What kind of plugins can I write? What are the restrictions?
You can write plugins
to do pretty much anything. If you write strong encryption plugins,
be aware of U.S export restrictions, if you live in the United States.
Back to top
11.
What about the server and client source code? I want to make an addition.
Download the entire
source code distribution. Modify it, and send in your diffs. in any
way you can. We prefer diffs. in unified format, but we won't complain
if you just send a text file with the lines you changed. Preferably,
provide us with some descriptive text describing how and why did you
do such changes.
12.
I want to make my own BO2K distribution, where do I start?
Well, first, make
sure that this is really what you want to do. Maintaining a distribution
is a lot of work, and if you can just submit your changes to the cDc
distribution, please do so. We want people to come up with specialized
distributions. We do not want people to make distributions just
because they can, and because they want to have their ugly little hacker
handle all over the client and so they can stick ASCII characters in
it all over the place. Having too many distribution of software running
around, makes for a dilution of quality. Submissions to one distribution
would be missed by another, and instead of promoting specialization,
you end up promoting disorganization. This doesn't help the software
become better, or more useful, just harder to for people to deal with.
13.
What are the design goals for BO2K?
To be small, unobtrusive,
and powerful. Pull out all the stops. Let the remote user control everything
with confidence, and security. Let there be no single thing the user
can't do from halfway around the world, that he couldn't do at the desktop.
And keep it extensible. People should always be able to add new things
to BO2K to extend the system. It should grow with people's needs, instantaneously
supporting the demand. Control is the goal.
14.
If I make my own distribution, can I sell it?
Yes, as long as
you also provide it for FREE. Feel free to sell support and documentation.
Put it in a box. We don't mind. Just make sure that the software itself,
with source code intact is freely available to anyone who wants it without
even having to ask you for it. That's the rules. Try to be responsible
in your creation of a distribution. If it's going suck, and you write
crappy code, and you're only releasing a distribution because cDc rejected
your code from theirs, then you probably aren't ready to be doing this.
Sorry to be blunt, but we want to see quality distributions.
|