Add an overload for creating a connection to a cluster other than the default cluster name of "ceph".

This commit is contained in:
Travis Nielsen 2015-06-16 15:32:09 -07:00
parent 571d19f634
commit 2835eeac35
1 changed files with 18 additions and 0 deletions

View File

@ -52,3 +52,21 @@ func NewConnWithUser(user string) (*Conn, error) {
return nil, RadosError(int(ret)) return nil, RadosError(int(ret))
} }
} }
// NewConnWithClusterAndUser creates a new connection object for a specific cluster and username.
// It returns the connection and an error, if any.
func NewConnWithClusterAndUser(clusterName string, userName string) (*Conn, error) {
c_cluster_name := C.CString(clusterName)
defer C.free(unsafe.Pointer(c_cluster_name))
c_name := C.CString(userName)
defer C.free(unsafe.Pointer(c_name))
conn := &Conn{}
ret := C.rados_create2(&conn.cluster, c_cluster_name, c_name, 0)
if ret == 0 {
return conn, nil
} else {
return nil, RadosError(int(ret))
}
}