Direct links to fixes
7.1.5.000-TIV-TSMSRV-AIX
7.1.5.000-TIV-TSMSRV-HP-UX
7.1.5.000-TIV-TSMSRV-Linuxppc64
7.1.5.000-TIV-TSMSRV-Linuxs390x
7.1.5.000-TIV-TSMSRV-Linuxx86_64
7.1.5.000-TIV-TSMSRV-SolarisSPARC
7.1.5.000-TIV-TSMSRV-WIN
6.3.6.000-TIV-TSMALL-Linuxx86_64
6.3.6.000-TIV-TSMALL-Linuxs390x
6.3.6.000-TIV-TSMALL-AIX
6.3.6.000-TIV-TSMALL-Linuxppc64
6.3.6.000-TIV-TSMALL-HP-UX
6.3.6.000-TIV-TSMSTA-WindowsI32
6.3.6.000-TIV-TSMALL-WindowsX64
6.3.6.000-TIV-TSMALL-SolarisSPARC
6.3.6.000-TIV-TSMAC-AIX
6.3.6.000-TIV-TSMAC-Linuxs390x
6.3.6.000-TIV-TSMAC-Linuxx86
6.3.6.000-TIV-TSMAC-SolarisSPARC
6.3.6.000-TIV-TSMAC-WindowsI32
6.3.6.000-TIV-TSMAC-WindowsX64
6.3.6.000-TIV-TSMRPT-WindowsX64
6.3.6.000-TIV-TSMRPT-WindowsI32
6.3.6.000-TIV-TSMRPT-Linuxx86_64
6.3.6.000-TIV-TSMRPT-Linuxx86
6.3.6.000-TIV-TSMRPT-AGENT-Windows
6.3.6.000-TIV-TSMRPT-AIX
6.3.6.000-TIV-TSMRPT-AGENT-AIX
6.3.6.000-TIV-TSMRPT-AGENT-Linux
IBM Spectrum Protect Server V7.1 Fix Pack 5 (7.1.5.000) Downloads
IBM Tivoli Storage Manager V6.3 Fix Pack 6 (6.3.6.000) Server Downloads
APAR status
Closed as program error.
Error description
If SEARCH=NO and CHECKLABEL=NO parameters are used with CHECKIN LIBVOLUME command and the VOLUME_NAME parameter exceeds expected length, server may crash. For example: 11/25/2015 11:16:34,"ANR2017I Administrator ADMIN issued command: CHECKIN LIBVOLUME LIB1 A00001L4,A00002L4,A00003L4,A00004L4,A00005L4,A00006L4,A00007L4,A 00008L4,A00009L4,A00010L4 CHECKLABEL=NO STATUS=PRIVATE OWNER=TSM (SESSION: 574868)" In this case an incorrect usage of the CHECKIN command, passing a list of volumes instead of expected single volume as a VOLUME_NAME parameter, resulted in server crash. The call stack will look similar to following: PRIMARY_PROBLEM_CLASS: STACK_BUFFER_OVERRUN STACK_TEXT: adsmdll!__report_securityfailure+0x1c adsmdll!__report_rangecheckfailure+0xe adsmdll!ScsiWriteLibInventory+0x3c5 adsmdll!MmsLtsWriteLibInventory+0x8d adsmdll!MmsWriteLibInventory+0x235 adsmdll!pvrWriteLibInventory+0x9 adsmdll!ssWriteDevconfig+0x497 adsmdll!ssRefreshDevconfigFiles+0x68 adsmdll!MmsRefreshDevconfigFile+0x6c adsmdll!CheckinThread+0x43 adsmdll!startThread+0x171 msvcr120!_callthreadstartex+0x17 msvcr120!_threadstartex+0x102 kernel32!BaseThreadInitThunk+0xd ntdll!RtlUserThreadStart+0x1d The server trace NA PVR MMS DB DBDBG DBSTMT will look similar to the following: 19:34:51.944 [190][tbcli.c][10858][TraceSetInputParameters]:Handle 60:2, OpInsert operation on table Libvolumest, numkeys=2. 19:34:51.944 [190][tbcli.c][10871][TraceSetInputParameters]:key=0, name=LIBRARY_NAME, type=STRING, value=LIB1 19:34:51.945 [190][tbcli.c][10871][TraceSetInputParameters]:key=1, name=VOLUME_NAME, type=STRING, value=A00001L4,A00002L4,A00003L4,A00004L4,A00005L4,A00006L4,A000 07L4,A0Private.........TSM 19:34:51.945 [190][tbcli.c][10871][TraceSetInputParameters]:col=2, name=STATUS, type=STRING, value=Private 19:34:51.945 [190][tbcli.c][10871][TraceSetInputParameters]:col=3, name=OWNER, type=STRING, value=TSM 19:34:51.946 [190][tbcli.c][10871][TraceSetInputParameters]:col=4, name=LAST_USE, type=STRING, value=NULL 19:34:51.946 [190][tbcli.c][10871][TraceSetInputParameters]:col=5, name=HOME_ELEMENT, type=INT32, value=2219 19:34:51.946 [190][tbcli.c][10871][TraceSetInputParameters]:col=6, name=DEVTYPE, type=STRING, value=LTO 19:34:51.947 [190][tbcli.c][10871][TraceSetInputParameters]:col=7, name=CLEANINGS_LEFT, type=INT32, value=NULL 19:34:51.947 [190][tbcli.c][10871][TraceSetInputParameters]:col=8, name=MEDIATYPE, type=STRING, value=LTO-4 19:34:51.947 [190][tbcli.c][5731][RdbBindParamsForStmt]:Entry for OpInsert, using stmtHandle 60:2. 19:34:51.975 [190][tbcli.c][4683][RdbPrepareAndExecuteStmt]:Executing statement 'INSERT INTO "TSMDB1"."LIBVOLUMEST" (LIBRARY_NAME,VOLUME_NAME,STATUS,OWNER,LAST_USE,HOME_ELEMENT,DEV TYPE,CLEANINGS_LEFT,MEDIATYPE) VALUES(?,?,?,?,?,?,?,?,?) --190' submitted from admsql.c(5808). 19:34:51.976 [190][dbieval.c][630][DbiEvalSQLOutcomeX]:admsql.c(5808) requesting stmtEval with sqlRc -1 for handle 60:2. 19:34:51.977 [190][dbieval.c][677][DbiEvalSQLOutcomeX]:SQLSTATE 22001, SQLCODE -99999, SQLMsg=[IBM][CLI Driver] CLI0109E String data right truncation. SQLSTATE=22001. 19:34:51.982 [190][output.c][7644][PutConsoleMsg]:ANR0102E admsql.c(5811): Error 2332 inserting row in table "Libvolumest".~ 19:35:01.570 [182][mmsscsi.c][5327][ScsiWriteLibInventory]:Writing SCSI libary inventory; lib=LIB1. The DB2 error CLI0109E (string data right truncation) error during insert attempt into LIBVOLUMEST table and the stack trace with primary problem class STACK_BUFFER_OVERRUN indicate a buffer overflow. If SEARCH=NO and CHECKLABEL=NO parameters are used, the verification of the label or the barcode with a tape library is omitted and server trusts that user input for VOLUME_NAME parameter is correct. In addition the insert is partially successful, resulting in incorrect database table entry. TSM Versions Affected: Tivoli Storage Manager server on all platforms. Initial Impact: Low Additional Keywords: TSM; server; crash; checkin libvolume; ScsiWriteLibInventory; CLI0109E; Error 2332; Libvolumest; DCF 1972926
Local fix
If SEARCH=NO and CHECKLABEL=NO parameters are used with CHECKIN LIBVOLUME command, make sure only single volume name is specified as an input parameter and verify that the volume name is valid. Contact IBM support to obtain step to delete incorrect database table entry.
Problem summary
**************************************************************** * USERS AFFECTED: * * All Tivoli Storage Manager server users. * **************************************************************** * PROBLEM DESCRIPTION: * * See ERROR DESCRIPTION * **************************************************************** * RECOMMENDATION: * * Apply fixing level when available. This problem is currently * * projected to be fixed in levels 6.3.6 and 7.1.5. Note that * * this is subject to change at the discretion of IBM. * ****************************************************************
Problem conclusion
This problem was fixed. Affected platforms: AIX, HP-UX, Linux, Solaris, and Windows
Temporary fix
Comments
APAR Information
APAR number
IT12671
Reported component name
TSM SERVER
Reported component ID
5698ISMSV
Reported release
71W
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2015-12-15
Closed date
2016-02-05
Last modified date
2016-02-05
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
TSM SERVER
Fixed component ID
5698ISMSV
Applicable component levels
Document Information
Modified date:
28 August 2023