Exemple #1
0
static VALUE rb_sigar_net_route_list(VALUE obj)
{
    int status;
    sigar_t *sigar = rb_sigar_get(obj);
    sigar_net_route_list_t list;
    VALUE RETVAL;

    status = sigar_net_route_list_get(sigar, &list);
    if (status != SIGAR_OK) {
        RB_SIGAR_CROAK;
    }

    RETVAL = rb_sigar_new_list((char *)&list.data[0],
                               list.number,
                               sizeof(*list.data),
                               rb_cSigarNetRoute);

    sigar_net_route_list_destroy(sigar, &list);

    return RETVAL;
}
Exemple #2
0
static VALUE rb_sigar_file_system_list(VALUE obj)
{
    int status;
    sigar_t *sigar = rb_sigar_get(obj);
    sigar_file_system_list_t fslist;
    VALUE RETVAL;

    status = sigar_file_system_list_get(sigar, &fslist);
    if (status != SIGAR_OK) {
        RB_SIGAR_CROAK;
    }

    RETVAL = rb_sigar_new_list((char *)&fslist.data[0],
                               fslist.number,
                               sizeof(*fslist.data),
                               rb_cSigarFileSystem);

    sigar_file_system_list_destroy(sigar, &fslist);

    return RETVAL;
}
Exemple #3
0
static VALUE rb_sigar_cpu_info_list(VALUE obj)
{
    int status;
    sigar_t *sigar = rb_sigar_get(obj);
    sigar_cpu_info_list_t cpu_infos;
    VALUE RETVAL;

    status = sigar_cpu_info_list_get(sigar, &cpu_infos);
    if (status != SIGAR_OK) {
        RB_SIGAR_CROAK;
    }

    RETVAL = rb_sigar_new_list((char *)&cpu_infos.data[0],
                               cpu_infos.number,
                               sizeof(*cpu_infos.data),
                               rb_cSigarCpuInfo);

    sigar_cpu_info_list_destroy(sigar, &cpu_infos);

    return RETVAL;
}
Exemple #4
0
static VALUE rb_sigar_who_list(VALUE obj)
{
    SIGAR_GET;

    int status;
    sigar_who_list_t list;
    VALUE RETVAL;

    status = sigar_who_list_get(sigar, &list);
    if (status != SIGAR_OK) {
        RB_SIGAR_CROAK;
    }

    RETVAL = rb_sigar_new_list((char *)&list.data[0],
                               list.number,
                               sizeof(*list.data),
                               rb_cSigarWho);

    sigar_who_list_destroy(sigar, &list);

    return RETVAL;
}
Exemple #5
0
static VALUE rb_sigar_net_connection_list(VALUE obj, VALUE flags)
{
    int status;
    unsigned int i;
    sigar_t *sigar = rb_sigar_get(obj);
    sigar_net_connection_list_t connlist;
    VALUE RETVAL;

    status = sigar_net_connection_list_get(sigar, &connlist, NUM2UINT(flags));

    if (status != SIGAR_OK) {
        RB_SIGAR_CROAK;
    }

    RETVAL = rb_sigar_new_list((char *)&connlist.data[0],
                               connlist.number,
                               sizeof(*connlist.data),
                               rb_cSigarNetConnection);

    sigar_net_connection_list_destroy(sigar, &connlist);

    return RETVAL;
}