glusterfs

Форк
0
/
bug-1507896.c 
49 строк · 1.5 Кб
1
#include <stdio.h>
2
#include <string.h>
3
#include <errno.h>
4
#include <glusterfs/api/glfs.h>
5
#include <glusterfs/api/glfs-handles.h>
6

7
#define VALIDATE_AND_GOTO_LABEL_ON_ERROR(func, ret, label)                     \
8
    do {                                                                       \
9
        if (ret < 0) {                                                         \
10
            fprintf(stderr, "%s : returned error %d (%s)\n", func, ret,        \
11
                    strerror(errno));                                          \
12
            goto label;                                                        \
13
        }                                                                      \
14
    } while (0)
15

16
int
17
main(int argc, char *argv[])
18
{
19
    int ret = -1;
20
    glfs_t *fs = NULL;
21
    char *volname = NULL;
22
    char *logfile = NULL;
23
    char *hostname = NULL;
24

25
    hostname = argv[1];
26
    volname = argv[2];
27
    logfile = argv[3];
28

29
    fs = glfs_new(volname);
30
    if (!fs)
31
        VALIDATE_AND_GOTO_LABEL_ON_ERROR("glfs_new(fs)", ret, out);
32

33
    ret = glfs_set_volfile_server(fs, "tcp", hostname, 24007);
34
    VALIDATE_AND_GOTO_LABEL_ON_ERROR("glfs_set_volfile_server(fs)", ret, out);
35

36
    ret = glfs_set_logging(fs, logfile, 7);
37
    VALIDATE_AND_GOTO_LABEL_ON_ERROR("glfs_set_logging(fs)", ret, out);
38

39
    ret = glfs_init(fs);
40
    VALIDATE_AND_GOTO_LABEL_ON_ERROR("glfs_init(fs)", ret, out);
41

42
out:
43
    if (fs) {
44
        ret = glfs_fini(fs);
45
        if (ret)
46
            fprintf(stderr, "glfs_fini(fs) returned %d\n", ret);
47
    }
48
    return ret;
49
}
50

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.