Compare commits

..

7 Commits

Author SHA1 Message Date
2b713c3dd4 更新 src/os/linux/linux_sigar.c 2024-09-27 17:10:00 +08:00
Konstantin Makarchev
af03ded75f 2.0.11 2024-09-10 14:52:40 +03:00
Kostya M
00760eebda
Merge pull request #16 from wollistik/fix_build_issue
Fixing build issue on newer linux and also issues with newer Ruby
2024-09-10 14:49:54 +03:00
Wolfgang Wedelich-John
8b887b2380 Fixing build issue on newer linux and alos issue with newer Ruby 2024-09-10 12:58:09 +02:00
Konstantin Makarchev
9f918d1ae9 2.0.10 2021-10-31 05:29:09 +03:00
Konstantin Makarchev
49a9aeeff5 remove nfsstat methods on osx, because seems it not used, this should fix #11
TODO: return is back, if fix would be finded
2021-10-30 21:02:07 +03:00
Konstantin Makarchev
04754bdf48 fix 2021-06-28 12:24:24 +03:00
7 changed files with 59 additions and 51 deletions

View File

@ -4,8 +4,14 @@ Fork of hyperic/sigar with some fixes. Support only ruby binding. Part of [Eye g
## Fixed:
### [2.0.11] 10-09-2024
* Fixing build issue on newer linux and also issues with newer Ruby [#16](https://github.com/kostya/sigar/pull/16)([commit](https://github.com/kostya/sigar/pull/16/commits/8b887b2380c4aadea82402904d9c1131bbb9c521))
### [2.0.10] 31-10-2021
* Fix compilation on MacOS 11.3.1 [#11](https://github.com/kostya/sigar/issues/11)([commit](https://github.com/kostya/sigar/commit/49a9aeeff54e97ac6f41d464c30ff6c8adf4bcf4))
### [2.0.9] 28-06-2021
* Fix compilation on FreeBSD 13 [#8](https://github.com/kostya/sigar/issues/10)([commit](https://github.com/kostya/sigar/commit/b78b558fb756a75dc7d6cbf704423be3c7098ae5))
* Fix compilation on FreeBSD 13 [#10](https://github.com/kostya/sigar/issues/10)([commit](https://github.com/kostya/sigar/commit/b78b558fb756a75dc7d6cbf704423be3c7098ae5))
### [2.0.8] 02-10-2020
* Fix compilation on MacOS [#8](https://github.com/kostya/sigar/issues/8)([commit](https://github.com/kostya/sigar/pull/9/commits/ad39547629fa328e115f7d7bc3c7c358247d1961))

View File

@ -51,15 +51,15 @@ end
desc 'Build sigar extension'
task :build do
in_ext()
unless File.exists? "Makefile"
unless File.exist? "Makefile"
unless system("ruby extconf.rb")
STDERR.puts "Failed to configure"
break
next
end
end
unless system(MAKE)
STDERR.puts 'Failed to ' + MAKE
break
next
end
end
@ -75,13 +75,13 @@ end
desc 'Clean sigar extension'
task :clean do
in_ext()
system(MAKE + ' clean') if File.exists? "Makefile"
system(MAKE + ' clean') if File.exist? "Makefile"
end
desc 'Dist Clean sigar extension'
task :distclean do
in_ext()
system(MAKE + ' distclean') if File.exists? "Makefile"
system(MAKE + ' distclean') if File.exist? "Makefile"
end
desc 'Run sigar examples (test)'

View File

@ -4,7 +4,7 @@
Gem::Specification.new do |s|
s.name = "kostya-sigar"
s.version = "2.0.9"
s.version = "2.0.11"
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
s.require_paths = ["lib"]

View File

@ -3310,20 +3310,20 @@ sigar_tcp_get(sigar_t *sigar,
return SIGAR_OK;
}
#ifndef SIGAR_FREEBSD5_NFSSTAT
static int get_nfsstats(struct nfsstats *stats)
{
size_t len = sizeof(*stats);
int mib[] = { CTL_VFS, 2, NFS_NFSSTATS };
// #ifndef SIGAR_FREEBSD5_NFSSTAT
// static int get_nfsstats(struct nfsstats *stats)
// {
// size_t len = sizeof(*stats);
// int mib[] = { CTL_VFS, 2, NFS_NFSSTATS };
if (sysctl(mib, NMIB(mib), stats, &len, NULL, 0) < 0) {
return errno;
}
else {
return SIGAR_OK;
}
}
#endif
// if (sysctl(mib, NMIB(mib), stats, &len, NULL, 0) < 0) {
// return errno;
// }
// else {
// return SIGAR_OK;
// }
// }
// #endif
#if defined(__OpenBSD__)
typedef uint64_t rpc_cnt_t;
@ -3372,25 +3372,25 @@ int sigar_nfs_server_v2_get(sigar_t *sigar,
int sigar_nfs_client_v3_get(sigar_t *sigar,
sigar_nfs_client_v3_t *nfs)
{
#ifdef SIGAR_FREEBSD5_NFSSTAT
struct nfsstats stats;
size_t size = sizeof(stats);
// #ifdef SIGAR_FREEBSD5_NFSSTAT
// struct nfsstats stats;
// size_t size = sizeof(stats);
if (sysctlbyname("vfs.nfs.nfsstats", &stats, &size, NULL, 0) == -1) {
return errno;
}
// if (sysctlbyname("vfs.nfs.nfsstats", &stats, &size, NULL, 0) == -1) {
// return errno;
// }
map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.rpccnt[0]);
#else
int status;
struct nfsstats stats;
// map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.rpccnt[0]);
// #else
// int status;
// struct nfsstats stats;
if ((status = get_nfsstats(&stats)) != SIGAR_OK) {
return status;
}
// if ((status = get_nfsstats(&stats)) != SIGAR_OK) {
// return status;
// }
map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.rpccnt[0]);
#endif
// map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.rpccnt[0]);
// #endif
return SIGAR_OK;
}
@ -3398,25 +3398,25 @@ int sigar_nfs_client_v3_get(sigar_t *sigar,
int sigar_nfs_server_v3_get(sigar_t *sigar,
sigar_nfs_server_v3_t *nfs)
{
#ifdef SIGAR_FREEBSD5_NFSSTAT
struct nfsrvstats stats;
size_t size = sizeof(stats);
// #ifdef SIGAR_FREEBSD5_NFSSTAT
// struct nfsrvstats stats;
// size_t size = sizeof(stats);
if (sysctlbyname("vfs.nfsrv.nfsrvstats", &stats, &size, NULL, 0) == -1) {
return errno;
}
// if (sysctlbyname("vfs.nfsrv.nfsrvstats", &stats, &size, NULL, 0) == -1) {
// return errno;
// }
map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.srvrpccnt[0]);
#else
int status;
struct nfsstats stats;
// map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.srvrpccnt[0]);
// #else
// int status;
// struct nfsstats stats;
if ((status = get_nfsstats(&stats)) != SIGAR_OK) {
return status;
}
// if ((status = get_nfsstats(&stats)) != SIGAR_OK) {
// return status;
// }
map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.srvrpccnt[0]);
#endif
// map_nfs_stats((sigar_nfs_v3_t *)nfs, &stats.srvrpccnt[0]);
// #endif
return SIGAR_OK;
}

View File

@ -24,6 +24,7 @@
#include <sys/stat.h>
#include <sys/times.h>
#include <sys/utsname.h>
#include <sys/sysmacros.h>
#include "sigar.h"
#include "sigar_private.h"

View File

@ -30,6 +30,7 @@
#include <dirent.h>
#include <sys/stat.h>
#include <sys/time.h>
SIGAR_INLINE char *sigar_uitoa(char *buf, unsigned int n, int *len)
{

View File

@ -1,7 +1,7 @@
copyright.year=2004-2011
version.major=2
version.minor=0
version.maint=9
version.maint=11
version.build=0
project.name=kostya-sigar
project.author=Doug MacEachern