Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 300467cdce | |||
| 0721437f49 | |||
| 6d2a5044f5 | |||
| dbb5dd66cc | |||
| 8eb31f4f79 | |||
| acf789a807 | |||
| 68810c26ba | |||
| 8121b3b621 | |||
| 1386e9a847 | |||
| d63da6d7c9 | |||
| dd3edc2fa1 |
+1
-2
@@ -1,2 +1 @@
|
||||
/openwsmand.8.gz
|
||||
/v2.7.2.tar.gz
|
||||
openwsman-2.2.0.tar.bz2
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
diff -up openwsman-2.6.8/etc/pam/openwsman.orig openwsman-2.6.8/etc/pam/openwsman
|
||||
--- openwsman-2.6.8/etc/pam/openwsman.orig 2018-11-21 13:51:52.776325243 +0100
|
||||
+++ openwsman-2.6.8/etc/pam/openwsman 2018-11-21 13:54:17.066351134 +0100
|
||||
@@ -2,6 +2,6 @@
|
||||
auth required pam_unix.so nullok
|
||||
auth required pam_nologin.so
|
||||
account required pam_unix.so
|
||||
-password required pam_cracklib.so nullok
|
||||
-password required pam_unix.so nullok use_first_pass use_authtok nis shadow
|
||||
-session required pam_unix.so none
|
||||
+password required pam_pwquality.so
|
||||
+password required pam_unix.so nullok use_first_pass use_authtok
|
||||
+session required pam_unix.so
|
||||
@@ -1,12 +0,0 @@
|
||||
diff -up openwsman-2.7.2/bindings/ruby/extconf.rb.orig openwsman-2.7.2/bindings/ruby/extconf.rb
|
||||
--- openwsman-2.7.2/bindings/ruby/extconf.rb.orig 2022-12-28 16:43:03.000000000 +0100
|
||||
+++ openwsman-2.7.2/bindings/ruby/extconf.rb 2023-08-09 12:50:21.361216733 +0200
|
||||
@@ -32,7 +32,7 @@ swig = find_executable("swig")
|
||||
raise "SWIG not found" unless swig
|
||||
|
||||
major, minor, path = RUBY_VERSION.split(".")
|
||||
-raise "SWIG failed to run" unless system("#{swig} -ruby -autorename -DRUBY_VERSION=#{major}#{minor} -I. -I/usr/include/openwsman -o openwsman_wrap.c openwsman.i")
|
||||
+raise "SWIG failed to run" unless system("#{swig} -ruby -autorename -DRUBY_VERSION=#{major}#{minor} -I. -I/usr/include/openwsman -I/builddir/build/BUILD/openwsman-2.7.2-build/openwsman-2.7.2/include/ -o openwsman_wrap.c openwsman.i")
|
||||
|
||||
$CPPFLAGS = "-I/usr/include/openwsman -I.."
|
||||
|
||||
@@ -1,135 +0,0 @@
|
||||
diff -up openwsman-2.7.0/src/server/shttpd/compat_unix.h.orig openwsman-2.7.0/src/server/shttpd/compat_unix.h
|
||||
--- openwsman-2.7.0/src/server/shttpd/compat_unix.h.orig 2020-05-25 15:16:28.000000000 +0200
|
||||
+++ openwsman-2.7.0/src/server/shttpd/compat_unix.h 2021-03-09 09:15:26.750942006 +0100
|
||||
@@ -27,10 +27,6 @@
|
||||
pthread_create(&tid, NULL, (void *(*)(void *))a, c); } while (0)
|
||||
#endif /* !NO_THREADS */
|
||||
|
||||
-#ifndef SSL_LIB
|
||||
-#define SSL_LIB "libssl.so"
|
||||
-#endif
|
||||
-
|
||||
#define DIRSEP '/'
|
||||
#define IS_DIRSEP_CHAR(c) ((c) == '/')
|
||||
#define O_BINARY 0
|
||||
diff -up openwsman-2.7.0/src/server/shttpd/io_ssl.c.orig openwsman-2.7.0/src/server/shttpd/io_ssl.c
|
||||
--- openwsman-2.7.0/src/server/shttpd/io_ssl.c.orig 2020-05-25 15:16:28.000000000 +0200
|
||||
+++ openwsman-2.7.0/src/server/shttpd/io_ssl.c 2021-03-09 09:15:26.750942006 +0100
|
||||
@@ -11,28 +11,6 @@
|
||||
#include "defs.h"
|
||||
|
||||
#if !defined(NO_SSL)
|
||||
-struct ssl_func ssl_sw[] = {
|
||||
- {"SSL_free", {0}},
|
||||
- {"SSL_accept", {0}},
|
||||
- {"SSL_connect", {0}},
|
||||
- {"SSL_read", {0}},
|
||||
- {"SSL_write", {0}},
|
||||
- {"SSL_get_error", {0}},
|
||||
- {"SSL_set_fd", {0}},
|
||||
- {"SSL_new", {0}},
|
||||
- {"SSL_CTX_new", {0}},
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
- {"SSLv23_server_method", {0}},
|
||||
- {"SSL_library_init", {0}},
|
||||
-#else
|
||||
- {"TLS_server_method", {0}},
|
||||
- {"OPENSSL_init_ssl", {0}},
|
||||
-#endif
|
||||
- {"SSL_CTX_use_PrivateKey_file", {0}},
|
||||
- {"SSL_CTX_use_certificate_file",{0}},
|
||||
- {NULL, {0}}
|
||||
-};
|
||||
-
|
||||
void
|
||||
_shttpd_ssl_handshake(struct stream *stream)
|
||||
{
|
||||
diff -up openwsman-2.7.0/src/server/shttpd/shttpd.c.orig openwsman-2.7.0/src/server/shttpd/shttpd.c
|
||||
--- openwsman-2.7.0/src/server/shttpd/shttpd.c.orig 2020-05-25 15:16:28.000000000 +0200
|
||||
+++ openwsman-2.7.0/src/server/shttpd/shttpd.c 2021-03-09 09:16:58.843241510 +0100
|
||||
@@ -1489,25 +1489,13 @@ set_ssl(struct shttpd_ctx *ctx, const ch
|
||||
int retval = FALSE;
|
||||
EC_KEY* key;
|
||||
|
||||
- /* Load SSL library dynamically */
|
||||
- if ((lib = dlopen(SSL_LIB, RTLD_LAZY)) == NULL) {
|
||||
- _shttpd_elog(E_LOG, NULL, "set_ssl: cannot load %s", SSL_LIB);
|
||||
- return (FALSE);
|
||||
- }
|
||||
-
|
||||
- for (fp = ssl_sw; fp->name != NULL; fp++)
|
||||
- if ((fp->ptr.v_void = dlsym(lib, fp->name)) == NULL) {
|
||||
- _shttpd_elog(E_LOG, NULL,"set_ssl: cannot find %s", fp->name);
|
||||
- return (FALSE);
|
||||
- }
|
||||
-
|
||||
/* Initialize SSL crap */
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
SSL_library_init();
|
||||
if ((CTX = SSL_CTX_new(SSLv23_server_method())) == NULL)
|
||||
#else
|
||||
- OPENSSL_init_ssl();
|
||||
+ OPENSSL_init_ssl(0, NULL);
|
||||
if ((CTX = SSL_CTX_new(TLS_server_method())) == NULL)
|
||||
#endif
|
||||
_shttpd_elog(E_LOG, NULL, "SSL_CTX_new error");
|
||||
diff -up openwsman-2.7.0/src/server/shttpd/ssl.h.orig openwsman-2.7.0/src/server/shttpd/ssl.h
|
||||
--- openwsman-2.7.0/src/server/shttpd/ssl.h.orig 2020-05-25 15:16:28.000000000 +0200
|
||||
+++ openwsman-2.7.0/src/server/shttpd/ssl.h 2021-03-09 09:15:26.750942006 +0100
|
||||
@@ -12,55 +12,4 @@
|
||||
|
||||
#include <openssl/ssl.h>
|
||||
|
||||
-#else
|
||||
-
|
||||
-/*
|
||||
- * Snatched from OpenSSL includes. I put the prototypes here to be independent
|
||||
- * from the OpenSSL source installation. Having this, shttpd + SSL can be
|
||||
- * built on any system with binary SSL libraries installed.
|
||||
- */
|
||||
-
|
||||
-typedef struct ssl_st SSL;
|
||||
-typedef struct ssl_method_st SSL_METHOD;
|
||||
-typedef struct ssl_ctx_st SSL_CTX;
|
||||
-
|
||||
-#define SSL_ERROR_WANT_READ 2
|
||||
-#define SSL_ERROR_WANT_WRITE 3
|
||||
-#define SSL_ERROR_SYSCALL 5
|
||||
-#define SSL_FILETYPE_PEM 1
|
||||
-
|
||||
-#endif
|
||||
-
|
||||
-/*
|
||||
- * Dynamically loaded SSL functionality
|
||||
- */
|
||||
-struct ssl_func {
|
||||
- const char *name; /* SSL function name */
|
||||
- union variant ptr; /* Function pointer */
|
||||
-};
|
||||
-
|
||||
-extern struct ssl_func ssl_sw[];
|
||||
-
|
||||
-#define FUNC(x) ssl_sw[x].ptr.v_func
|
||||
-
|
||||
-#define SSL_free(x) (* (void (*)(SSL *)) FUNC(0))(x)
|
||||
-#define SSL_accept(x) (* (int (*)(SSL *)) FUNC(1))(x)
|
||||
-#define SSL_connect(x) (* (int (*)(SSL *)) FUNC(2))(x)
|
||||
-#define SSL_read(x,y,z) (* (int (*)(SSL *, void *, int)) FUNC(3))((x),(y),(z))
|
||||
-#define SSL_write(x,y,z) \
|
||||
- (* (int (*)(SSL *, const void *,int)) FUNC(4))((x), (y), (z))
|
||||
-#define SSL_get_error(x,y)(* (int (*)(SSL *, int)) FUNC(5))((x), (y))
|
||||
-#define SSL_set_fd(x,y) (* (int (*)(SSL *, int)) FUNC(6))((x), (y))
|
||||
-#define SSL_new(x) (* (SSL * (*)(SSL_CTX *)) FUNC(7))(x)
|
||||
-#define SSL_CTX_new(x) (* (SSL_CTX * (*)(const SSL_METHOD *)) FUNC(8))(x)
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
-#define SSLv23_server_method() (* (SSL_METHOD * (*)(void)) FUNC(9))()
|
||||
-#define SSL_library_init() (* (int (*)(void)) FUNC(10))()
|
||||
-#else
|
||||
-#define TLS_server_method() (* (SSL_METHOD * (*)(void)) FUNC(9))()
|
||||
-#define OPENSSL_init_ssl() (* (int (*)(void)) FUNC(10))()
|
||||
#endif
|
||||
-#define SSL_CTX_use_PrivateKey_file(x,y,z) (* (int (*)(SSL_CTX *, \
|
||||
- const char *, int)) FUNC(11))((x), (y), (z))
|
||||
-#define SSL_CTX_use_certificate_file(x,y,z) (* (int (*)(SSL_CTX *, \
|
||||
- const char *, int)) FUNC(12))((x), (y), (z))
|
||||
@@ -1,39 +0,0 @@
|
||||
diff -up openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c.orig openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c
|
||||
--- openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c.orig 2016-07-27 16:03:55.000000000 +0200
|
||||
+++ openwsman-4391e5c68d99c6239e1672d1c8a5a16d7d8c4c2b/src/server/wsmand-listener.c 2018-01-22 13:05:04.478923300 +0100
|
||||
@@ -344,6 +344,35 @@ DONE:
|
||||
if (fault_reason == NULL) {
|
||||
// this is a way to segfault, investigate
|
||||
//fault_reason = shttpd_reason_phrase(status);
|
||||
+ // ugly workaround follows...
|
||||
+ switch (status) {
|
||||
+ case 200:
|
||||
+ fault_reason = "OK";
|
||||
+ break;
|
||||
+ case 400:
|
||||
+ fault_reason = "Bad request";
|
||||
+ break;
|
||||
+ case 401:
|
||||
+ fault_reason = "Unauthorized";
|
||||
+ break;
|
||||
+ case 403:
|
||||
+ fault_reason = "Forbidden";
|
||||
+ break;
|
||||
+ case 404:
|
||||
+ fault_reason = "Not found";
|
||||
+ break;
|
||||
+ case 500:
|
||||
+ fault_reason = "Internal Error";
|
||||
+ break;
|
||||
+ case 501:
|
||||
+ fault_reason = "Not implemented";
|
||||
+ break;
|
||||
+ case 415:
|
||||
+ fault_reason = "Unsupported Media Type";
|
||||
+ break;
|
||||
+ default:
|
||||
+ fault_reason = "";
|
||||
+ }
|
||||
}
|
||||
debug("Response status=%d (%s)", status, fault_reason);
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
diff -up openwsman-2.7.1/etc/ssleay.cnf.orig openwsman-2.7.1/etc/ssleay.cnf
|
||||
--- openwsman-2.7.1/etc/ssleay.cnf.orig 2021-11-09 08:27:48.577749509 +0100
|
||||
+++ openwsman-2.7.1/etc/ssleay.cnf 2021-11-09 08:28:10.499967010 +0100
|
||||
@@ -3,7 +3,7 @@
|
||||
#
|
||||
|
||||
[ req ]
|
||||
-default_bits = 1024
|
||||
+default_bits = 2048
|
||||
default_keyfile = privkey.pem
|
||||
distinguished_name = req_distinguished_name
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
diff -up openwsman-2.7.2/bindings/openwsman.i.orig openwsman-2.7.2/bindings/openwsman.i
|
||||
--- openwsman-2.7.2/bindings/openwsman.i.orig 2024-01-22 09:36:42.764721705 +0100
|
||||
+++ openwsman-2.7.2/bindings/openwsman.i 2024-01-22 09:37:29.970817151 +0100
|
||||
@@ -109,7 +109,7 @@ SWIGINTERNINLINE SV *SWIG_From_double S
|
||||
|
||||
%typemap(in) FILE* {
|
||||
#if RUBY_VERSION > 18
|
||||
- struct rb_io_t *fptr;
|
||||
+ struct rb_io *fptr;
|
||||
#else
|
||||
struct OpenFile *fptr;
|
||||
#endif
|
||||
@@ -0,0 +1,198 @@
|
||||
diff -up ./etc/init/openwsmand.sh.in.bak ./etc/init/openwsmand.sh.in
|
||||
--- ./etc/init/openwsmand.sh.in.bak 2010-08-10 10:43:50.158889277 -0500
|
||||
+++ ./etc/init/openwsmand.sh.in 2010-08-10 10:46:19.345860143 -0500
|
||||
@@ -4,21 +4,21 @@
|
||||
# Provides: openwsmand
|
||||
# Required-Start: $remote_fs
|
||||
# Required-Stop: $network
|
||||
-# Default-Start: 2 3 4 5
|
||||
-# Default-Stop: 0 1 6
|
||||
+# Default-Start:
|
||||
+# Default-Stop:
|
||||
# Short-Description: Openwsman Daemon
|
||||
# Description: openwsmand
|
||||
# Start/Stop the Openwsman Daemon
|
||||
### END INIT INFO
|
||||
#
|
||||
#
|
||||
-# chkconfig: 2345 36 64
|
||||
+# chkconfig: - 36 64
|
||||
# description: Openwsman Daemon
|
||||
# processname: openwsmand
|
||||
|
||||
NAME=openwsmand
|
||||
DAEMON=/usr/sbin/$NAME
|
||||
-OPTIONS=
|
||||
+OPTIONS=-S
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
|
||||
if [ $EUID != 0 ]; then
|
||||
@@ -37,12 +37,14 @@ lockfile=${SVIlock:-/var/lock/subsys/$NA
|
||||
if [ -f "/etc/sysconfig/openwsman" ]; then
|
||||
. /etc/sysconfig/openwsman
|
||||
fi
|
||||
-# See how we were called.
|
||||
-. /etc/rc.status
|
||||
|
||||
-# Reset status of this service
|
||||
-rc_reset
|
||||
+if [ -f "/etc/SuSe-release" ]; then
|
||||
+ # See how we were called.
|
||||
+ . /etc/rc.status
|
||||
|
||||
+ # Reset status of this service
|
||||
+ rc_reset
|
||||
+fi
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
@@ -52,35 +54,43 @@ case "$1" in
|
||||
echo "Using common server certificate /etc/ssl/servercerts/servercert.pem"
|
||||
ln -s /etc/ssl/servercerts/server{cert,key}.pem /etc/openwsman/
|
||||
else
|
||||
- echo "Generating Openwsman server public certificate and private key"
|
||||
- FQDN=`hostname --fqdn`
|
||||
- if [ "x${FQDN}" = "x" ]; then
|
||||
- FQDN=localhost.localdomain
|
||||
- fi
|
||||
-cat << EOF | sh @SYSCONFDIR@/owsmangencert.sh > /dev/null 2>&1
|
||||
---
|
||||
-SomeState
|
||||
-SomeCity
|
||||
-SomeOrganization
|
||||
-SomeOrganizationalUnit
|
||||
-${FQDN}
|
||||
-root@${FQDN}
|
||||
-EOF
|
||||
+ echo "FAILED: Starting openwsman server"
|
||||
+ echo "There is no ssl server key available for openwsman server to use."
|
||||
+ echo -e "Please generate one with the following script and start the openwsman service again:\n"
|
||||
+ echo "##################################"
|
||||
+ echo "/etc/openwsman/owsmangencert.sh"
|
||||
+ echo "================================="
|
||||
+
|
||||
+ echo "NOTE: The script uses /dev/random device for generating some random bits while generating the server key."
|
||||
+ echo -e " If this takes too long, you can replace the value of \"RANDFILE\" in @SYSCONFDIR@/ssleay.cnf with /dev/urandom.\n Please understand the implications of doing so."
|
||||
+
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start daemons.
|
||||
echo -n "Starting the $DESCRIPTIVE"
|
||||
- startproc -p $PIDFILE $DAEMON > /dev/null 2>&1
|
||||
- rc_status -v
|
||||
+ if [ -f "/etc/SuSe-release" ]; then
|
||||
+ startproc -p $PIDFILE $DAEMON > /dev/null 2>&1
|
||||
+ rc_status -v
|
||||
+ elif [ -f "/etc/redhat-release" ]; then
|
||||
+ $DAEMON -S && echo " done." || echo " failed."
|
||||
+ fi
|
||||
+
|
||||
touch $lockfile
|
||||
;;
|
||||
|
||||
stop)
|
||||
# Stop daemons.
|
||||
echo -n "Shutting down $DESCRIPTIVE"
|
||||
- killproc -p $PIDFILE -TERM $DAEMON
|
||||
- rc_status -v
|
||||
+ if [ -f "/etc/SuSe-release" ]; then
|
||||
+ killproc -p $PIDFILE -TERM $DAEMON
|
||||
+ rc_status -v
|
||||
+ elif [ -f "/etc/redhat-release" ]; then
|
||||
+ kill -9 `pidof openwsmand` > /dev/null 2>&1
|
||||
+ if [ $? -eq 0 ]; then
|
||||
+ echo " done"
|
||||
+ fi
|
||||
+ fi
|
||||
rm -f $lockfile
|
||||
;;
|
||||
|
||||
@@ -91,19 +101,40 @@ EOF
|
||||
;;
|
||||
|
||||
reload)
|
||||
- echo -n "Reload service $DESCRIPTIVE"
|
||||
- killproc -p $PIDFILE -HUP $DAEMON
|
||||
- rc_status -v
|
||||
+ echo -n "Reloading service $DESCRIPTIVE"
|
||||
+ if [ -f "/etc-SuSe-release" ]; then
|
||||
+ killproc -p $PIDFILE -HUP $DAEMON
|
||||
+ rc_status -v
|
||||
+ elif [ -f "/etc/redhat-release" ]; then
|
||||
+ killall -HUP openwsmad && echo " done."|| echo " failed."
|
||||
+ fi
|
||||
;;
|
||||
|
||||
status)
|
||||
echo -n "Checking for service $DESCRIPTIVE"
|
||||
- checkproc -p $PIDFILE $DAEMON
|
||||
- rc_status -v
|
||||
+ if [ -f "/etc/SuSe-release" ]; then
|
||||
+ checkproc -p $PIDFILE $DAEMON
|
||||
+ rc_status -v
|
||||
+ elif [ -f "/etc/redhat-release" ]; then
|
||||
+ pidof opewsmand > /dev/null 2>&1
|
||||
+ if [ $? -eq 0 ]; then
|
||||
+ echo " running"
|
||||
+ else
|
||||
+ echo " stopped"
|
||||
+ fi
|
||||
+ fi
|
||||
+
|
||||
+ ;;
|
||||
+ condrestart)
|
||||
+ [ -f $lockfile ] && restart || :
|
||||
;;
|
||||
|
||||
*)
|
||||
- echo "Usage: $0 {restart|start|stop|reload|force-reload|status}"
|
||||
+ echo "Usage: $0 {restart|start|stop|reload|force-reload|status|condrestart}"
|
||||
esac
|
||||
|
||||
+if [ -f "/etc/SuSe-release" ]; then
|
||||
rc_exit
|
||||
+elif [ -f "/etc/redhat-release" ]; then
|
||||
+exit 0
|
||||
+fi
|
||||
diff -up ./etc/owsmangencert.sh.in.bak ./etc/owsmangencert.sh.in
|
||||
--- ./etc/owsmangencert.sh.in.bak 2010-08-10 10:46:36.554862986 -0500
|
||||
+++ ./etc/owsmangencert.sh.in 2010-08-10 10:50:45.843859853 -0500
|
||||
@@ -15,19 +15,34 @@ if [ "$1" = "--force" ]; then
|
||||
shift
|
||||
fi
|
||||
|
||||
+FQDN=`hostname --fqdn`
|
||||
+ if [ "x${FQDN}" = "x" ]; then
|
||||
+ FQDN=localhost.localdomain
|
||||
+ fi
|
||||
+
|
||||
+
|
||||
echo
|
||||
echo creating selfsingned certificate
|
||||
echo "replace it with one signed by a certification authority (CA)"
|
||||
echo
|
||||
-echo enter your ServerName at the Common Name prompt
|
||||
+#echo enter your ServerName at the Common Name prompt
|
||||
echo
|
||||
|
||||
# use special .cnf, because with normal one no valid selfsigned
|
||||
# certificate is created
|
||||
|
||||
-export RANDFILE=/dev/random
|
||||
-openssl req -days 365 $@ -config $CNFFILE \
|
||||
+#export RANDFILE=/dev/random
|
||||
+cat <<EOF |openssl req -days 365 $@ -config $CNFFILE \
|
||||
-new -x509 -nodes -out $CERTFILE \
|
||||
-keyout $KEYFILE
|
||||
+--
|
||||
+SomeState
|
||||
+SomeCity
|
||||
+SomeOrganization
|
||||
+SomeOrganizationalUnit
|
||||
+${FQDN}
|
||||
+root@${FQDN}
|
||||
+EOF
|
||||
+
|
||||
chmod 600 $KEYFILE
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
Index: openwsman.conf
|
||||
===================================================================
|
||||
--- openwsman-2.0.0/etc/openwsman.conf (revision 3221)
|
||||
+++ openwsman-2.0.0/etc/openwsman.conf (working copy)
|
||||
@@ -4,7 +4,7 @@
|
||||
ssl_cert_file = /etc/openwsman/servercert.pem
|
||||
ssl_key_file = /etc/openwsman/serverkey.pem
|
||||
digest_password_file = /etc/openwsman/digest_auth.passwd
|
||||
-basic_password_file = /etc/openwsman/simple_auth.passwd
|
||||
+#basic_password_file = /etc/openwsman/simple_auth.passwd
|
||||
|
||||
min_threads = 4
|
||||
max_threads = 10
|
||||
@@ -15,8 +15,8 @@
|
||||
# Authentication backend for BASIC authentication. Default is to read a configuration file defined with 'basic_password_file'
|
||||
#
|
||||
|
||||
-#basic_authenticator = libwsman_pam_auth.so
|
||||
-#basic_authenticator_arg = openwsman
|
||||
+basic_authenticator = libwsman_pam_auth.so
|
||||
+basic_authenticator_arg = openwsman
|
||||
|
||||
#
|
||||
# WS-Management unauthenticated wsmid:Identify file
|
||||
@@ -0,0 +1,12 @@
|
||||
diff -up ./etc/ssleay.cnf.new ./etc/ssleay.cnf
|
||||
--- ./etc/ssleay.cnf.new 2009-12-16 17:04:15.000000000 -0600
|
||||
+++ ./etc/ssleay.cnf 2009-12-16 17:04:55.000000000 -0600
|
||||
@@ -2,7 +2,7 @@
|
||||
# SSLeay example configuration file.
|
||||
#
|
||||
|
||||
-RANDFILE = $ENV::HOME/.rnd
|
||||
+RANDFILE = /dev/random
|
||||
|
||||
[ req ]
|
||||
default_bits = 1024
|
||||
@@ -1,7 +0,0 @@
|
||||
/usr/lib/systemd/system/openwsmand.* -- gen_context(system_u:object_r:openwsman_unit_file_t,s0)
|
||||
|
||||
/usr/sbin/openwsmand -- gen_context(system_u:object_r:openwsman_exec_t,s0)
|
||||
|
||||
/var/log/wsmand.* -- gen_context(system_u:object_r:openwsman_log_t,s0)
|
||||
|
||||
/var/run/wsmand.* -- gen_context(system_u:object_r:openwsman_run_t,s0)
|
||||
@@ -1,79 +0,0 @@
|
||||
## <summary>WS-Management Server</summary>
|
||||
|
||||
########################################
|
||||
## <summary>
|
||||
## Execute openwsman in the openwsman domin.
|
||||
## </summary>
|
||||
## <param name="domain">
|
||||
## <summary>
|
||||
## Domain allowed to transition.
|
||||
## </summary>
|
||||
## </param>
|
||||
#
|
||||
interface(`openwsman_domtrans',`
|
||||
gen_require(`
|
||||
type openwsman_t, openwsman_exec_t;
|
||||
')
|
||||
|
||||
corecmd_search_bin($1)
|
||||
domtrans_pattern($1, openwsman_exec_t, openwsman_t)
|
||||
')
|
||||
########################################
|
||||
## <summary>
|
||||
## Execute openwsman server in the openwsman domain.
|
||||
## </summary>
|
||||
## <param name="domain">
|
||||
## <summary>
|
||||
## Domain allowed to transition.
|
||||
## </summary>
|
||||
## </param>
|
||||
#
|
||||
interface(`openwsman_systemctl',`
|
||||
gen_require(`
|
||||
type openwsman_t;
|
||||
type openwsman_unit_file_t;
|
||||
')
|
||||
|
||||
systemd_exec_systemctl($1)
|
||||
init_reload_services($1)
|
||||
systemd_read_fifo_file_passwd_run($1)
|
||||
allow $1 openwsman_unit_file_t:file read_file_perms;
|
||||
allow $1 openwsman_unit_file_t:service manage_service_perms;
|
||||
|
||||
ps_process_pattern($1, openwsman_t)
|
||||
')
|
||||
|
||||
|
||||
########################################
|
||||
## <summary>
|
||||
## All of the rules required to administrate
|
||||
## an openwsman environment
|
||||
## </summary>
|
||||
## <param name="domain">
|
||||
## <summary>
|
||||
## Domain allowed access.
|
||||
## </summary>
|
||||
## </param>
|
||||
## <rolecap/>
|
||||
#
|
||||
interface(`openwsman_admin',`
|
||||
gen_require(`
|
||||
type openwsman_t;
|
||||
type openwsman_unit_file_t;
|
||||
')
|
||||
|
||||
allow $1 openwsman_t:process { signal_perms };
|
||||
ps_process_pattern($1, openwsman_t)
|
||||
|
||||
tunable_policy(`deny_ptrace',`',`
|
||||
allow $1 openwsman_t:process ptrace;
|
||||
')
|
||||
|
||||
openwsman_systemctl($1)
|
||||
admin_pattern($1, openwsman_unit_file_t)
|
||||
allow $1 openwsman_unit_file_t:service all_service_perms;
|
||||
optional_policy(`
|
||||
systemd_passwd_agent_exec($1)
|
||||
systemd_read_fifo_file_passwd_run($1)
|
||||
')
|
||||
')
|
||||
+150
-778
File diff suppressed because it is too large
Load Diff
@@ -1,74 +0,0 @@
|
||||
policy_module(openwsman, 1.0.0)
|
||||
|
||||
########################################
|
||||
#
|
||||
# Declarations
|
||||
#
|
||||
|
||||
type openwsman_t;
|
||||
type openwsman_exec_t;
|
||||
init_daemon_domain(openwsman_t, openwsman_exec_t)
|
||||
|
||||
type openwsman_tmp_t;
|
||||
files_tmp_file(openwsman_tmp_t)
|
||||
|
||||
type openwsman_tmpfs_t;
|
||||
files_tmpfs_file(openwsman_tmpfs_t)
|
||||
|
||||
type openwsman_log_t;
|
||||
logging_log_file(openwsman_log_t)
|
||||
|
||||
type openwsman_run_t;
|
||||
files_pid_file(openwsman_run_t)
|
||||
|
||||
type openwsman_unit_file_t;
|
||||
systemd_unit_file(openwsman_unit_file_t)
|
||||
|
||||
########################################
|
||||
#
|
||||
# openwsman local policy
|
||||
#
|
||||
|
||||
allow openwsman_t self:capability setuid;
|
||||
|
||||
allow openwsman_t self:process { fork };
|
||||
allow openwsman_t self:fifo_file rw_fifo_file_perms;
|
||||
allow openwsman_t self:unix_stream_socket create_stream_socket_perms;
|
||||
allow openwsman_t self:tcp_socket { accept create_socket_perms listen };
|
||||
|
||||
manage_files_pattern(openwsman_t, openwsman_tmp_t, openwsman_tmp_t)
|
||||
manage_dirs_pattern(openwsman_t, openwsman_tmp_t, openwsman_tmp_t)
|
||||
files_tmp_filetrans(openwsman_t, openwsman_tmp_t, { dir file })
|
||||
|
||||
manage_files_pattern(openwsman_t, openwsman_tmpfs_t, openwsman_tmpfs_t)
|
||||
manage_dirs_pattern(openwsman_t, openwsman_tmpfs_t, openwsman_tmpfs_t)
|
||||
fs_tmpfs_filetrans(openwsman_t, openwsman_tmpfs_t, { dir file })
|
||||
|
||||
manage_files_pattern(openwsman_t, openwsman_log_t, openwsman_log_t)
|
||||
logging_log_filetrans(openwsman_t, openwsman_log_t, { file })
|
||||
|
||||
manage_files_pattern(openwsman_t, openwsman_run_t, openwsman_run_t)
|
||||
files_pid_filetrans(openwsman_t, openwsman_run_t, { file })
|
||||
|
||||
auth_use_nsswitch(openwsman_t)
|
||||
auth_domtrans_chkpwd(openwsman_t)
|
||||
|
||||
corenet_tcp_connect_pegasus_https_port(openwsman_t)
|
||||
corenet_tcp_bind_vnc_port(openwsman_t)
|
||||
corenet_tcp_bind_http_port(openwsman_t)
|
||||
|
||||
dev_read_urand(openwsman_t)
|
||||
|
||||
logging_send_syslog_msg(openwsman_t)
|
||||
logging_send_audit_msgs(openwsman_t)
|
||||
|
||||
optional_policy(`
|
||||
sblim_stream_connect_sfcbd(openwsman_t)
|
||||
sblim_rw_semaphores_sfcbd(openwsman_t)
|
||||
sblim_getattr_exec_sfcbd(openwsman_t)
|
||||
')
|
||||
|
||||
optional_policy(`
|
||||
unconfined_domain(openwsman_t)
|
||||
')
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
[Unit]
|
||||
Description=Openwsman WS-Management Service
|
||||
After=syslog.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
ExecStart=/usr/sbin/openwsmand -S
|
||||
ExecStartPre=/etc/openwsman/owsmantestcert.sh
|
||||
PIDFile=/var/run/wsmand.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -1,21 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ ! -f "/etc/openwsman/serverkey.pem" ]; then
|
||||
if [ -f "/etc/ssl/servercerts/servercert.pem" \
|
||||
-a -f "/etc/ssl/servercerts/serverkey.pem" ]; then
|
||||
echo "Using common server certificate /etc/ssl/servercerts/servercert.pem"
|
||||
ln -s /etc/ssl/servercerts/server{cert,key}.pem /etc/openwsman
|
||||
exit 0
|
||||
else
|
||||
echo "FAILED: Starting openwsman server"
|
||||
echo "There is no ssl server key available for openwsman server to use."
|
||||
echo -e "Please generate one with the following script and start the openwsman service again:\n"
|
||||
echo "##################################"
|
||||
echo "/etc/openwsman/owsmangencert.sh"
|
||||
echo "================================="
|
||||
|
||||
echo "NOTE: The script uses /dev/random device for generating some random bits while generating the server key."
|
||||
echo " If this takes too long, you can replace the value of \"RANDFILE\" in /etc/openwsman/ssleay.cnf with /dev/urandom. Please understand the implications of replacing the RNADFILE."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
@@ -0,0 +1,22 @@
|
||||
diff -up openwsman-2.2.0/bindings/perl/Makefile.am.org openwsman-2.2.0/bindings/perl/Makefile.am
|
||||
--- openwsman-2.2.0/bindings/perl/Makefile.am.org 2009-12-10 13:34:55.000000000 -0600
|
||||
+++ openwsman-2.2.0/bindings/perl/Makefile.am 2009-12-10 13:35:56.000000000 -0600
|
||||
@@ -33,6 +33,7 @@ SWIG_INPUT = ../openwsman.i
|
||||
openwsman_la_SOURCES = openwsman_wrap.c \
|
||||
../openwsman.c \
|
||||
$(SWIG_INPUT)
|
||||
+all-local: openwsman.pm
|
||||
|
||||
openwsman_la_LIBADD = $(LIBS) -lpthread $(CURL_LIBS)
|
||||
|
||||
diff -up openwsman-2.2.0/bindings/perl/Makefile.in.org openwsman-2.2.0/bindings/perl/Makefile.in
|
||||
--- openwsman-2.2.0/bindings/perl/Makefile.in.org 2009-12-10 13:35:03.000000000 -0600
|
||||
+++ openwsman-2.2.0/bindings/perl/Makefile.in 2009-12-10 13:36:18.000000000 -0600
|
||||
@@ -289,6 +289,7 @@ SWIG_INPUT = ../openwsman.i
|
||||
openwsman_la_SOURCES = openwsman_wrap.c \
|
||||
../openwsman.c \
|
||||
$(SWIG_INPUT)
|
||||
+all-local: openwsman.pm
|
||||
|
||||
openwsman_la_LIBADD = $(LIBS) -lpthread $(CURL_LIBS)
|
||||
openwsman_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED)
|
||||
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/python2.5
|
||||
|
||||
import sys
|
||||
import os
|
||||
import getopt
|
||||
from distutils import sysconfig
|
||||
|
||||
valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags',
|
||||
'ldflags', 'help']
|
||||
|
||||
def exit_with_usage(code=1):
|
||||
print >>sys.stderr, "Usage: %s [%s]" % (sys.argv[0],
|
||||
'|'.join('--'+opt for opt in valid_opts))
|
||||
sys.exit(code)
|
||||
|
||||
try:
|
||||
opts, args = getopt.getopt(sys.argv[1:], '', valid_opts)
|
||||
except getopt.error:
|
||||
exit_with_usage()
|
||||
|
||||
if not opts:
|
||||
exit_with_usage()
|
||||
|
||||
opt = opts[0][0]
|
||||
|
||||
pyver = sysconfig.get_config_var('VERSION')
|
||||
getvar = sysconfig.get_config_var
|
||||
|
||||
if opt == '--help':
|
||||
exit_with_usage(0)
|
||||
|
||||
elif opt == '--prefix':
|
||||
print sysconfig.PREFIX
|
||||
|
||||
elif opt == '--exec-prefix':
|
||||
print sysconfig.EXEC_PREFIX
|
||||
|
||||
elif opt in ('--includes', '--cflags'):
|
||||
flags = ['-I' + sysconfig.get_python_inc(),
|
||||
'-I' + sysconfig.get_python_inc(plat_specific=True)]
|
||||
if opt == '--cflags':
|
||||
flags.extend(getvar('CFLAGS').split())
|
||||
print ' '.join(flags)
|
||||
|
||||
elif opt in ('--libs', '--ldflags'):
|
||||
libs = getvar('LIBS').split() + getvar('SYSLIBS').split()
|
||||
libs.append('-lpython'+pyver)
|
||||
# add the prefix/lib/pythonX.Y/config dir, but only if there is no
|
||||
# shared library in prefix/lib/.
|
||||
if opt == '--ldflags' and not getvar('Py_ENABLE_SHARED'):
|
||||
libs.insert(0, '-L' + getvar('LIBPL'))
|
||||
print ' '.join(libs)
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
SHA512 (openwsmand.8.gz) = 751c40060781e8b5a847e09aee94833ed1e4fbe966f052e5023cb209361acc312078d0d75c0806bd9990da061d3048566418135d3670dd620c6b809e5d0e594c
|
||||
SHA512 (v2.7.2.tar.gz) = ffd6a0d00a00b00e321b2b55e0c77326f5943ca3224eee74c706e53a1c5c44ef0e8b1cfde5d631966769eefd4e567b0db8713085b7a8b386c2871ab4ada83046
|
||||
62b4eaf752171058bf0036e049ca01d0 openwsman-2.2.0.tar.bz2
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
- hosts: localhost
|
||||
|
||||
roles:
|
||||
- role: standard-test-beakerlib
|
||||
tags:
|
||||
- classic
|
||||
repositories:
|
||||
- repo: https://pagure.io/DSP_test.git
|
||||
dest: DSP_test
|
||||
version: master
|
||||
|
||||
tests:
|
||||
- DSP_test
|
||||
environment:
|
||||
# RPM package containing the policy module
|
||||
TEST_RPM: openwsman-selinux
|
||||
# policy module name
|
||||
TEST_POLICY: openwsman
|
||||
# policy sources will be extracted from corresponding .src.rpm
|
||||
# policy tar filename regexp (e.g. "usbguard-selinux*.tar.gz")
|
||||
# or empty string if policy sources are not inside a tar archive
|
||||
POLICY_TAR: ''
|
||||
# path to policy sources (in of the tar archive) -- <POLICY_TAR>/<POLICY_PATH>/<TEST_POLICY>.(te|if|fc)
|
||||
# or path in the src.rpm if there is no tar archive -- <src.rpm>/<POLICY_PATH>/<TEST_POLICY>.(te|if|fc)
|
||||
# can contain wildcards (e.g. for versions etc.)
|
||||
POLICY_PATH: .
|
||||
|
||||
required_packages:
|
||||
- policycoreutils
|
||||
- selinux-policy
|
||||
- selinux-policy-targeted
|
||||
- setools-console
|
||||
- libselinux-utils
|
||||
- rpm
|
||||
- tar
|
||||
- git
|
||||
- openwsman-server
|
||||
Reference in New Issue
Block a user