ceph: Remove connect/command timeouts; too risky for now
Keep 10s timeout when connecting for help descriptions, however

Signed-off-by: Dan Mick <dan.mick@inktank.com>
mon: AuthMonitor: remove dead code to avoid confusion

AuthMonitor::election_finished() does nothing.

PaxosService::election_finished() is the one being handled.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
auth: CephxKeyServer: add secrets_{begin,end}() getters

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
mon: upgrade auth database on leader

If we are the leader, and the auth database has not yet been upgraded,
do so.  The upgrade consists of translating old-style (pre-v0.64) caps
to new-style caps (e.g., 'allow profile bootstrap-osd').  This happens
once and the conversion takes the form of a normal paxos transaction.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
AuthMonitor: fix signed/unsigned comparison warning

Signed-off-by: Dan Mick <dan.mick@inktank.com>
librados, rados.py: rados_create2: add clustername and future flags

rados.py also gets "conf_defaults" dict for things you might want to
default in your app differently before ceph.conf gets to them; currently
used for ceph CLI to be able to set log_to_stderr/err_to_stderr true,
among others.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: collect/use clustername, and set defaults like other utilities

(defaults like log_to_stderr, err_to_stderr)

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: catch/handle exceptions in admin socket commands

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: fix up old-monitor handling

Finish command after submitting to old monitor, rather than falling
through to new-command handling
Also, translate -s to status for old mons as well

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: improve error reporting on failure to connect to cluster

Signed-off-by: Dan Mick <dan.mick@inktank.com>
librados, ceph, rados.py: -EINVAL for create with null/invalid name

Means setting defaults should be more careful throughout as well

Signed-off-by: Dan Mick <dan.mick@inktank.com>
librados: rados_X_command need to assemble a vector from char *cmd

The old monitors take a vector with words split; new monitors don't
care, but the old ones do

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: refactor -s -> status to common code, pass childargs to old mons

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: error and verbose message improvement

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph: -v should mean version, not --verbose

To be implemented soon with ceph_ver.h

Signed-off-by: Dan Mick <dan.mick@inktank.com>
ceph, librados, rados.py, librados tests: pass cmd as array

Using ceph to pass commands to the old monitor requires the
message to have words in a vector; this means that we need to pass
the command as an array to rados_mon_command.  Really, all of the
rados_X_command functions should take an array for flexibility and
parallel structure, so change them all, and the Python bindings,
and the test programs that use them.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
rados.py: make exception with errno string instead of int

Signed-off-by: Dan Mick <dan.mick@inktank.com>
MDSMonitor: dead debugging code

Signed-off-by: Dan Mick <dan.mick@inktank.com>