I would like to run privileged code from within the callbacks, how can
I do this? Are the callbacks being executed from a separate thread
which does not have privileges? What am I missing here?
Callbacks are made from whatever thread you're calling spin()/spinOnce() from.
Or is there a better, different method to run a node with root privileges?
The pr2_etherCAT (http://www.ros.org/wiki/pr2_etherCAT) node uses root
privelges. A program called pr2_grant runs the chmod command similar
to what I did. But pr2_etherCAT does not subscribe to any topics, nor
does it include <sys/io.h> so I couldn't get more help there.
pr2_etherCAT loads plugins which do subscribe to many topics.
Josh