The problem seems to be using the division operator in jk_lib to obtain
the major device number, and the division operator always returns a
floating point, not an integer.  The fix is to use the floor division
operator:

--- /usr/share/jailkit/jk_lib.py.orig   2021-09-08 14:52:21.196000000 -0600
+++ /usr/share/jailkit/jk_lib.py        2021-09-08 15:01:07.748000000 -0600
@@ -578,18 +578,18 @@
        sb = os.stat(path)
        try:
                if (sys.platform[:5] == 'linux'):
-                       major = sb.st_rdev / 256 #major = st_rdev divided by 
256 (8bit reserved for the minor number)
+                       major = sb.st_rdev // 256 #major = st_rdev divided by 
256 (8bit reserved for the minor number)
                        minor = sb.st_rdev % 256 #minor = remainder of st_rdev 
divided by 256
                elif (sys.platform == 'sunos5'):
                        if (sys.maxint == 2147483647):
-                               major = sb.st_rdev / 262144 #major = st_rdev 
divided by 256 (18 bits reserved for the minor number)
+                               major = sb.st_rdev // 262144 #major = st_rdev 
divided by 256 (18 bits reserved for the minor number)
                                minor = sb.st_rdev % 262144 #minor = remainder 
of st_rdev divided by 256
                        else:
                                #64 bit solaris has 32 bit minor/32bit major
-                               major = sb.st_rdev / 2147483647
+                               major = sb.st_rdev // 2147483647
                                minor =  sb.st_rdev % 2147483647
                else:
-                       major = sb.st_rdev / 256 #major = st_rdev divided by 256
+                       major = sb.st_rdev // 256 #major = st_rdev divided by 
256
                        minor = sb.st_rdev % 256 #minor = remainder of st_rdev 
divided by 256
                if (stat.S_ISCHR(sb.st_mode)): 
                        mode = 'c'


-- 
Jesse Norell
Kentec Communications, Inc.
970-522-8107  -  www.kci.net

Reply via email to