Changeset: 503f3d5c8e34 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=503f3d5c8e34
Modified Files:
        gdk/gdk_logger.c
        gdk/gdk_private.h
        monetdb5/mal/Tests/All
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_result.c
        sql/common/sql_types.c
        sql/include/sql_catalog.h
        sql/test/miscellaneous/Tests/groupby_error.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
Branch: unlock
Log Message:

Merge with default branch.


diffs (truncated from 1468 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -753,7 +753,8 @@ fi
 
 %files selinux
 %defattr(-,root,root,0755)
-%doc buildtools/selinux/*
+%docdir %{_datadir}/doc/MonetDB-selinux
+%{_datadir}/doc/MonetDB-selinux/*
 %{_datadir}/selinux/*/monetdb.pp
 
 %endif
@@ -793,22 +794,6 @@ fi
 
 %cmake3_build
 
-%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
-cd buildtools/selinux
-%if 0%{?fedora} < 27
-# no `map' policy available before Fedora 27
-sed -i '/map/d' monetdb.te
-%endif
-
-for selinuxvariant in %{selinux_variants}
-do
-  make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile
-  mv monetdb.pp monetdb.pp.${selinuxvariant}
-  make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean
-done
-cd -
-%endif
-
 %install
 %cmake3_install
 
@@ -836,12 +821,6 @@ rm -f %{buildroot}%{_bindir}/monetdb_mte
 rm -rf %{buildroot}%{_datadir}/monetdb # /cmake
 
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
-for selinuxvariant in %{selinux_variants}
-do
-  install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
-  install -p -m 644 buildtools/selinux/monetdb.pp.${selinuxvariant} \
-    %{buildroot}%{_datadir}/selinux/${selinuxvariant}/monetdb.pp
-done
 if [ -x /usr/sbin/hardlink ]; then
     /usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux
 else
diff --git a/NT/mkodbcwxs.py b/NT/mkodbcwxs.py
--- a/NT/mkodbcwxs.py
+++ b/NT/mkodbcwxs.py
@@ -48,11 +48,11 @@ def main():
     print(r'  <Product Id="*" Language="1033" Manufacturer="MonetDB" 
Name="MonetDB ODBC Driver" UpgradeCode="{}" 
Version="{}">'.format(upgradecode[arch], sys.argv[1]))
     print(r'    <Package Id="*" Comments="MonetDB ODBC Driver" 
Compressed="yes" InstallerVersion="301" Keywords="MonetDB SQL ODBC" 
Languages="1033" Manufacturer="MonetDB BV" Platform="{}"/>'.format(arch))
     print(r'    <MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A 
later version of [ProductName] is already installed." 
AllowSameVersionUpgrades="no"/>')
-    print(r'    <WixVariable Id="WixUILicenseRtf" Value="license.rtf"/>')
-    print(r'    <WixVariable Id="WixUIBannerBmp" Value="banner.bmp"/>')
+    print(r'    <WixVariable Id="WixUILicenseRtf" Value="share\license.rtf"/>')
+    print(r'    <WixVariable Id="WixUIBannerBmp" Value="share\banner.bmp"/>')
     # print(r'    <WixVariable Id="WixUIDialogBmp" 
Value="backgroundRipple.bmp"/>')
     print(r'    <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>')
-    print(r'    <Property Id="ARPPRODUCTICON" Value="monetdb.ico"/>')
+    print(r'    <Property Id="ARPPRODUCTICON" Value="share\monetdb.ico"/>')
     print(r'    <Media Id="1" Cabinet="monetdb.cab" EmbedCab="yes"/>')
     print(r'    <CustomAction Id="driverinstall" FileKey="odbcinstall" 
ExeCommand="/Install" Execute="deferred" Impersonate="no"/>')
     print(r'    <CustomAction Id="driveruninstall" FileKey="odbcinstall" 
ExeCommand="/Uninstall" Execute="deferred" Impersonate="no"/>')
@@ -80,12 +80,12 @@ def main():
                vcpkg.format(r'bin\zlib1.dll')])
     print(r'            </Directory>')
     id = comp(features, id, 12,
-              [r'license.rtf'])
+              [r'share\license.rtf'])
     id = comp(features, id, 12,
               [r'bin\odbcinstall.exe'],
               fid = 'odbcinstall')
     id = comp(features, id, 12,
-              [r'website.html'],
+              [r'share\website.html'],
               name = 'MonetDB Web Site',
               sid = 'website_html',
               vital = 'no')
@@ -109,7 +109,7 @@ def main():
     print(r'    </Feature>')
     print(r'    <UIRef Id="WixUI_InstallDir"/>')
     print(r'    <UIRef Id="WixUI_ErrorProgressText"/>')
-    print(r'    <Icon Id="monetdb.ico" SourceFile="monetdb.ico"/>')
+    print(r'    <Icon Id="monetdb.ico" SourceFile="share\monetdb.ico"/>')
     print(r'    <InstallExecuteSequence>')
     print(r'      <Custom Action="driverinstall" Before="RegisterUser">')
     print(r'        NOT Installed OR REINSTALL')
diff --git a/NT/mksqlwxs.py b/NT/mksqlwxs.py
--- a/NT/mksqlwxs.py
+++ b/NT/mksqlwxs.py
@@ -65,8 +65,8 @@ def main():
     print(r'      <UpgradeVersion OnlyDetect="no" Minimum="11.29.3" 
IncludeMinimum="no" Maximum="{}" 
Property="GEOMINSTALLED"/>'.format(sys.argv[1]))
     print(r'    </Upgrade>')
     print(r'    <MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A 
later version of [ProductName] is already installed." 
AllowSameVersionUpgrades="no"/>')
-    print(r'    <WixVariable Id="WixUILicenseRtf" Value="license.rtf"/>')
-    print(r'    <WixVariable Id="WixUIBannerBmp" Value="banner.bmp"/>')
+    print(r'    <WixVariable Id="WixUILicenseRtf" Value="share\license.rtf"/>')
+    print(r'    <WixVariable Id="WixUIBannerBmp" Value="share\banner.bmp"/>')
     # print(r'    <WixVariable Id="WixUIDialogBmp" 
Value="backgroundRipple.bmp"/>')
     print(r'    <Property Id="INSTALLDIR">')
     print(r'      <RegistrySearch Id="MonetDBRegistry" 
Key="Software\[Manufacturer]\[ProductName]" Name="InstallPath" Root="HKLM" 
Type="raw"/>')
@@ -99,7 +99,7 @@ def main():
     print(r'    <Property Id="ApplicationFolderName" Value="MonetDB"/>')
     print(r'    <Property Id="WixAppFolder" Value="WixPerMachineFolder"/>')
     print(r'    <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>')
-    print(r'    <Property Id="ARPPRODUCTICON" Value="monetdb.ico"/>')
+    print(r'    <Property Id="ARPPRODUCTICON" Value="share\monetdb.ico"/>')
     print(r'    <Media Id="1" Cabinet="monetdb.cab" EmbedCab="yes"/>')
     print(r'    <Directory Id="TARGETDIR" Name="SourceDir">')
     msvc = r'C:\Program Files (x86)\Microsoft Visual 
Studio\{}\Community\VC\Redist\MSVC'.format(vs)
@@ -195,7 +195,7 @@ def main():
                                  r'share\doc\MonetDB-SQL\dump-restore.txt'],
               vital = 'no')
     id = comp(features, id, 18,
-              [r'website.html'],
+              [r'share\website.html'],
               name = 'MonetDB Web Site',
               sid = 'website_html',
               vital = 'no')
@@ -203,7 +203,7 @@ def main():
     print(r'              </Directory>')
     print(r'            </Directory>')
     id = comp(features, id, 12,
-              [r'license.rtf',
+              [r'share\license.rtf',
                r'M5server.bat',
                r'msqldump.bat'])
     id = comp(pyapi3, id, 12,
@@ -259,7 +259,7 @@ def main():
     print(r'    </Feature>')
     print(r'    <UIRef Id="WixUI_Mondo"/>')
     print(r'    <UIRef Id="WixUI_ErrorProgressText"/>')
-    print(r'    <Icon Id="monetdb.ico" SourceFile="monetdb.ico"/>')
+    print(r'    <Icon Id="monetdb.ico" SourceFile="share\monetdb.ico"/>')
     print(r'  </Product>')
     print(r'</Wix>')
 
diff --git a/buildtools/selinux/monetdb.fc b/buildtools/selinux/monetdb.fc
deleted file mode 100644
--- a/buildtools/selinux/monetdb.fc
+++ /dev/null
@@ -1,15 +0,0 @@
-/usr/bin/monetdbd                              --      
gen_context(system_u:object_r:monetdbd_exec_t,s0)
-/usr/bin/mserver5                              --      
gen_context(system_u:object_r:mserver5_exec_t,s0)
-/usr/lib/systemd/system/monetdbd.*                     
gen_context(system_u:object_r:monetdbd_unit_file_t,s0)
-/var/log/monetdb(/.*)?                                 
gen_context(system_u:object_r:monetdbd_log_t,s0)
-# for some reason we cannot use /run/monetdb here, even though that is the 
real name
-/var/run/monetdb(/.*)?                                 
gen_context(system_u:object_r:monetdbd_var_run_t,s0)
-# database "farm"
-/var/monetdb5/dbfarm(/.*)?                             
gen_context(system_u:object_r:mserver5_db_t,s0)
-/var/monetdb5/dbfarm/\.merovingian_properties  --      
gen_context(system_u:object_r:monetdbd_etc_t,s0)
-/var/monetdb5/dbfarm/\.merovingian_lock                --      
gen_context(system_u:object_r:monetdbd_lock_t,s0)
-/var/monetdb5/dbfarm/.*/\.gdk_lock             --      
gen_context(system_u:object_r:mserver5_lock_t,s0)
-/var/lib/monetdb(/.*)?                                 
gen_context(system_u:object_r:mserver5_db_t,s0)
-/var/lib/monetdb/\.merovingian_properties      --      
gen_context(system_u:object_r:monetdbd_etc_t,s0)
-/var/lib/monetdb/\.merovingian_lock            --      
gen_context(system_u:object_r:monetdbd_lock_t,s0)
-/var/lib/monetdb/.*/\.gdk_lock                 --      
gen_context(system_u:object_r:mserver5_lock_t,s0)
diff --git a/buildtools/selinux/monetdb.if b/buildtools/selinux/monetdb.if
deleted file mode 100644
--- a/buildtools/selinux/monetdb.if
+++ /dev/null
@@ -1,1 +0,0 @@
-## <summary></summary>
diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te
deleted file mode 100644
--- a/buildtools/selinux/monetdb.te
+++ /dev/null
@@ -1,150 +0,0 @@
-policy_module(monetdb, 1.0)
-# The above line declares that this file is a SELinux policy file. Its
-# name is monetdb, so the file should be saved as monetdb.te
-
-# Declare the system types and classes we're using.
-require {
-       type proc_net_t;
-       type tmp_t;
-       type var_t;
-       type var_lib_t;
-       type user_home_t;
-       type user_home_dir_t;
-       type unconfined_service_t;      # for EPEL 7
-       type proc_t;                    # for EPEL 7
-       type cgroup_t;
-       class dir { read };
-       class fd { use };
-       class fifo_file { getattr read write };
-       class file { entrypoint execute getattr manage_file_perms map open read 
};
-       class netlink_selinux_socket create_socket_perms;
-       class process { rlimitinh siginh signal sigchld sigkill transition };
-       class tcp_socket create_stream_socket_perms;
-       class udp_socket create_stream_socket_perms;
-       class unix_dgram_socket create_socket_perms;
-       class unix_stream_socket { connectto create_stream_socket_perms getopt 
read shutdown write };
-}
-
-# First, we declare the monetdbd_t domain, used for the "monetdbd"
-# process.  Because it is launched by systemd, we tell the policy that
-# monetdbd_exec_t (the context of monetdbd), when launched by systemd,
-# should transition to monetdbd_t.
-type monetdbd_t;               # monetdbd when run by systemd
-type monetdbd_exec_t;          # /usr/bin/monetdbd
-init_daemon_domain(monetdbd_t, monetdbd_exec_t)
-
-# monetdbd_t must be allowed to execute mserver5 which has context
-# mserver5_exec_t which must then transition to the mserver5_t domain
-type mserver5_t;               # mserver5 when run by monetdbd (monetdbd_t)
-type mserver5_exec_t;          # /usr/bin/mserver5
-init_daemon_domain(mserver5_t, mserver5_exec_t)
-# see 
https://selinuxproject.org/page/NB_Domain_and_Object_Transitions#Domain_Transition
-allow monetdbd_t mserver5_t:process transition;
-allow monetdbd_t mserver5_exec_t:file { execute open read getattr };
-allow mserver5_t mserver5_exec_t:file { entrypoint read execute };
-type_transition monetdbd_t mserver5_exec_t:process mserver5_t;
-
-# monetdbd must be allowed to kill the server it started
-allow monetdbd_t mserver5_t:process sigkill;
-# on EPEL 7 we need these as well
-allow mserver5_t monetdbd_t:process sigchld;
-allow monetdbd_t unconfined_service_t:process signal;
-allow mserver5_t proc_t:file { open read getattr };      # read /proc/meminfo
-
-# declare a type for the systemd unit file (monetdbd.service)
-type monetdbd_unit_file_t;
-systemd_unit_file(monetdbd_unit_file_t)
-
-# declare a type for the log files
-type monetdbd_log_t;
-logging_log_file(monetdbd_log_t)
-manage_dirs_pattern(monetdbd_t, monetdbd_log_t, monetdbd_log_t)
-manage_files_pattern(monetdbd_t, monetdbd_log_t, monetdbd_log_t)
-logging_log_filetrans(monetdbd_t, monetdbd_log_t, { file dir })
-
-# the context used for the MonetDB database files
-type mserver5_db_t;
-files_type(mserver5_db_t)
-manage_files_pattern(mserver5_t, mserver5_db_t, mserver5_db_t)
-manage_dirs_pattern(mserver5_t, mserver5_db_t, mserver5_db_t)
-manage_files_pattern(monetdbd_t, mserver5_db_t, mserver5_db_t)
-manage_dirs_pattern(monetdbd_t, mserver5_db_t, mserver5_db_t)
-allow mserver5_t mserver5_db_t:file { map };
-
-# the context used for the configuration files
-type monetdbd_etc_t;
-files_config_file(monetdbd_etc_t)
-read_files_pattern(monetdbd_t, monetdbd_etc_t, monetdbd_etc_t)
-read_lnk_files_pattern(monetdbd_t, monetdbd_etc_t, monetdbd_etc_t)
-
-# the context used for the PID file
-type monetdbd_var_run_t;
-files_pid_file(monetdbd_var_run_t)
-init_daemon_run_dir(monetdbd_var_run_t, "monetdb")
-manage_dirs_pattern(monetdbd_t, monetdbd_var_run_t, monetdbd_var_run_t)
-manage_files_pattern(monetdbd_t, monetdbd_var_run_t, monetdbd_var_run_t)
-
-# context for .merovingian_lock file
-type monetdbd_lock_t;
-files_lock_file(monetdbd_lock_t)
-allow monetdbd_t monetdbd_lock_t:file manage_file_perms;
-files_lock_filetrans(monetdbd_t, monetdbd_lock_t, file, ".merovingian_lock")
-
-# context for .gdk_lock file inside the database
-# these files get locked by mserver5, but also by monetdbd
-type mserver5_lock_t;
-files_lock_file(mserver5_lock_t)
-allow mserver5_t mserver5_lock_t:file manage_file_perms;
-files_lock_filetrans(mserver5_t, mserver5_lock_t, file, ".gdk_lock")
-allow monetdbd_t mserver5_lock_t:file manage_file_perms;
-files_lock_filetrans(monetdbd_t, mserver5_lock_t, file, ".gdk_lock")
-
-# other required permissions
-dev_read_rand(monetdbd_t)
-sysnet_dns_name_resolve(monetdbd_t)
-corenet_udp_bind_generic_node(monetdbd_t)
-corenet_tcp_bind_generic_node(monetdbd_t)
-allow monetdbd_t self:tcp_socket create_stream_socket_perms;
-allow monetdbd_t self:udp_socket create_stream_socket_perms;
-allow monetdbd_t self:unix_dgram_socket create_socket_perms;
-allow monetdbd_t self:unix_stream_socket { create_stream_socket_perms 
connectto };
-allow monetdbd_t self:netlink_selinux_socket create_socket_perms;
-allow monetdbd_t proc_net_t:file read;
-manage_dirs_pattern(monetdbd_t, tmp_t, tmp_t)
-manage_sock_files_pattern(monetdbd_t, tmp_t, tmp_t)
-manage_sock_files_pattern(monetdbd_t, mserver5_db_t, mserver5_db_t)
-
-dev_read_rand(mserver5_t)
-allow mserver5_t monetdbd_t:fd { use };
-allow monetdbd_t mserver5_t:process { rlimitinh siginh signal };
-dev_rw_null(mserver5_t)
-sysnet_dns_name_resolve(mserver5_t)
-corenet_udp_bind_generic_node(mserver5_t)
-corenet_tcp_bind_generic_node(mserver5_t)
-allow mserver5_t self:tcp_socket create_stream_socket_perms;
-allow mserver5_t self:udp_socket create_stream_socket_perms;
-allow mserver5_t self:unix_dgram_socket create_socket_perms;
-allow mserver5_t self:unix_stream_socket { create_stream_socket_perms 
connectto };
-allow mserver5_t self:netlink_selinux_socket create_socket_perms;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to