Compare commits

...

52 Commits

Author SHA1 Message Date
Kaleb S. KEITHLEY ef6da44cb2 ceph 15.2.15 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2021-10-21 07:59:34 -04:00
Kaleb S. KEITHLEY 747ae8d861 ceph 15.2.14 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2021-08-06 07:32:26 -04:00
Kaleb S. KEITHLEY 9dc3ec7aa3 ceph 15.2.13 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2021-05-27 04:51:24 -04:00
Kaleb S. KEITHLEY 992b1acd37 ceph 15.2.12 GA
CVE-2021-3524
CVE-2021-3531
2021-05-14 08:22:10 -04:00
Kaleb S KEITHLEY 6dec392ef2 ceph 15.2.11 GA
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2021-04-20 10:09:47 -04:00
Kaleb S KEITHLEY 9ffb878ee4 ceph 15.2.10 GA
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2021-03-18 12:33:36 -04:00
Kaleb S KEITHLEY 294a032030 ceph 15.2.9 GA
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2021-02-24 09:33:07 -05:00
Kaleb S KEITHLEY a579beea9e ceph 15.2.8, w/ system rocksdb, w/ system npm
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2021-02-01 13:09:07 -05:00
Kaleb S KEITHLEY df3db8be0e ceph 15.2.8 GA
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2020-12-24 06:19:25 -05:00
Kaleb S KEITHLEY da3f27e563 ceph 15.2.7 GA
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2020-11-30 23:33:46 -05:00
Kaleb S KEITHLEY d5be4a1cc6 ceph 15.2.6 GA
Signed-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>
2020-11-19 17:05:43 -05:00
Kaleb S. KEITHLEY 950231a5bb ceph 15.2.5 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-09-16 11:39:14 -04:00
Richard W.M. Jones b774776eb5 Rebuild against fmt 7. 2020-07-29 13:46:35 +01:00
Fedora Release Engineering be7e755323 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 13:49:50 +00:00
Kaleb S. KEITHLEY 95e779c6c1 /usr/bin/cmake --build "." -j2 --verbose and
DESTDIR="/home/kkeithle/rpmbuild/BUILDROOT/ceph-15.2.4-9.fc33.x86_64" /usr/bin/cmake --install "."

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-21 07:01:19 -04:00
Kaleb S. KEITHLEY 73dfbc7ffd see 15.2.4-4 (f33-java11) for real this time
and use /usr/bin/make install DESTDIR=/home/kkeithle/rpmbuild/BUILDROOT/ceph-15.2.4-8.fc33.x86_64 INSTALL="/usr/bin/install -p" macro

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-20 18:33:21 -04:00
Kaleb S. KEITHLEY be70cfd29d see 15.2.4-3, hopefully for real this time
and use /usr/bin/make install DESTDIR=/home/kkeithle/rpmbuild/BUILDROOT/ceph-15.2.4-7.fc33.x86_64 INSTALL="/usr/bin/install -p" macro

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-20 17:24:17 -04:00
Kaleb S. KEITHLEY 2e1f76369c see 15.2.4-3, hopefully for real this time
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-20 16:11:22 -04:00
Kaleb S. KEITHLEY 6daabd97d4 see 15.2.4-4
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-17 18:56:06 -04:00
Kaleb S. KEITHLEY fbd3e48156 see 15.2.4-3
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-17 18:54:37 -04:00
Kaleb S. KEITHLEY 6fc0065262 Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-17 17:18:21 -04:00
Kaleb S. KEITHLEY df740a5e36 use ld -r -z ibt -z shstk... instead of magic hackery to get CET ibt
and shstk. N.B. updated yasm in f33/rawhide now has support for
  .note.gnu.properties so even this will go away in the next build
