Project

General

Profile

Bug #18254 » 0001-ceph-add-ceph_submount-test-program.patch

Revised test program (as a patch) - Jeff Layton, 12/14/2016 09:18 PM

View differences:

src/test/libcephfs/CMakeLists.txt
)
install(TARGETS ceph_test_libcephfs_access
DESTINATION ${CMAKE_INSTALL_BINDIR})
endif(${WITH_CEPHFS})
add_executable(ceph_submount
ceph_submount.c
)
set_target_properties(ceph_submount PROPERTIES COMPILE_FLAGS
${UNITTEST_CXX_FLAGS})
target_link_libraries(ceph_submount
cephfs
${UNITTEST_LIBS}
${EXTRALIBS}
${CMAKE_DL_LIBS}
)
install(TARGETS ceph_submount
DESTINATION ${CMAKE_INSTALL_BINDIR})
endif(${WITH_CEPHFS})
src/test/libcephfs/ceph_submount.c
#define _FILE_OFFSET_BITS 64
#define _GNU_SOURCE 1
#include <cephfs/libcephfs.h>
#include <stdio.h>
#include <string.h>
#include <limits.h>
#include <fcntl.h>
#define USERID "alice"
#define PATHNAME "/export"
#define KEY "AQBsm1FYRAxvCxAARfvnAdU+KzjxGBV7+YTkZQ=="
int
main(void) {
struct ceph_mount_info *cmount;
int ret;
ret = ceph_create(&cmount, USERID);
if (ret) {
fprintf(stderr, "mount info create: %d\n", ret);
return 1;
}
ret = ceph_conf_read_file(cmount, NULL);
if (ret) {
fprintf(stderr, "read conf file: %d\n", ret);
return 1;
}
ret = ceph_conf_set(cmount, "key", KEY);
if (ret) {
fprintf(stderr, "set key option: %d\n", ret);
return 1;
}
ret = ceph_conf_set(cmount, "client_mountpoint", PATHNAME);
if (ret) {
fprintf(stderr, "set client_mountpoint option: %d\n", ret);
return 1;
}
ret = ceph_init(cmount);
if (ret) {
fprintf(stderr, "init: %d\n", ret);
return 1;
}
ret = ceph_mount(cmount, PATHNAME);
if (ret) {
fprintf(stderr, "mount: %d\n", ret);
return 1;
}
printf("Mounting successful! Hit any key to unmount...");
getchar();
printf("\n");
ceph_unmount(cmount);
ceph_release(cmount);
return 0;
}
(2-2/2)