View Issue Details

IDProjectCategoryView StatusLast Update
0001062bareos-core[All Projects] Generalpublic2019-09-03 15:14
ReporterIvanBayanAssigned Toarogge 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformLinuxOSUbuntuOS Version16.04
Product Version18.2.5 
Target VersionFixed in Version 
Summary0001062: Bconsole terminates if client protocol probing occurs
DescriptionWhen I try to get status of older client, bconsole terminates if "Probing client protocol." occurs.
If I repeat status request of same client again or if I request status of modern client, bconsole works fine.
Steps To Reproduce1. Request status of client prior version 18
2. Hit enter or enter ext command
Additional Information*status client=ow-c01-02-fd
Connecting to Client ow-c01-02-fd at ow-c01-02.int:9102
Probing client protocol... (result will be saved until config reload)
 Handshake: Cleartext, Encryption: None

ow-c01-02-fd Version: 17.2.4 (21 Sep 2017) x86_64-redhat-linux-gnu redhat CentOS Linux release 7.4.1708 (Core)
Daemon started 28-Sep-18 12:27. Jobs: run=122 running=0.
 Heap: heap=36,864 smbytes=115,192 max_bytes=383,233 bufs=97 max_bufs=150
 Sizeof: boffset_t=8 size_t=8 debug=0 trace=0 bwlimit=0kB/s

Running Jobs:
mia-backup03-dir (director) connected at: 19-Feb-19 07:45
No Jobs running.
====

Terminated Jobs:
 JobId Level Files Bytes Status Finished Name
======================================================================
 14832 Full 376 1.967 G OK 08-Feb-19 06:43 logs_ow-c01-02-job
 ...
 15178 Full 393 1.878 G OK 19-Feb-19 06:48 logs_ow-c01-02-job
====
*time
user@mia-backup03:~$
Tagsbconsole, broken
bareos-master: impactyes
bareos-master: actionfixed
bareos-18.2: impactyes
bareos-18.2: actionfixed
bareos-17.2: impactno
bareos-17.2: action
bareos-16.2: impactno
bareos-16.2: action
bareos-15.2: impact
bareos-15.2: action
bareos-14.2: impact
bareos-14.2: action
bareos-13.2: impact
bareos-13.2: action
bareos-12.4: impact
bareos-12.4: action

Activities

vitalii.s

vitalii.s

2019-02-20 08:57

reporter   ~0003271

The same issue:

*st client=pserver10-fd
Connecting to Client pserver10-fd at pserver10.internal:9102
Probing client protocol... (result will be saved until config reload)
 Handshake: Cleartext, Encryption: None

pserver10.internal-fd Version: 17.2.4 (21 Sep 2017) x86_64-redhat-linux-gnu redhat CentOS release 6.9 (Final)
Daemon started 14-Feb-19 02:06. Jobs: run=18 running=0.
 Heap: heap=40,960 smbytes=41,410 max_bytes=2,216,997 bufs=89 max_bufs=262
 Sizeof: boffset_t=8 size_t=8 debug=0 trace=0 bwlimit=0kB/s

Running Jobs:
bareos-dir (director) connected at: 20-Feb-19 15:52
No Jobs running.
====

Terminated Jobs:
 JobId Level Files Bytes Status Finished Name
======================================================================
1555343 Incr 55,777 1.218 G OK 19-Feb-19 19:13 pserver10-fs
1555576 Full 1,304 1.690 G OK 19-Feb-19 22:32 pserver10-mysql
1555628 Incr 49,292 590.6 M OK 19-Feb-19 23:15 pserver10-fs-mini
====
*time
root@backupserver3:/etc#
arogge

arogge

2019-07-04 16:08

developer   ~0003414

Can you try to reproduce the issue with out nightly build packages from https://download.bareos.org/bareos/experimental/nightly/
Thank you!
arogge

arogge

2019-09-03 15:13

developer   ~0003569

This has been fixed in
https://github.com/bareos/bareos/pull/234
https://github.com/bareos/bareos/pull/232

Related Changesets

bareos: master cf3e1064

2019-07-19 11:05:54

arogge

Ported: N/A

Details Diff
core: empty openssl error queue on SSL_shutdown()

If during or before SSL_shutdown() errors occured that were saved in the
thread-local openssl error queue, these were not read and thus retained
on the queue until another tls session read them.
This lead to bogus error detection. Now we simply clear all errors from
the queue after we're done with our openssl context, so the errors do
not "leak" into another context anymore.
Affected Issues
0001062
mod - core/src/lib/tls_openssl.cc Diff File

bareos: bareos-18.2 449d3380

2019-07-19 11:05:54

arogge

Ported: N/A

Details Diff
core: empty openssl error queue on SSL_shutdown()

If during or before SSL_shutdown() errors occured that were saved in the
thread-local openssl error queue, these were not read and thus retained
on the queue until another tls session read them.
This lead to bogus error detection. Now we simply clear all errors from
the queue after we're done with our openssl context, so the errors do
not "leak" into another context anymore.

(cherry picked from commit cf3e1064f495b0592e0202edb2cec7e358c5b378)
Affected Issues
0001062
mod - core/src/lib/tls_openssl.cc Diff File

Issue History

Date Modified Username Field Change
2019-02-19 08:48 IvanBayan New Issue
2019-02-19 08:48 IvanBayan Tag Attached: broken
2019-02-19 08:49 IvanBayan Tag Attached: bconsole
2019-02-20 08:57 vitalii.s Note Added: 0003271
2019-07-04 16:08 arogge Assigned To => arogge
2019-07-04 16:08 arogge Status new => feedback
2019-07-04 16:08 arogge Note Added: 0003414
2019-07-09 07:58 arogge Assigned To arogge =>
2019-09-03 15:13 arogge Assigned To => arogge
2019-09-03 15:13 arogge Status feedback => resolved
2019-09-03 15:13 arogge Resolution open => fixed
2019-09-03 15:13 arogge bareos-master: impact => yes
2019-09-03 15:13 arogge bareos-master: action => fixed
2019-09-03 15:13 arogge bareos-18.2: impact => yes
2019-09-03 15:13 arogge bareos-18.2: action => fixed
2019-09-03 15:13 arogge bareos-17.2: impact => no
2019-09-03 15:13 arogge bareos-16.2: impact => no
2019-09-03 15:13 arogge Note Added: 0003569
2019-09-03 15:14 arogge Changeset attached => bareos bareos-18.2 449d3380
2019-09-03 15:14 arogge Changeset attached => bareos master cf3e1064