==MediaWiki format==
Detailed documentation wiki is available at http://yuma123.org/wiki/
=Archive=
==1==
Hello Chris,
The yuma123 was set up at the time Andy Bierman took offline the yuma repository. Due to its BSD license there is no legal problem to clone the repository and that is what I did. There are two branches master and yuma-official. The last commit in yuma-official is integration of the yuma-2.2-5.tar.gz (last release of yuma basic). yuma-official contains no modifications from the source released by the netconf-central later Yuma Works.
The master branch contains a number of patches we use at transpacket and wanted to contribute back to the yuma project. You can look through. I prefer automake and that is the build system in use there.
My approach to creating different modules is to use separate projects which depend on the yuma libraries and use the header files as installed by the automake build system. I think this will work well for your modules too. Keeping things separate has its advantages. Due to the automake build system in use it is very easy to develop and the work cycle is very convenient.
I think it is very important to have the official repository with the development history in the yuma-official branch. In addition it would be nice to continue the opensource community collaboration on fixing bugs and adding features to yuma and at least keeping track of all opensource module projects.
There is really no problem for you to start you own project where you can maintain the modules you have developed and build against yuma-official or the master branch of yuma123. You can as well clone one of the branches and have your own public yuma repository.
I would like to continue collaborating with developers interested in the yuma project. Keep me posted in case you decide to publish your modules. I would be interested to take a look at them.
Regards,
Vladimir
==2==
Hello Chris,
I added a directory called example-modules which contains a helloworld module to be used as template for adding modules and getting started. A listing of commands used to checkout build install and run netconfd with this example module should look like this (on a recent Ubuntu/Debian):
sudo apt-get install git autoconf gcc libtool libxml2-dev libssl-dev libssh2-1-dev
git clone git://git.code.sf.net/p/yuma123/git yuma123-git
cd yuma123-git
autoreconf -i -f
./configure CFLAGS='-g -O0' CXXFLAGS='-g -O0' --prefix=/usr
make
sudo make install
touch /tmp/startup-cfg.xml
/usr/sbin/netconfd --module=helloworld --startup=/tmp/startup-cfg.xml --log-level="debug4" --superuser="$USER"
If there were no missing dependencies the server is now started with the example helloworld module.
Tell sshd to listen on port 830. Add the following 2 lines to /etc/ssh/sshd_config:
Port 830
Subsystem netconf "/usr/sbin/netconf-subsystem --ncxserver-sockname=830@/tmp/ncxserver.sock"
sudo /etc/init.d/ssh restart
You can verify everything is OK:
yangcli --user="$USER" --server=localhost
...
xget /helloworld
or
xget /
You can examine the Makefile.am helloworld.c and helloworld.yang files from example-modules/helloworld and you can create your own project e.g. example-modules/mymodule. Other then that only the configure.ac and Makefile.am files should be modified in order to include your new modules.
Hope this helps.
Regards,
Vladimir
==Original description==
Starting from the last modification from 2012-07-01 Revision: 1757 available in the https://yuma.svn.sourceforge.net/svnroot/yuma which anounces the svn repository will not be further updated and only release tarballs of the project will be published.