svn commit: r520107 - in head/sysutils: . sysctlbyname-improved-kmod
Tobias C. Berner
tcberner at FreeBSD.org
Sat Dec 14 11:06:45 UTC 2019
Author: tcberner
Date: Sat Dec 14 11:06:43 2019
New Revision: 520107
URL: https://svnweb.freebsd.org/changeset/ports/520107
Log:
[NEW PORT] sysutils/sysctlbyname-improved-kmod: sysctl node to implement an improved sysctlbyname(3) clone
Kernel module to add the sysctl.entryidinputbyname sysctl node
to allow to implement an improved sysctlbyname(3) clone to handle:
* a node without a level name, e.g., "security.jail.param.allow.mount."
* a CTLTYPE_NODE with a no-NULL handler, e.g., "kern.proc.pid.<pid>"
The sysctlbyname_improved() function and an example are provided, too.
WWW: https://gitlab.com/alfix/sysctlbyname-improved/
PR: 242068
Submitted by: Alfonso S. Siciliano <alfix86 at gmail.com>
Added:
head/sysutils/sysctlbyname-improved-kmod/
head/sysutils/sysctlbyname-improved-kmod/Makefile (contents, props changed)
head/sysutils/sysctlbyname-improved-kmod/distinfo (contents, props changed)
head/sysutils/sysctlbyname-improved-kmod/pkg-descr (contents, props changed)
head/sysutils/sysctlbyname-improved-kmod/pkg-message (contents, props changed)
Modified:
head/sysutils/Makefile
Modified: head/sysutils/Makefile
==============================================================================
--- head/sysutils/Makefile Sat Dec 14 10:57:17 2019 (r520106)
+++ head/sysutils/Makefile Sat Dec 14 11:06:43 2019 (r520107)
@@ -1261,6 +1261,7 @@
SUBDIR += symon
SUBDIR += synergy
SUBDIR += synergy-1
+ SUBDIR += sysctlbyname-improved-kmod
SUBDIR += sysctlinfo-kmod
SUBDIR += sysgather
SUBDIR += sysinfo
Added: head/sysutils/sysctlbyname-improved-kmod/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/sysctlbyname-improved-kmod/Makefile Sat Dec 14 11:06:43 2019 (r520107)
@@ -0,0 +1,49 @@
+# $FreeBSD$
+
+PORTNAME= sysctlbyname-improved-kmod
+DISTVERSION= 20191124
+CATEGORIES= sysutils
+
+MAINTAINER= alfix86 at gmail.com
+COMMENT= Internal sysctl node to implement an improved sysctlbyname(3) clone
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= kmod
+USE_GITLAB= yes
+GL_ACCOUNT= alfix
+GL_PROJECT= sysctlbyname-improved
+GL_COMMIT= 522eb1f40c46a035c563f4f88594db5803ccf462
+
+PLIST_FILES= ${KMODDIR}/sysctlbyname_improved.ko
+
+PORTEXAMPLES= sysctlbyname_improved.h \
+ sysctlbyname_improved.c \
+ sysctlbyname_improved_example.c
+
+OPTIONS_DEFINE= EXAMPLES
+OPTIONS_DEFAULT= EXAMPLES
+
+.include <bsd.port.pre.mk>
+
+# Once the sysctlinfo interface (review D21700) lands into the base tree this
+# node can be added to the interface and the following statement needs
+# to be expanded
+.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1200019
+IGNORE= needs oid_label member of struct sysctl_oid defined in sysctl.h which was first introduced in FreeBSD 12
+.endif
+.if ${OPSYS} != FreeBSD
+IGNORE= not supported on anything but FreeBSD
+.endif
+
+do-install:
+ ${INSTALL_KLD} ${WRKSRC}/sysctlbyname_improved.ko ${STAGEDIR}${KMODDIR}
+
+do-install-EXAMPLES-on:
+ @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+.for e in ${PORTEXAMPLES}
+ ${INSTALL_DATA} ${WRKSRC}/examples/${e} ${STAGEDIR}${EXAMPLESDIR}
+.endfor
+
+.include <bsd.port.post.mk>
Added: head/sysutils/sysctlbyname-improved-kmod/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/sysctlbyname-improved-kmod/distinfo Sat Dec 14 11:06:43 2019 (r520107)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1574563228
+SHA256 (alfix-sysctlbyname-improved-522eb1f40c46a035c563f4f88594db5803ccf462_GL0.tar.gz) = 6ddf449100ed2012eeef2d770bebd58f739f9997957a073dc59e8a08022520a1
+SIZE (alfix-sysctlbyname-improved-522eb1f40c46a035c563f4f88594db5803ccf462_GL0.tar.gz) = 8680
Added: head/sysutils/sysctlbyname-improved-kmod/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/sysctlbyname-improved-kmod/pkg-descr Sat Dec 14 11:06:43 2019 (r520107)
@@ -0,0 +1,7 @@
+Kernel module to add the sysctl.entryidinputbyname sysctl node
+to allow to implement an improved sysctlbyname(3) clone to handle:
+ * a node without a level name, e.g., "security.jail.param.allow.mount."
+ * a CTLTYPE_NODE with a no-NULL handler, e.g., "kern.proc.pid.<pid>"
+The sysctlbyname_improved() function and an example are provided, too.
+
+WWW: https://gitlab.com/alfix/sysctlbyname-improved
Added: head/sysutils/sysctlbyname-improved-kmod/pkg-message
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sysutils/sysctlbyname-improved-kmod/pkg-message Sat Dec 14 11:06:43 2019 (r520107)
@@ -0,0 +1,17 @@
+[
+{ type: install
+ message: <<EOM
+To use the sysctl.entryidinputbyname sysctl node and the sysctlbyname_improved
+function, make sure that you have loaded the sysctlbyname_improved kernel
+module, by doing
+
+ # kldload sysctlbyname_improved
+
+or adding
+
+ sysctlbyname_improved_load="YES"
+
+to your /boot/loader.conf.
+EOM
+}
+]
More information about the svn-ports-head
mailing list