signal_handler.cc, use HAVE_REENTRANT_STRSIGNAL, strsignal(3)

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-17 17:14:15 -04:00
Jiri cb586a7643 Rebuilt for JDK-11 2020-07-10 17:20:01 +02:00
Kaleb S. KEITHLEY 447d02458a ceph 15.2.4 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-07-01 13:51:09 -04:00
Kaleb S. KEITHLEY f0623329e5 explict BuildRequires python3-setuptools
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-06-23 13:17:36 -04:00
Kaleb S. KEITHLEY 624de89cce ceph 15.2.3 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-06-01 11:42:57 -04:00
Kaleb S. KEITHLEY 0e58e2f39c SYSTEM_BOOST=ON in preparatrion for rebuild with boost-1.73
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-28 08:38:29 -04:00
Kaleb S. KEITHLEY 66d0b21911 ceph 15.2.2, CET enable src/common/crc32c_intel_*_asm.s; shstk, ibt
and other fixes
see https://github.com/intel/isa-l/blob/master/crc/crc32_iscsi_00.asm

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-26 19:15:25 -04:00
Kaleb S. KEITHLEY abcc0b7100 ceph 15.2.2, CET enable src/common/crc32c_intel_*_asm.s; shstk, ibt
and other fixes
see https://github.com/intel/isa-l/blob/master/crc/crc32_iscsi_00.asm

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-26 17:23:55 -04:00
Kaleb S. KEITHLEY cc4e5c3669 ceph 15.2.2, CET enable src/common/crc32c_intel_*_asm.s; shstk, ibt
and other fixes
see https://github.com/intel/isa-l/blob/master/crc/crc32_iscsi_00.asm

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-26 11:17:44 -04:00
Kaleb S. KEITHLEY 5c46ad7f7e ceph 15.2.2, CET enable src/common/crc32c_intel_*_asm.s; shstk, ibt
and other fixes
see https://github.com/intel/isa-l/blob/master/crc/crc32_iscsi_00.asm

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-26 11:15:55 -04:00
Miro Hrončok 5904d137cf Rebuilt for Python 3.9 2020-05-26 02:42:31 +02:00
Kaleb S. KEITHLEY 21ae44b9d8 ceph 15.2.2 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-20 17:47:40 -04:00
Kaleb S. KEITHLEY ab7f0da7e2 ceph 15.2.1, gmock and gtest. (although gmock last built for f27)
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-18 07:44:35 -04:00
Kaleb S. KEITHLEY db4f36a951 ceph 15.2.1, disable ceph-test due to no gmock
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-05-18 07:37:28 -04:00
Kaleb S. KEITHLEY 0654a1fdc4 ceph-15.2.1 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-04-10 08:33:14 -04:00
Kaleb S. KEITHLEY 1e83c5c029 ceph 15.2.0 GA
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-23 20:51:23 -04:00
Kaleb S. KEITHLEY e4cc93f966 ceph 15.1.1 fmt, rhbz#1805422 again
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-17 13:15:26 -04:00
Kaleb S. KEITHLEY 26fd4ffbc6 ceph 15.1.1 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-16 16:18:07 -04:00
Kaleb S. KEITHLEY d463ff311e ceph 15.1.0, rhbz#1809799
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-10 07:42:37 -04:00
Kaleb S. KEITHLEY ef8dc618c7 ceph 15.1.0, rhbz#1809799
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-09 21:41:53 -04:00
Kaleb S. KEITHLEY fcc245cca3 ceph 15.1.0, rhbz#1809799
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-09 21:29:38 -04:00
Kaleb S. KEITHLEY acfede696d ceph 15.1.0, rhbz#1809799
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-09 17:28:07 -04:00
Kaleb S. KEITHLEY d6834c5aab ceph 15.1.0, rhbz#1809799
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-09 14:33:27 -04:00
Kaleb S. KEITHLEY a09febb7ef ceph 15.1.0, rhbz#1809799
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-03-09 14:17:44 -04:00
Kaleb S. KEITHLEY 9cdcdd7459 ceph 15.1.0, fmt, rhbz#1805422
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-02-20 14:48:40 -05:00
Kaleb S. KEITHLEY 6c126d30be Merge branch 'master' of ssh://pkgs.fedoraproject.org/rpms/ceph 2020-02-19 08:40:56 -05:00
Kaleb S. KEITHLEY 3913155591 Merge branch 'master' of ssh://pkgs.fedoraproject.org/rpms/ceph 2020-02-19 08:40:21 -05:00
Kaleb S. KEITHLEY 648550e64f Merge branch 'master' of ssh://pkgs.fedoraproject.org/rpms/ceph 2020-02-19 05:37:36 -05:00
Kaleb S. KEITHLEY 4deb491174 ceph 15.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-02-19 05:36:53 -05:00
Kaleb S. KEITHLEY d8a9bdfabe ceph 15.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-02-13 16:09:52 -05:00
Kaleb S. KEITHLEY 0d98dedd32 ceph 15.1.0 RC
Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
2020-02-11 13:18:33 -05:00
7 changed files with 1005 additions and 677 deletions
+228
View File
@@ -0,0 +1,228 @@
--- ceph-15.2.4/src/yasm-wrapper.orig 2020-06-30 11:40:51.000000000 -0400
+++ ceph-15.2.4/src/yasm-wrapper 2020-07-20 12:21:34.574980869 -0400
@@ -1,10 +1,11 @@
-#!/bin/sh -e
+#!/bin/sh
# libtool and yasm do not get along.
# filter out any crap that libtool feeds us that yasm does not understand.
#echo $0: got $*
new=""
touch=""
+object=""
while [ -n "$*" ]; do
case "$1" in
-f )
@@ -29,6 +30,12 @@
touch="$1"
shift
;;
+ -o )
+ shift
+ object="$1"
+ new="$new -o $1"
+ shift
+ ;;
* )
new="$new $1"
shift
@@ -36,8 +43,15 @@
esac
done
-#echo $0: yasm $new
-yasm $new
+#echo ${0}: yasm ${new}
+yasm ${new}
+
+echo ${new} | grep -- "crc32c_intel_fast*asm\.s"
+if [ $? -ne 0 ]; then
+ touch /tmp/${object}
+ ld -r -z ibt -z shstk -z noexecstack -o ${object}.tmp ${object}
+ mv ${object}.tmp ${object}
+fi
[ -n "$touch" ] && touch $touch
--- ceph-15.2.2/src/common/crc32c_intel_fast_asm.s.orig 2020-05-26 08:34:32.226201974 -0400
+++ ceph-15.2.2/src/common/crc32c_intel_fast_asm.s 2020-05-26 17:19:20.327201974 -0400
@@ -1,5 +1,5 @@
;
-; Copyright 2012-2013 Intel Corporation All Rights Reserved.
+; Copyright 2012-2015 Intel Corporation All Rights Reserved.
; All rights reserved.
;
; http://opensource.org/licenses/BSD-3-Clause
@@ -59,16 +59,34 @@
xor rbx, rbx ;; rbx = crc1 = 0;
xor r10, r10 ;; r10 = crc2 = 0;
+ cmp len, %%bSize*3*2
+ jbe %%non_prefetch
+
%assign i 0
%rep %%bSize/8 - 1
- crc32 rax, [bufptmp+i + 0*%%bSize] ;; update crc0
- crc32 rbx, [bufptmp+i + 1*%%bSize] ;; update crc1
- crc32 r10, [bufptmp+i + 2*%%bSize] ;; update crc2
+ %if i < %%bSize*3/4
+ prefetchnta [bufptmp+ %%bSize*3 + i*4]
+ %endif
+ crc32 rax, qword [bufptmp+i + 0*%%bSize] ;; update crc0
+ crc32 rbx, qword [bufptmp+i + 1*%%bSize] ;; update crc1
+ crc32 r10, qword [bufptmp+i + 2*%%bSize] ;; update crc2
%assign i (i+8)
%endrep
- crc32 rax, [bufptmp+i + 0*%%bSize] ;; update crc0
- crc32 rbx, [bufptmp+i + 1*%%bSize] ;; update crc1
-; SKIP ;crc32 r10, [bufptmp+i + 2*%%bSize] ;; update crc2
+ jmp %%next %+ %1
+
+%%non_prefetch:
+ %assign i 0
+ %rep %%bSize/8 - 1
+ crc32 rax, qword [bufptmp+i + 0*%%bSize] ;; update crc0
+ crc32 rbx, qword [bufptmp+i + 1*%%bSize] ;; update crc1
+ crc32 r10, qword [bufptmp+i + 2*%%bSize] ;; update crc2
+ %assign i (i+8)
+ %endrep
+
+%%next %+ %1:
+ crc32 rax, qword [bufptmp+i + 0*%%bSize] ;; update crc0
+ crc32 rbx, qword [bufptmp+i + 1*%%bSize] ;; update crc1
+; SKIP ;crc32 r10, qword [bufptmp+i + 2*%%bSize] ;; update crc2
; merge in crc0
movzx bufp_dw, al
@@ -180,12 +198,15 @@
%define crc_init_dw r8d
%endif
-
+ endbranch
push rdi
push rbx
mov rax, crc_init ;; rax = crc_init;
+ cmp len, 8
+ jb less_than_8
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 1) ALIGN: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -195,9 +216,6 @@
;; amount of the address
je proc_block ;; Skip if aligned
- cmp len, 8
- jb less_than_8
-
;;;; Calculate CRC of unaligned bytes of the buffer (if any) ;;;;
mov rbx, [bufptmp] ;; load a quadword from the buffer
add bufptmp, bufp ;; align buffer pointer for
@@ -233,7 +251,7 @@
jnc bit7 ;; jump to bit-6 if bit-7 == 0
%assign i 0
%rep 16
- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data
+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data
%assign i (i+8)
%endrep
je do_return ;; return if remaining data is zero
@@ -244,7 +262,7 @@
jnc bit6 ;; jump to bit-6 if bit-7 == 0
%assign i 0
%rep 8
- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data
+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data
%assign i (i+8)
%endrep
je do_return ;; return if remaining data is zero
@@ -254,7 +272,7 @@
jnc bit5 ;; jump to bit-5 if bit-6 == 0
%assign i 0
%rep 4
- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data
+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data
%assign i (i+8)
%endrep
je do_return ;; return if remaining data is zero
@@ -264,7 +282,7 @@
jnc bit4 ;; jump to bit-4 if bit-5 == 0
%assign i 0
%rep 2
- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data
+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data
%assign i (i+8)
%endrep
je do_return ;; return if remaining data is zero
@@ -272,11 +290,11 @@
bit4:
shl len_b, 1 ;; shift-out MSB (bit-4)
jnc bit3 ;; jump to bit-3 if bit-4 == 0
- crc32 rax, [bufptmp] ;; compute crc32 of 8-byte data
+ crc32 rax, qword [bufptmp] ;; compute crc32 of 8-byte data
je do_return ;; return if remaining data is zero
add bufptmp, 8 ;; buf +=8; (next 8 bytes)
bit3:
- mov rbx, [bufptmp] ;; load a 8-bytes from the buffer:
+ mov rbx, qword [bufptmp] ;; load a 8-bytes from the buffer:
shl len_b, 1 ;; shift-out MSB (bit-3)
jnc bit2 ;; jump to bit-2 if bit-3 == 0
crc32 eax, ebx ;; compute crc32 of 4-byte data
--- ceph-15.2.2/src/common/crc32c_intel_fast_zero_asm.s.orig 2020-05-26 08:34:32.226201974 -0400
+++ ceph-15.2.2/src/common/crc32c_intel_fast_zero_asm.s 2020-05-26 17:19:32.497201974 -0400
@@ -1,5 +1,5 @@
;
-; Copyright 2012-2013 Intel Corporation All Rights Reserved.
+; Copyright 2012-2015 Intel Corporation All Rights Reserved.
; All rights reserved.
;
; http://opensource.org/licenses/BSD-3-Clause
@@ -59,6 +59,19 @@
xor rbx, rbx ;; rbx = crc1 = 0;
xor r10, r10 ;; r10 = crc2 = 0;
+ cmp len, %%bSize*3*2
+ jbe %%non_prefetch
+
+ %assign i 0
+ %rep %%bSize/8 - 1
+ crc32 rax, bufptmp ;; update crc0
+ crc32 rbx, bufptmp ;; update crc1
+ crc32 r10, bufptmp ;; update crc2
+ %assign i (i+8)
+ %endrep
+ jmp %%next %+ %1
+
+%%non_prefetch:
%assign i 0
%rep %%bSize/8 - 1
crc32 rax, bufptmp ;; update crc0
@@ -66,6 +79,8 @@
crc32 r10, bufptmp ;; update crc2
%assign i (i+8)
%endrep
+
+%%next %+ %1:
crc32 rax, bufptmp ;; update crc0
crc32 rbx, bufptmp ;; update crc1
; SKIP ;crc32 r10, bufptmp ;; update crc2
@@ -180,12 +195,15 @@
%define crc_init_dw r8d
%endif
-
+ endbranch
push rdi
push rbx
mov rax, crc_init ;; rax = crc_init;
+ cmp len, 8
+ jb less_than_8
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 1) ALIGN: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+16 -8
View File
@@ -1,13 +1,21 @@
--- ceph-14.2.6/src/common/bit_str.h.orig 2020-01-24 11:37:20.547679336 -0500
+++ ceph-14.2.6/src/common/bit_str.h 2020-01-24 11:37:55.351904895 -0500
@@ -14,7 +14,10 @@
#ifndef CEPH_COMMON_BIT_STR_H
#define CEPH_COMMON_BIT_STR_H
+#include <cstdint>
+#include <iosfwd>
--- ceph-15.1.0/src/common/bit_str.h.orig 2020-02-03 09:47:20.047149798 -0500
+++ ceph-15.1.0/src/common/bit_str.h 2020-02-03 09:47:50.213149798 -0500
@@ -17,6 +17,7 @@
#include <cstdint>
#include <iosfwd>
#include <functional>
+#include <ostream>
namespace ceph {
class Formatter;
--- ceph-15.2.4/src/global/signal_handler.h.orig 2020-07-17 12:57:54.763628429 -0400
+++ ceph-15.2.4/src/global/signal_handler.h 2020-07-17 12:58:10.610628429 -0400
@@ -16,6 +16,8 @@
#define CEPH_GLOBAL_SIGNAL_HANDLER_H
#include <signal.h>
+#include <string>
+
#include "acconfig.h"
typedef void (*signal_handler_t)(int);
-10
View File
@@ -1,10 +0,0 @@
--- ceph-14.2.6/src/librbd/api/PoolMetadata.h.orig 2020-01-24 12:39:23.738816885 -0500
+++ ceph-14.2.6/src/librbd/api/PoolMetadata.h 2020-01-24 12:39:36.522902386 -0500
@@ -8,6 +8,7 @@
#include "include/rados/librados_fwd.hpp"
#include <map>
+#include <string>
namespace librbd {
@@ -1,135 +0,0 @@
From 8db2a44c9438749be98d41fb309f10d5084805df Mon Sep 17 00:00:00 2001
From: Jeff Layton <jlayton@redhat.com>
Date: Fri, 17 Jan 2020 07:48:12 -0500
Subject: [PATCH] mount.ceph: remove arbitrary limit on size of name= option
Aaron was getting back -ERANGE errors when trying to mount using
a long name= option. The issue is that the destination buffer for the
"key=" string is not big enough to hold long names.
When I overhauled the mount.ceph code recently, I made this buffer much
smaller than before figuring that it didn't need to be any larger than
the length of "secret=<base64 encoded key>".
In the case where the secret is set in the keyring though, this buffer
needs to be able to hold a string like "key=client.<cephx name>". The
cephx name can be of arbitrary length, however.
Rework the code to just safe_cat the strings directly into the options
buffer, eliminating an extra copy and the need for an arbitrary limit.
This also allows us to remove get_secret_option() from the the common
code as well.
Fixes: https://tracker.ceph.com/issues/43649
Reported-by: Aaron <aarongmldt@gmail.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
---
src/common/secret.h | 7 ------
src/mount/mount.ceph.c | 45 ++++++++++++++++++++++++-------------
src/mount/mount.ceph.h | 3 ---
4 files changed, 30 insertions(+), 75 deletions(-)
diff --git a/src/common/secret.h b/src/common/secret.h
index b681fa1ec7..5d2ad179dd 100644
--- a/src/common/secret.h
+++ b/src/common/secret.h
@@ -7,13 +7,6 @@ extern "C" {
int read_secret_from_file(const char *filename, char *secret, size_t max_len);
-/*
- * Attempts to add the secret to the kernel, but falls back to
- * the old secret= option if the kernel is too old.
- */
-int get_secret_option(const char *secret, const char *key_name,
- char *secret_option, size_t secret_option_len);
-
int set_kernel_secret(const char *secret, const char *key_name);
int is_kernel_secret(const char *key_name);
diff --git a/src/mount/mount.ceph.c b/src/mount/mount.ceph.c
index e970648c59..133bc554f5 100644
--- a/src/mount/mount.ceph.c
+++ b/src/mount/mount.ceph.c
@@ -425,24 +425,39 @@ static void ceph_mount_info_free(struct ceph_mount_info *cmi)
free(cmi->cmi_conf);
}
-static int finalize_options(struct ceph_mount_info *cmi)
+static int append_key_or_secret_option(struct ceph_mount_info *cmi)
{
- int pos;
+ int pos = strlen(cmi->cmi_opts);
- if (cmi->cmi_secret[0] || is_kernel_secret(cmi->cmi_name)) {
- int ret;
- char secret_option[SECRET_OPTION_BUFSIZE];
+ if (!cmi->cmi_secret[0] && !is_kernel_secret(cmi->cmi_name))
+ return 0;
- ret = get_secret_option(cmi->cmi_secret, cmi->cmi_name,
- secret_option, sizeof(secret_option));
- if (ret < 0)
+ if (pos)
+ pos = safe_cat(&cmi->cmi_opts, &cmi->cmi_opts_len, pos, ",");
+
+ /* when parsing kernel options (-o remount) we get '<hidden>' as the secret */
+ if (cmi->cmi_secret[0] && (strcmp(cmi->cmi_secret, "<hidden>") != 0)) {
+ int ret = set_kernel_secret(cmi->cmi_secret, cmi->cmi_name);
+ if (ret < 0) {
+ if (ret == -ENODEV || ret == -ENOSYS) {
+ /* old kernel; fall back to secret= in options */
+ pos = safe_cat(&cmi->cmi_opts,
+ &cmi->cmi_opts_len, pos,
+ "secret=");
+ pos = safe_cat(&cmi->cmi_opts,
+ &cmi->cmi_opts_len, pos,
+ cmi->cmi_secret);
+ return 0;
+ }
+ fprintf(stderr, "adding ceph secret key to kernel failed: %s\n",
+ strerror(-ret));
return ret;
-
- pos = strlen(cmi->cmi_opts);
- if (pos)
- pos = safe_cat(&cmi->cmi_opts, &cmi->cmi_opts_len, pos, ",");
- pos = safe_cat(&cmi->cmi_opts, &cmi->cmi_opts_len, pos, secret_option);
+ }
}
+
+ pos = safe_cat(&cmi->cmi_opts, &cmi->cmi_opts_len, pos, "key=");
+ pos = safe_cat(&cmi->cmi_opts, &cmi->cmi_opts_len, pos, cmi->cmi_name);
+
return 0;
}
@@ -493,9 +508,9 @@ int main(int argc, char *argv[])
/* Ensure the ceph key_type is available */
modprobe();
- retval = finalize_options(&cmi);
+ retval = append_key_or_secret_option(&cmi);
if (retval) {
- fprintf(stderr, "couldn't finalize options: %d\n", retval);
+ fprintf(stderr, "couldn't append secret option: %d\n", retval);
retval = EX_USAGE;
goto out;
}
diff --git a/src/mount/mount.ceph.h b/src/mount/mount.ceph.h
index c563597c43..b61176923d 100644
--- a/src/mount/mount.ceph.h
+++ b/src/mount/mount.ceph.h
@@ -21,9 +21,6 @@ extern "C" {
/* Max Including null terminator */
#define SECRET_BUFSIZE (MAX_SECRET_LEN + 1)
-/* Buffer size for secret= option */
-#define SECRET_OPTION_BUFSIZE (sizeof("secret=") + MAX_SECRET_LEN + 1)
-
/* 2k should be enough for anyone? */
#define MON_LIST_BUFSIZE 2048
--
2.24.1
+747 -523
View File
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,13 @@
diff --git a/cmake/modules/BuildBoost.cmake b/cmake/modules/BuildBoost.cmake
index 2e92132366..3cb1e3d958 100644
--- a/cmake/modules/BuildBoost.cmake
+++ b/cmake/modules/BuildBoost.cmake
@@ -62,7 +62,7 @@ function(do_build_boost version)
else()
list(APPEND boost_features "address-model=32")
endif()
- set(BOOST_CXXFLAGS "-fPIC -w") # check on arm, etc <---XXX
+ set(BOOST_CXXFLAGS "-fPIC -w -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -ftemplate-depth-1024 -fno-new-ttp-matching -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free") # check on arm, etc <---XXX
list(APPEND boost_features "cxxflags=${BOOST_CXXFLAGS}")
set(boost_with_libs)
+1 -1
View File
@@ -1 +1 @@
SHA512 (ceph-14.2.7.tar.gz) = 59f475e56053ba5e7e3a482a3a91b4d44272e6ec8051b92783de76c09c0d967a7ef76676db998968a709e48f08e90828dd8f86bd96a7c3fd111d48bfb7fd93b1
SHA512 (ceph-15.2.15.tar.gz) = e4d929ffda5c3e31767d93340fb97b5d49ca1d5641f6c30134ce5542486fc4f72684aef2ef47cb940a332e8b9144d8cec63ce8a9f86c773dbc0ccebdd8e7fb19