├── BUILDING.linux ├── BUILDING.macosx ├── COPYING.LIB ├── README └── ltfs ├── Makefile.am ├── Makefile.in ├── aclocal.m4 ├── assemble-framework.sh ├── build-aux ├── compile ├── config.guess ├── config.sub ├── depcomp ├── install-sh ├── ltmain.sh └── missing ├── build_package_linux.sh ├── build_package_osx.sh ├── conf ├── Makefile.am ├── Makefile.in ├── Makefile.osx ├── ltfs.conf.linux ├── ltfs.conf.local ├── ltfs.conf.osx └── ltfs.conf.windows ├── config.h.in ├── configure ├── configure.ac ├── configure.ac_Windows ├── doc ├── BUILDING.linux ├── BUILDING.macosx ├── BUILDING.windows ├── CODING_STYLE ├── COPYING.LIB ├── INSTALLING.linux ├── INSTALLING.macosx ├── NOTICES.txt ├── README ├── README.windows ├── ltfs.conf.example └── ltfs.conf.local.example ├── init.d ├── Makefile.am ├── Makefile.in └── ltfs ├── ltfs.spec ├── messages ├── Makefile.am ├── Makefile.am_Windows ├── Makefile.in ├── Makefile.osx ├── bin_libltfs │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── bin_ltfs │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── bin_ltfsck │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── bin_mkltfs │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── driver_generic_file │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── driver_linux_ibmtape │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── driver_ltotape │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── driver_osx_iokit │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── internal_error │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── iosched_fcfs │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── iosched_unified │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── kmi_flatfile │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── kmi_simple │ ├── en.txt │ ├── en_US.txt │ └── root.txt ├── libltfs │ ├── en.txt │ ├── en_US.txt │ └── root.txt └── make_message_src.sh ├── osx_installer ├── LTFS.pmdoc │ ├── 01ltfs-contents.xml │ ├── 01ltfs.xml │ └── index.xml ├── LTFS_Installer_Introduction.html ├── LTFS_Installer_License.txt ├── LTFSicon.jpg └── post_install.sh └── src ├── Doxyfile ├── MSG00001.bin ├── Makefile.am ├── Makefile.am_Windows ├── Makefile.in ├── Makefile.osx ├── iosched ├── Makefile.am ├── Makefile.am_Windows ├── Makefile.in ├── cache_manager.c ├── cache_manager.h ├── fcfs.c └── unified.c ├── kmi ├── Makefile.am ├── Makefile.am_Windows ├── Makefile.in ├── flatfile.c ├── key_format_ltfs.c ├── key_format_ltfs.h └── simple.c ├── libltfs ├── LTFS-MIB.txt ├── LtfsSnmpTrapDef.txt ├── Makefile.am ├── Makefile.am_Windows ├── Makefile.in ├── arch │ ├── arch_info.c │ ├── arch_info.h │ ├── errormap.c │ ├── errormap.h │ ├── filename_handling.c │ ├── filename_handling.h │ ├── osx │ │ ├── osx_string.c │ │ └── osx_string.h │ ├── signal_internal.h │ ├── time_internal.c │ ├── time_internal.h │ ├── uuid_internal.c │ ├── uuid_internal.h │ ├── version.h │ └── win │ │ ├── Makefile.am │ │ ├── win_util.c │ │ ├── win_util.h │ │ ├── winlog.c │ │ └── winlog.h ├── base64.c ├── base64.h ├── config_file.c ├── config_file.h ├── dcache.c ├── dcache.h ├── dcache_ops.h ├── fs.c ├── fs.h ├── index_criteria.c ├── index_criteria.h ├── iosched.c ├── iosched.h ├── iosched_ops.h ├── kmi.c ├── kmi.h ├── kmi_ops.h ├── label.c ├── label.h ├── ltfs.c ├── ltfs.h ├── ltfs_endian.h ├── ltfs_error.h ├── ltfs_fsops.c ├── ltfs_fsops.h ├── ltfs_fsops_raw.c ├── ltfs_fsops_raw.h ├── ltfs_fuse_version.h ├── ltfs_internal.c ├── ltfs_internal.h ├── ltfs_locking.h ├── ltfs_thread.c ├── ltfs_thread.h ├── ltfs_types.h ├── ltfslogging.c ├── ltfslogging.h ├── ltfssnmp.c ├── ltfssnmp.h ├── ltfstrace.c ├── ltfstrace.h ├── pathname.c ├── pathname.h ├── periodic_sync.c ├── periodic_sync.h ├── plugin.c ├── plugin.h ├── queue.h ├── tape.c ├── tape.h ├── tape_ops.h ├── uthash.h ├── uthash_ext.h ├── xattr.c ├── xattr.h ├── xml.h ├── xml_common.c ├── xml_libltfs.h ├── xml_reader.c ├── xml_reader_libltfs.c ├── xml_writer.c └── xml_writer_libltfs.c ├── ltfs_copyright.h ├── ltfs_fuse.c ├── ltfs_fuse.h ├── ltfs_msgs.h ├── ltfs_msgs.mc ├── ltfs_msgs.rc ├── ltfsprintf.h ├── main.c ├── tape_drivers ├── crc32c_crc.c ├── crc32c_crc.h ├── generic │ ├── file │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ └── filedebug_tc.c │ └── itdtimg │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ └── itdtimg_tc.c ├── linux │ ├── ibmtape │ │ ├── IBM_tape.h │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── ibmtape_cmn.c │ │ ├── ibmtape_cmn.h │ │ ├── ibmtape_tc.c │ │ └── ibmtape_timeout.h │ └── ltotape │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── ltotape.c │ │ ├── ltotape.h │ │ ├── ltotape_diag.c │ │ ├── ltotape_diag.h │ │ ├── ltotape_platform.c │ │ ├── ltotape_supdevs.h │ │ └── ltotape_timeout.h ├── osx │ ├── iokit │ │ ├── device_identifiers.h │ │ ├── iokit_common.c │ │ ├── iokit_common.h │ │ ├── iokit_scsi_base.c │ │ ├── iokit_scsi_base.h │ │ ├── iokit_scsi_operations.c │ │ ├── iokit_scsi_operations.h │ │ ├── iokit_singledrive.c │ │ ├── iokit_singledrive.h │ │ ├── scsi_command_blocks.h │ │ ├── scsi_command_operation_codes.h │ │ ├── scsi_mode_pages.h │ │ └── tape_timeout.h │ └── ltotape │ │ ├── ltotape.c │ │ ├── ltotape.h │ │ ├── ltotape_diag.c │ │ ├── ltotape_diag.h │ │ ├── ltotape_platform.c │ │ ├── ltotape_supdevs.h │ │ └── ltotape_timeout.h ├── reed_solomon_crc.c ├── reed_solomon_crc.h ├── tape_drivers.h └── windows │ └── ltotape │ ├── Makefile │ ├── Makefile.am │ ├── Makefile.in │ ├── ltotape.c │ ├── ltotape.h │ ├── ltotape_diag.c │ ├── ltotape_diag.h │ ├── ltotape_platform.c │ ├── ltotape_supdevs.h │ ├── ltotape_timeout.h │ └── ntddscsi.h └── utils ├── Makefile.am ├── Makefile.am_Windows ├── Makefile.in ├── expand_dcache.sh ├── ltfsck.c ├── mkltfs.c └── unltfs.c /BUILDING.linux: -------------------------------------------------------------------------------- 1 | ======================================================================= 2 | HPE StoreOpen Software (HPE-SOS) - Version 3.4.2 3 | ======================================================================= 4 | 5 | Files in this download contain Licensed Materials, property of HPE, 6 | (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP 7 | 8 | Files in this download also contain Licensed Materials, property of IBM, 9 | (C) Copyright IBM Corp. 2010, 2014 10 | 11 | See the Licensing agreement (COPYING.LIB) when LTFS is downloaded. 12 | 13 | The LTFS software application is an open-source tape file system 14 | implemented on dual partition tape drives. 15 | 16 | Further details on HPE's LTFS implementation can be found at 17 | www.hpe.com/storage/storeopen 18 | 19 | ======================================================================= 20 | Building HPE-SOS from source code 21 | ======================================================================= 22 | 23 | 1. Unpack the archive source file to a suitable location, for example 24 | /usr/local/src/ : 25 | 26 | $ gunzip HPE-SOS_SOURCE.tar.gz 27 | $ tar xf HPE-SOS_SOURCE.tar 28 | 29 | 2. Required Software packages - HPE StoreOpen Software 3.4.2 requires the 30 | following software packages on Linux. Make sure that these packages 31 | are installed on the target computer. 32 | 33 | 1. libicu 50.1.2 34 | 2. libicu-devel 50.1.2 35 | 3. fuse 2.8.5 or higher (kernel and shared library modules) 36 | 4. fuse-libs 2.8.5 or higher 37 | 5. libxml2-2.7.6 38 | 6. e2fsprogs 1.41 39 | 40 | For example: 41 | $ rpm -q icu libicu-devel fuse fuse-libs fuse-devel 42 | 43 | icu-50.1.2 44 | libicu-devel-50.1.2 45 | fuse-2.8.5-1 46 | fuse-libs-2.8.5-1 47 | fuse-devel-2.8.5-1 48 | 49 | If any of the packages are not installed, then you must add them 50 | from the installation DVD or other repository. 51 | 52 | Note that further packages may need to be installed, depending on your 53 | current system configuration. These may include uuid (part of the 54 | e2fsprogs package) and libxml2. 55 | 56 | 3. Run the configure script 57 | $ cd hpe-sos_3.4.2 58 | $ ./configure 59 | 60 | This will check for various dependencies; you must correct any problems 61 | before you can proceed. 62 | 63 | 4. Build the package 64 | $ make 65 | 66 | 5. Copy the compiled files to the correct locations 67 | $ make install 68 | 69 | The executables (ltfs, mkltfs, ltfsck) are placed in /usr/local/bin/ 70 | The supporting dynamic files are placed under /usr/local/lib/ 71 | 72 | 6. On some systems it may be necessary to tell the linker/loader how to 73 | locate the required dynamic library files. There are several ways 74 | of doing this: 75 | a) Add /usr/local/lib/ to the environment variable LD_LIBRARY_PATH 76 | or 77 | b) (As root) Add /usr/local/lib/ to the file /etc/ld.so.conf, and 78 | then execute ldconfig 79 | Refer to the man pages for ld.so and ldconfig for further details. 80 | 81 | 7. That's it! Refer to the README file for details of how to use LTFS. 82 | 83 | -------------------------------------------------------------------------------- /BUILDING.macosx: -------------------------------------------------------------------------------- 1 | ======================================================================= 2 | HPE StoreOpen Software (HPE-SOS) - Version 3.4.2 3 | ======================================================================= 4 | 5 | Files in this download contain Licensed Materials, property of HPE, 6 | (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 7 | 8 | Files in this download also contain Licensed Materials, property of IBM, 9 | (C) Copyright IBM Corp. 2010, 2014 10 | 11 | See the Licensing agreement (COPYING.LIB) when LTFS is downloaded. 12 | 13 | The LTFS software application is an open-source tape file system 14 | implemented on dual partition tape drives. 15 | 16 | Further details on HPE's LTFS implementation can be found at 17 | www.hpe.com/storage/storeopen 18 | 19 | 20 | ======================================================================= 21 | Building HPE-SOS from source code (Mac OS X) 22 | ======================================================================= 23 | 24 | 1. Unpack the archive source file to a suitable location: 25 | 26 | $ gunzip HPE-SOS_SOURCE.tar.gz 27 | $ tar xf HPE-SOS_SOURCE.tar 28 | 29 | 2. Ensure that the following packages have been installed: 30 | Apple Developer Tools 31 | OSXFUSE (Refer to HPE Data Agile BURA Compatibility Matrix 32 | at www.hpe.com/storage/BURACompatibility 33 | for OSXFUSE version information) 34 | ICU 50.1.2 35 | 36 | 3. Run the LTFS build script: 37 | 38 | $ cd hpe-sos_3.4.2 39 | $ ./build_osx_package.sh 40 | 41 | If no errors are reported then the build was successful. 42 | 43 | Do not use the configure script or Makefile; these are intended for 44 | use on Linux platforms. The supplied build_osx_package.sh script 45 | performs the steps needed to build on the Mac OS X platform. 46 | 47 | 4. The build process produces an installable package in the directory 48 | hpe-sos_3.4.2/distribution/ 49 | 50 | Open that directory in Finder and select the HPEStoreOpenSoftware.pkg 51 | 52 | The installation files will be copied to the directory 53 | /Library/Frameworks/LTFS.framework/Versions/Current/ 54 | and symbolic links for the executables (mkltfs, ltfs, ltfsck, unltfs) 55 | are created in /usr/local/bin/ 56 | 57 | 5. That's it! Refer to the README file for details of how to use LTFS. 58 | 59 | 6. To uninstall LTFS, you need to delete the symbolic links in 60 | /usr/local/bin/ for the executables (mkltfs, ltfs, ltfsck, unltfs) 61 | and then delete the directory /Library/Frameworks/LTFS.framework 62 | 63 | Execute the command: 64 | pkgutil --forget com.hpe.ltfs 65 | to cause the Package Manager subsystem to remove references to LTFS. 66 | -------------------------------------------------------------------------------- /ltfs/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | ############################################################################### 35 | # 36 | # Copyright (C) 2012 OSR Open Systems Resources, Inc. 37 | # 38 | ############################################################################### 39 | 40 | nobase_pkginclude_HEADERS = config.h 41 | 42 | SUBDIRS = messages src conf init.d 43 | -------------------------------------------------------------------------------- /ltfs/conf/Makefile.am: -------------------------------------------------------------------------------- 1 | dist_sysconf_DATA = ltfs.conf 2 | 3 | ltfs.conf: ltfs.conf.linux 4 | rm -f ltfs.conf 5 | sed -e "s!__LIBDIR__!@libdir@!" ltfs.conf.linux >ltfs.conf 6 | mv ltfs.conf ltfs.conf.tmp 7 | sed -e "s!__DEFAULT_DRIVER__!$(DEFAULT_DRIVER)!" ltfs.conf.tmp >ltfs.conf 8 | mv ltfs.conf ltfs.conf.tmp 9 | sed -e "s!__DEFAULT_IOSCHED__!$(DEFAULT_IOSCHED)!" ltfs.conf.tmp >ltfs.conf 10 | mv ltfs.conf ltfs.conf.tmp 11 | sed -e "s!__DEFAULT_KMI__!$(DEFAULT_KMI)!" ltfs.conf.tmp >ltfs.conf 12 | mv ltfs.conf ltfs.conf.tmp 13 | sed -e "s!__CONFDIR__!@sysconfdir@!" ltfs.conf.tmp >ltfs.conf 14 | rm ltfs.conf.tmp 15 | 16 | install-data-local: 17 | if [ ! -f "$(sysconfdir)/ltfs.conf.local" ]; then \ 18 | cp ltfs.conf.local "$(sysconfdir)/ltfs.conf.local"; \ 19 | fi 20 | 21 | clean-local: 22 | rm -f ltfs.conf 23 | -------------------------------------------------------------------------------- /ltfs/conf/Makefile.osx: -------------------------------------------------------------------------------- 1 | ltfs.conf: ltfs.conf.osx 2 | rm -f ltfs.conf 3 | sed -e "s!__LIBDIR__!$(LIBDIR)!" ltfs.conf.osx >ltfs.conf 4 | mv ltfs.conf ltfs.conf.tmp 5 | sed -e "s!__DEFAULT_DRIVER__!$(DEFAULT_DRIVER)!" ltfs.conf.tmp >ltfs.conf 6 | mv ltfs.conf ltfs.conf.tmp 7 | sed -e "s!__DEFAULT_IOSCHED__!$(DEFAULT_IOSCHED)!" ltfs.conf.tmp >ltfs.conf 8 | mv ltfs.conf ltfs.conf.tmp 9 | sed -e "s!__DEFAULT_KMI__!$(DEFAULT_KMI)!" ltfs.conf.tmp >ltfs.conf 10 | mv ltfs.conf ltfs.conf.tmp 11 | sed -e "s!__CONFDIR__!$(CONFDIR)!" ltfs.conf.tmp >ltfs.conf 12 | rm ltfs.conf.tmp 13 | 14 | clean-local: 15 | rm -f ltfs.conf 16 | -------------------------------------------------------------------------------- /ltfs/conf/ltfs.conf.linux: -------------------------------------------------------------------------------- 1 | # Automatically generated LTFS configuration file for Linux. 2 | # Edit this file to add or remove tape driver plugins and I/O 3 | # schedulers or to change default settings. 4 | # 5 | # To make configuration changes that will persist across software 6 | # updates, edit ltfs.conf.local instead of this file. 7 | 8 | # Tape device plugins 9 | # Syntax: plugin driver PLUGIN-NAME PLUGIN-PATH 10 | # The PLUGIN-PATH may contain spaces. 11 | plugin driver ltotape __LIBDIR__/ltfs/libdriver-ltotape.so 12 | # plugin driver ibmtape __LIBDIR__/ltfs/libdriver-ibmtape.so 13 | # plugin driver file __LIBDIR__/ltfs/libdriver-file.so 14 | # plugin driver itdtimg __LIBDIR__/ltfs/libdriver-itdtimg.so 15 | 16 | # I/O scheduler plugins 17 | # Syntax: plugin iosched PLUGIN-NAME PLUGIN-PATH 18 | # The PLUGIN-PATH may contain spaces. 19 | plugin iosched unified __LIBDIR__/ltfs/libiosched-unified.so 20 | plugin iosched fcfs __LIBDIR__/ltfs/libiosched-fcfs.so 21 | 22 | # Key Manager Interface plugins 23 | # Syntax: plugin kmi PLUGIN-NAME PLUGIN-PATH 24 | # The PLUGIN-PATH may contain spaces. 25 | plugin kmi flatfile __LIBDIR__/ltfs/libkmi-flatfile.so 26 | plugin kmi simple __LIBDIR__/ltfs/libkmi-simple.so 27 | 28 | # Default plugins 29 | # Syntax: default PLUGIN-TYPE PLUGIN-NAME 30 | # The PLUGIN-NAME must be one of those defined using a "driver", "iosched" or "kmi" line. 31 | # For a PLUGIN-TYPE of iosched, the special "none" name may be used to indicate that 32 | # no I/O scheduler should be used by default. 33 | default driver __DEFAULT_DRIVER__ 34 | default iosched __DEFAULT_IOSCHED__ 35 | default kmi __DEFAULT_KMI__ 36 | 37 | # Default mount options 38 | # Syntax: option MODE MOUNT-OPTION 39 | 40 | # Include the local settings file. That file is not overwritten when a newer 41 | # version of LTFS is installed. 42 | include __CONFDIR__/ltfs.conf.local 43 | -------------------------------------------------------------------------------- /ltfs/conf/ltfs.conf.local: -------------------------------------------------------------------------------- 1 | # 2 | # This file is the local configuration file for LTFS 3 | # 4 | # The default LTFS configuration file includes this file. 5 | # Any directives that are placed here will be kept across software updates. 6 | # 7 | # Lines that begin with "##" show default settings. 8 | # Lines that begin with "###" show example settings. 9 | 10 | ################################################################################ 11 | # Configuration example of sync timing 12 | 13 | # Sync the index of a mounted cartridge every 5 minutes. The sync interval for 14 | # this sync type is configured in minutes. 15 | ##option single-drive sync_type=time@5 16 | 17 | # Sync the index of a cartridge when the cartridge is unmounted 18 | ###option single-drive sync_type=unmount 19 | 20 | # Sync the index of a cartridge when a file in the cartridge is closed 21 | ###option single-drive sync_type=close 22 | -------------------------------------------------------------------------------- /ltfs/conf/ltfs.conf.osx: -------------------------------------------------------------------------------- 1 | # Automatically generated LTFS configuration file for Mac OS X. 2 | # Edit this file to add or remove tape driver plugins and I/O 3 | # schedulers or to change default settings. 4 | 5 | # Tape device plugins 6 | # Syntax: plugin driver PLUGIN-NAME PLUGIN-PATH 7 | # The PLUGIN-PATH may contain spaces. 8 | plugin driver ltotape __LIBDIR__/ltfs/libdriver-ltotape.dylib 9 | # plugin driver iokit __LIBDIR__/ltfs/libdriver-iokit.dylib 10 | # plugin driver file __LIBDIR__/ltfs/libdriver-file.dylib 11 | # plugin driver itdtimg __LIBDIR__/ltfs/libdriver-itdtimg.dylib 12 | 13 | # I/O scheduler plugins 14 | # Syntax: plugin iosched PLUGIN-NAME PLUGIN-PATH 15 | # The PLUGIN-PATH may contain spaces. 16 | plugin iosched unified __LIBDIR__/ltfs/libiosched-unified.dylib 17 | plugin iosched fcfs __LIBDIR__/ltfs/libiosched-fcfs.dylib 18 | 19 | # Key Manager Interface plugins 20 | # Syntax: plugin kmi PLUGIN-NAME PLUGIN-PATH 21 | # The PLUGIN-PATH may contain spaces. 22 | plugin kmi flatfile __LIBDIR__/ltfs/libkmi-flatfile.dylib 23 | plugin kmi simple __LIBDIR__/ltfs/libkmi-simple.dylib 24 | 25 | # Default plugins 26 | # Syntax: default PLUGIN-TYPE PLUGIN-NAME 27 | # The PLUGIN-NAME must be one of those defined using a "driver" or "iosched" line. 28 | # For a PLUGIN-TYPE of iosched, the special "none" name may be used to indicate that 29 | # no I/O scheduler should be used by default. 30 | default driver __DEFAULT_DRIVER__ 31 | default iosched __DEFAULT_IOSCHED__ 32 | default kmi __DEFAULT_KMI__ 33 | 34 | # Default mount options 35 | # Syntax: option MODE MOUNT-OPTION 36 | option single-drive -s 37 | 38 | # Include the local settings file. That file is not overwritten when a newer 39 | # version of LTFS is installed. 40 | include __CONFDIR__/ltfs.conf.local 41 | -------------------------------------------------------------------------------- /ltfs/conf/ltfs.conf.windows: -------------------------------------------------------------------------------- 1 | # Automatically generated LTFS configuration file for Windows. 2 | # Edit this file to add or remove tape driver plugins and I/O 3 | # schedulers or to change default settings. 4 | # 5 | # To make configuration changes that will persist across software 6 | # updates, edit ltfs.conf.local instead of this file. 7 | 8 | # Tape device plugins 9 | # Syntax: plugin driver PLUGIN-NAME PLUGIN-PATH 10 | # The PLUGIN-PATH may contain spaces. 11 | plugin driver ltotape_win HPE_Rep_Charlibdriver-ltotape-win.dll 12 | 13 | # I/O scheduler plugins 14 | # Syntax: plugin iosched PLUGIN-NAME PLUGIN-PATH 15 | # The PLUGIN-PATH may contain spaces. 16 | plugin iosched unified HPE_Rep_Charlibiosched-unified.dll 17 | plugin iosched fcfs HPE_Rep_Charlibiosched-fcfs.dll 18 | 19 | # Key Manager Interface plugins 20 | # Syntax: plugin kmi PLUGIN-NAME PLUGIN-PATH 21 | # The PLUGIN-PATH may contain spaces. 22 | # plugin kmi flatfile SYSTEM_FOLDERltfs\libkmi-flatfile.dll 23 | # plugin kmi simple SYSTEM_FOLDERltfs\libkmi-simple.dll 24 | 25 | # Default plugins 26 | # Syntax: default PLUGIN-TYPE PLUGIN-NAME 27 | # The PLUGIN-NAME must be one of those defined using a "driver", "iosched" or "kmi" line. 28 | # For a PLUGIN-TYPE of iosched, the special "none" name may be used to indicate that 29 | # no I/O scheduler should be used by default. 30 | default driver ltotape_win 31 | default iosched unified 32 | default kmi none 33 | 34 | # Default mount options 35 | # Syntax: option MODE MOUNT-OPTION 36 | # option single-drive scsi_append_only_mode=off 37 | 38 | # Include the local settings file. That file is not overwritten when a newer 39 | # version of LTFS is installed. 40 | # include SYSTEM_FOLDERltfs\ltfs.conf.local 41 | -------------------------------------------------------------------------------- /ltfs/doc/BUILDING.linux: -------------------------------------------------------------------------------- 1 | ======================================================================= 2 | HPE StoreOpen Software (HPE-SOS) - Version 3.4.2 3 | ======================================================================= 4 | 5 | Files in this download contain Licensed Materials, property of HPE, 6 | (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP 7 | 8 | Files in this download also contain Licensed Materials, property of IBM, 9 | (C) Copyright IBM Corp. 2010, 2014 10 | 11 | See the Licensing agreement (COPYING.LIB) when LTFS is downloaded. 12 | 13 | The LTFS software application is an open-source tape file system 14 | implemented on dual partition tape drives. 15 | 16 | Further details on HPE's LTFS implementation can be found at 17 | www.hpe.com/storage/storeopen 18 | 19 | ======================================================================= 20 | Building HPE-SOS from source code 21 | ======================================================================= 22 | 23 | 1. Unpack the archive source file to a suitable location, for example 24 | /usr/local/src/ : 25 | 26 | $ gunzip HPE-SOS_SOURCE.tar.gz 27 | $ tar xf HPE-SOS_SOURCE.tar 28 | 29 | 2. Required Software packages - HPE StoreOpen Software 3.4.2 requires the 30 | following software packages on Linux. Make sure that these packages 31 | are installed on the target computer. 32 | 33 | 1. libicu 50.1.2 34 | 2. libicu-devel 50.1.2 35 | 3. fuse 2.8.5 or higher (kernel and shared library modules) 36 | 4. fuse-libs 2.8.5 or higher 37 | 5. libxml2-2.7.6 38 | 6. e2fsprogs 1.41 39 | 40 | For example: 41 | $ rpm -q icu libicu-devel fuse fuse-libs fuse-devel 42 | 43 | icu-50.1.2 44 | libicu-devel-50.1.2 45 | fuse-2.8.5-1 46 | fuse-libs-2.8.5-1 47 | fuse-devel-2.8.5-1 48 | 49 | If any of the packages are not installed, then you must add them 50 | from the installation DVD or other repository. 51 | 52 | Note that further packages may need to be installed, depending on your 53 | current system configuration. These may include uuid (part of the 54 | e2fsprogs package) and libxml2. 55 | 56 | 3. Run the configure script 57 | $ cd hpe-sos_3.4.2 58 | $ ./configure 59 | 60 | This will check for various dependencies; you must correct any problems 61 | before you can proceed. 62 | 63 | 4. Build the package 64 | $ make 65 | 66 | 5. Copy the compiled files to the correct locations 67 | $ make install 68 | 69 | The executables (ltfs, mkltfs, ltfsck) are placed in /usr/local/bin/ 70 | The supporting dynamic files are placed under /usr/local/lib/ 71 | 72 | 6. On some systems it may be necessary to tell the linker/loader how to 73 | locate the required dynamic library files. There are several ways 74 | of doing this: 75 | a) Add /usr/local/lib/ to the environment variable LD_LIBRARY_PATH 76 | or 77 | b) (As root) Add /usr/local/lib/ to the file /etc/ld.so.conf, and 78 | then execute ldconfig 79 | Refer to the man pages for ld.so and ldconfig for further details. 80 | 81 | 7. That's it! Refer to the README file for details of how to use LTFS. 82 | 83 | -------------------------------------------------------------------------------- /ltfs/doc/BUILDING.macosx: -------------------------------------------------------------------------------- 1 | ======================================================================= 2 | HPE StoreOpen Software (HPE-SOS) - Version 3.4.2 3 | ======================================================================= 4 | 5 | Files in this download contain Licensed Materials, property of HPE, 6 | (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 7 | 8 | Files in this download also contain Licensed Materials, property of IBM, 9 | (C) Copyright IBM Corp. 2010, 2014 10 | 11 | See the Licensing agreement (COPYING.LIB) when LTFS is downloaded. 12 | 13 | The LTFS software application is an open-source tape file system 14 | implemented on dual partition tape drives. 15 | 16 | Further details on HPE's LTFS implementation can be found at 17 | www.hpe.com/storage/storeopen 18 | 19 | 20 | ======================================================================= 21 | Building HPE-SOS from source code (Mac OS X) 22 | ======================================================================= 23 | 24 | 1. Unpack the archive source file to a suitable location: 25 | 26 | $ gunzip HPE-SOS_SOURCE.tar.gz 27 | $ tar xf HPE-SOS_SOURCE.tar 28 | 29 | 2. Ensure that the following packages have been installed: 30 | Apple Developer Tools 31 | OSXFUSE (Refer to HPE Data Agile BURA Compatibility Matrix 32 | at www.hpe.com/storage/BURACompatibility 33 | for OSXFUSE version information) 34 | ICU 50.1.2 35 | 36 | 3. Run the LTFS build script: 37 | 38 | $ cd hpe-sos_3.4.2 39 | $ ./build_osx_package.sh 40 | 41 | If no errors are reported then the build was successful. 42 | 43 | Do not use the configure script or Makefile; these are intended for 44 | use on Linux platforms. The supplied build_osx_package.sh script 45 | performs the steps needed to build on the Mac OS X platform. 46 | 47 | 4. The build process produces an installable package in the directory 48 | hpe-sos_3.4.2/distribution/ 49 | 50 | Open that directory in Finder and select the HPEStoreOpenSoftware.pkg 51 | 52 | The installation files will be copied to the directory 53 | /Library/Frameworks/LTFS.framework/Versions/Current/ 54 | and symbolic links for the executables (mkltfs, ltfs, ltfsck, unltfs) 55 | are created in /usr/local/bin/ 56 | 57 | 5. That's it! Refer to the README file for details of how to use LTFS. 58 | 59 | 6. To uninstall LTFS, you need to delete the symbolic links in 60 | /usr/local/bin/ for the executables (mkltfs, ltfs, ltfsck, unltfs) 61 | and then delete the directory /Library/Frameworks/LTFS.framework 62 | 63 | Execute the command: 64 | pkgutil --forget com.hpe.ltfs 65 | to cause the Package Manager subsystem to remove references to LTFS. 66 | -------------------------------------------------------------------------------- /ltfs/doc/INSTALLING.macosx: -------------------------------------------------------------------------------- 1 | ======================================================================= 2 | HPE StoreOpen Software (HPE-SOS) - Version 3.4.2 3 | ======================================================================= 4 | 5 | Files in this download contain Licensed Materials, property of HPE, 6 | (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP 7 | 8 | Files in this download also contain Licensed Materials, property of IBM, 9 | (C) Copyright IBM Corp. 2010, 2014 10 | 11 | See the Licensing agreement (COPYING.LIB) when LTFS is downloaded. 12 | 13 | The LTFS software application is an open-source tape file system 14 | implemented on dual partition tape drives. 15 | 16 | Further details on HPE's LTFS implementation can be found at 17 | www.hpe.com/storage/storeopen 18 | 19 | 20 | ======================================================================= 21 | Installing on Mac OS X systems 22 | ======================================================================= 23 | 24 | 1. Before starting to install and use LTFS, you must ensure that the 25 | OSXFUSE module is present and loaded. 26 | Refer to HPE Data Agile BURA Compatibility Matrix 27 | www.hpe.com/storage/BURACompatibility for OSXFUSE version information 28 | 29 | If the module is not present on your system, you must first 30 | install it from the included package or from another source. 31 | 32 | 2. Determine whether you want to use the pre-compiled package or build 33 | your own version of the LTFS application. 34 | 35 | To build your own, download and unpack the file HPELTFS_SOURCE.tar.gz 36 | then follow the instructions in ltfs/doc/BUILDING.macosx 37 | 38 | 3. To use pre-compiled binaries, download the file: 39 | HPEStoreOpenSoftware.dmg 40 | 41 | 4. Install the ICU package first by double-clicking on the file 42 | ICUFramework.pkg and following the instructions. 43 | 44 | 5. Now install the LTFS package by double-clicking on the file 45 | HPE StoreOpen Software.pkg and following the instructions. 46 | 47 | 7. LTFS is now installed on your system and is ready to use. 48 | The README file contains details of how to use LTFS on the command 49 | line in a terminal window. The installation package also places an 50 | "HPE StoreOpen Software" console application in your Applications 51 | folder which can be used to simplify the tasks of preparing, formatting 52 | and mounting an LTFS volume. 53 | 54 | 8. If at a later date you want to uninstall LTFS from your system, 55 | delete /usr/local/bin/*ltfs* and then delete the tree under 56 | /Library/Frameworks/LTFS.framework 57 | 58 | The console application can be uninstalled by dragging it to the Trash. 59 | 60 | Execute the command: 61 | pkgutil --forget com.hpe.ltfs 62 | to cause the Package Manager subsystem to remove references to LTFS. 63 | 64 | To also delete the ICU package, delete the tree under 65 | /Library/Frameworks/ICU.framework 66 | -------------------------------------------------------------------------------- /ltfs/doc/ltfs.conf.example: -------------------------------------------------------------------------------- 1 | # Automatically generated LTFS configuration file for Linux. 2 | # Edit this file to add or remove tape driver plugins and I/O 3 | # schedulers or to change default settings. 4 | # 5 | # To make configuration changes that will persist across software 6 | # updates, edit ltfs.conf.local instead of this file. 7 | 8 | # Tape device plugins 9 | # Syntax: driver PLUGIN-NAME PLUGIN-PATH 10 | # The PLUGIN-PATH may contain spaces. 11 | driver ibmtape /opt/IBM/ltfs/lib64/ltfs/libdriver-ibmtape.so 12 | driver file /opt/IBM/ltfs/lib64/ltfs/libdriver-file.so 13 | 14 | # I/O scheduler plugins 15 | # Syntax: iosched PLUGIN-NAME PLUGIN-PATH 16 | # The PLUGIN-PATH may contain spaces. 17 | iosched unified /opt/IBM/ltfs/lib64/ltfs/libiosched-unified.so 18 | iosched fcfs /opt/IBM/ltfs/lib64/ltfs/libiosched-fcfs.so 19 | 20 | # Key Manager Interface plugins 21 | # Syntax: kmi PLUGIN-NAME PLUGIN-PATH 22 | # The PLUGIN-PATH may contain spaces. 23 | kmi flatfile /opt/IBM/ltfs/lib64/ltfs/libkmi-flatfile.so 24 | kmi simple /opt/IBM/ltfs/lib64/ltfs/libkmi-simple.so 25 | 26 | # Default plugins 27 | # Syntax: default PLUGIN-TYPE PLUGIN-NAME 28 | # The PLUGIN-NAME must be one of those defined using a "driver" or "iosched" line. 29 | # For a PLUGIN-TYPE of iosched, the special "none" name may be used to indicate that 30 | # no I/O scheduler should be used by default. 31 | default driver ibmtape 32 | default iosched unified 33 | default kmi none 34 | 35 | # Include the local settings file. That file is not overwritten when a newer 36 | # version of LTFS is installed. 37 | include /etc/ltfs.conf.local 38 | 39 | -------------------------------------------------------------------------------- /ltfs/doc/ltfs.conf.local.example: -------------------------------------------------------------------------------- 1 | # The default LTFS configuration file includes this one. 2 | # Any directives placed here will be kept across software updates. 3 | # 4 | # It is possible to remove a plugin specified previously. 5 | # Syntax: -iosched PLUGIN-NAME 6 | # -driver PLUGIN-NAME 7 | # -kmi PLUGIN-NAME 8 | # Example: -driver file 9 | # 10 | # It is also possible to unset a previously specified default plugin. 11 | # Syntax: -default PLUGIN-TYPE 12 | # Example: -default driver 13 | 14 | -------------------------------------------------------------------------------- /ltfs/init.d/Makefile.am: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | 4 | install-data-local: 5 | if [ ! -d "@datadir@/ltfs" ]; then \ 6 | mkdir -p "@datadir@/ltfs"; \ 7 | fi ;\ 8 | if [ ! -f "@datadir@/ltfs/ltfs" ]; then \ 9 | install -m 755 ltfs "@datadir@/ltfs/ltfs"; \ 10 | fi 11 | 12 | clean-local: 13 | -------------------------------------------------------------------------------- /ltfs/messages/Makefile.am: -------------------------------------------------------------------------------- 1 | ## 2 | ## %Z% %I% %W% %G% %U% 3 | ## 4 | ## ZZ_Copyright_BEGIN 5 | ## 6 | ## 7 | ## Licensed Materials - Property of IBM 8 | ## 9 | ## IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ## 11 | ## Copyright IBM Corp. 2010, 2014 12 | ## 13 | ## This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ## (formally known as IBM Linear Tape File System) 15 | ## 16 | ## The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ## you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ## General Public License as published by the Free Software Foundation, 19 | ## version 2.1 of the License. 20 | ## 21 | ## The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ## hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ## implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ## See the GNU Lesser General Public License for more details. 25 | ## 26 | ## You should have received a copy of the GNU Lesser General Public 27 | ## License along with this library; if not, write to the Free Software 28 | ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ## or download the license from . 30 | ## 31 | ## 32 | ## ZZ_Copyright_END 33 | ## 34 | ###################################################################################### 35 | ## 36 | ## COMPONENT NAME: IBM Linear Tape File System 37 | ## 38 | ## FILE NAME: Makefile.osx 39 | ## 40 | ## DESCRIPTION: Automake template for LTFS message libraries on Linux. 41 | ## 42 | ## AUTHOR: Brian Biskeborn 43 | ## IBM Almaden Research Center 44 | ## bbiskebo@us.ibm.com 45 | ## 46 | ###################################################################################### 47 | ## 48 | ## (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 49 | ## 50 | ## 10/08/10 Add ltotape to list of RESOURCES 51 | ## 52 | ###################################################################################### 53 | 54 | RESOURCES = \ 55 | bin_mkltfs_dat.o \ 56 | bin_ltfsck_dat.o \ 57 | bin_ltfs_dat.o \ 58 | kmi_simple_dat.o \ 59 | kmi_flatfile_dat.o \ 60 | driver_ltotape_dat.o \ 61 | iosched_fcfs_dat.o \ 62 | iosched_unified_dat.o \ 63 | libltfs_dat.o \ 64 | internal_error_dat.o 65 | 66 | .PHONY: all $(RESOURCES) clean-local 67 | all: $(RESOURCES) 68 | 69 | $(RESOURCES): 70 | @./make_message_src.sh $@ 71 | 72 | clean-local: 73 | rm -rf $(RESOURCES) */work 74 | -------------------------------------------------------------------------------- /ltfs/messages/Makefile.am_Windows: -------------------------------------------------------------------------------- 1 | ## 2 | ## %Z% %I% %W% %G% %U% 3 | ## 4 | ## ZZ_Copyright_BEGIN 5 | ## 6 | ## 7 | ## Licensed Materials - Property of IBM 8 | ## 9 | ## IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ## 11 | ## Copyright IBM Corp. 2010, 2014 12 | ## 13 | ## This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ## (formally known as IBM Linear Tape File System) 15 | ## 16 | ## The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ## you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ## General Public License as published by the Free Software Foundation, 19 | ## version 2.1 of the License. 20 | ## 21 | ## The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ## hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ## implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ## See the GNU Lesser General Public License for more details. 25 | ## 26 | ## You should have received a copy of the GNU Lesser General Public 27 | ## License along with this library; if not, write to the Free Software 28 | ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ## or download the license from . 30 | ## 31 | ## 32 | ## ZZ_Copyright_END 33 | ## 34 | ###################################################################################### 35 | ## 36 | ## COMPONENT NAME: IBM Linear Tape File System 37 | ## 38 | ## FILE NAME: Makefile.osx 39 | ## 40 | ## DESCRIPTION: Automake template for LTFS message libraries on Linux. 41 | ## 42 | ## AUTHOR: Brian Biskeborn 43 | ## IBM Almaden Research Center 44 | ## bbiskebo@us.ibm.com 45 | ## 46 | ###################################################################################### 47 | ## 48 | ## (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 49 | ## 50 | ## 10/08/10 Add ltotape to list of RESOURCES 51 | ## 52 | ###################################################################################### 53 | 54 | ## 55 | ## OSR/HPE_mingw_BUILD 56 | ## 57 | ## Object file name must be changed from libltfs_dat to bin_libltfs_dat. This is 58 | ## part of changing the package name from libltfs to bin_libltfs to avoid collision 59 | ## with libltfs.dll, which is the name of the LTFS library code 60 | ## 61 | RESOURCES = \ 62 | bin_mkltfs_dat.o \ 63 | bin_ltfsck_dat.o \ 64 | bin_ltfs_dat.o \ 65 | kmi_simple_dat.o \ 66 | kmi_flatfile_dat.o \ 67 | driver_ltotape_dat.o \ 68 | iosched_fcfs_dat.o \ 69 | iosched_unified_dat.o \ 70 | bin_libltfs_dat.o \ 71 | internal_error_dat.o 72 | 73 | .PHONY: all $(RESOURCES) clean-local 74 | all: $(RESOURCES) 75 | 76 | $(RESOURCES): 77 | @./make_message_src.sh $@ 78 | 79 | clean-local: 80 | rm -rf $(RESOURCES) */work 81 | -------------------------------------------------------------------------------- /ltfs/messages/Makefile.osx: -------------------------------------------------------------------------------- 1 | ## 2 | ## %Z% %I% %W% %G% %U% 3 | ## 4 | ## ZZ_Copyright_BEGIN 5 | ## 6 | ## 7 | ## Licensed Materials - Property of IBM 8 | ## 9 | ## IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ## 11 | ## Copyright IBM Corp. 2010, 2014 12 | ## 13 | ## This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ## (formally known as IBM Linear Tape File System) 15 | ## 16 | ## The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ## you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ## General Public License as published by the Free Software Foundation, 19 | ## version 2.1 of the License. 20 | ## 21 | ## The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ## hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ## implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ## See the GNU Lesser General Public License for more details. 25 | ## 26 | ## You should have received a copy of the GNU Lesser General Public 27 | ## License along with this library; if not, write to the Free Software 28 | ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ## or download the license from . 30 | ## 31 | ## 32 | ## ZZ_Copyright_END 33 | ## 34 | ###################################################################################### 35 | ## 36 | ## COMPONENT NAME: IBM Linear Tape File System 37 | ## 38 | ## FILE NAME: Makefile.osx 39 | ## 40 | ## DESCRIPTION: Makefile for LTFS message library on OS X. 41 | ## 42 | ## AUTHOR: Michael A. Richmond 43 | ## IBM Almaden Research Center 44 | ## mar@almaden.ibm.com 45 | ## 46 | ###################################################################################### 47 | ## 48 | ## (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 49 | ## 50 | ## 10/08/10 Add ltotape to list of RESOURCES 51 | ## 52 | ###################################################################################### 53 | 54 | RESOURCES=libltfs_dat.o \ 55 | driver_generic_file_dat.o driver_osx_iokit_dat.o \ 56 | driver_ltotape_dat.o \ 57 | iosched_fcfs_dat.o iosched_unified_dat.o \ 58 | bin_mkltfs_dat.o bin_ltfs_dat.o bin_ltfsck_dat.o \ 59 | internal_error_dat.o \ 60 | kmi_simple_dat.o kmi_flatfile_dat.o 61 | 62 | .PHONY: all $(RESOURCES) clean-local 63 | all: $(RESOURCES) 64 | 65 | $(RESOURCES): 66 | @./make_message_src.sh $@ 67 | 68 | clean-local: 69 | rm -rf $(RESOURCES) */work 70 | -------------------------------------------------------------------------------- /ltfs/messages/bin_libltfs/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 1.3.0.0 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2012 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_libltfs/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 1.3.0.0 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2012 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_ltfs/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_ltfs/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_ltfsck/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_ltfsck/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_mkltfs/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/bin_mkltfs/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/driver_generic_file/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/driver_generic_file/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/driver_linux_ibmtape/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/driver_linux_ibmtape/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/driver_ltotape/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of Hewlett Packard Enterprise Development LP 8 | // 9 | // HPE StoreOpen Software Version 3.4 10 | // 11 | // (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP 12 | // 13 | // This file is part of the HPE StoreOpen Software 14 | // 15 | // HPE StoreOpen Software is free software; 16 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 17 | // General Public License as published by the Free Software Foundation, 18 | // version 2.1 of the License. 19 | // 20 | // HPE StoreOpen Software is distributed in the 21 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 22 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 23 | // See the GNU Lesser General Public License for more details. 24 | // 25 | // You should have received a copy of the GNU Lesser General Public 26 | // License along with this library; if not, write to the Free Software 27 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 28 | // or download the license from . 29 | // 30 | // 31 | // ZZ_Copyright_END 32 | // 33 | 34 | en:table { 35 | // This resource intentionally left blank. 36 | } 37 | 38 | -------------------------------------------------------------------------------- /ltfs/messages/driver_ltotape/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of Hewlett Packard Enterprise Development LP 8 | // 9 | // HPE StoreOpen Software Version 3.4 10 | // 11 | // (C) Copyright 2015-2018 Hewlett Packard Enterprise Development LP 12 | // 13 | // This file is part of the HPE StoreOpen Software 14 | // 15 | // HPE StoreOpen Software is free software; 16 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 17 | // General Public License as published by the Free Software Foundation, 18 | // version 2.1 of the License. 19 | // 20 | // HPE StoreOpen Software is distributed in the 21 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 22 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 23 | // See the GNU Lesser General Public License for more details. 24 | // 25 | // You should have received a copy of the GNU Lesser General Public 26 | // License along with this library; if not, write to the Free Software 27 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 28 | // or download the license from . 29 | // 30 | // 31 | // ZZ_Copyright_END 32 | // 33 | 34 | en_US:table { 35 | // This resource intentionally left blank. 36 | } 37 | 38 | -------------------------------------------------------------------------------- /ltfs/messages/driver_osx_iokit/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/driver_osx_iokit/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/internal_error/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/internal_error/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/iosched_fcfs/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/iosched_fcfs/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/iosched_fcfs/root.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | // Messages for the fcfs scheduler. 36 | // This backend shares IDs 13000-13999 with the schedulers and the scheduler 37 | // interface functions, so be sure to make a note in messages/ltfs/root.txt whenever an 38 | // ID is allocated here. 39 | root:table { 40 | messages:table { 41 | start_id:int { 13005 } 42 | end_id:int { 13499 } 43 | 44 | 13019I:string { "FCFS I/O scheduler initialized" } 45 | 13020I:string { "FCFS I/O scheduler uninitialized" } 46 | } 47 | } 48 | 49 | -------------------------------------------------------------------------------- /ltfs/messages/iosched_unified/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/iosched_unified/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/kmi_flatfile/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/kmi_flatfile/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/kmi_flatfile/root.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | // Messages for the key manager interface flat file plugin. 36 | // This backend shares IDs 15500-15999 with other key manager interface plugins and the plugin 37 | // interface functions, so be sure to make a note in messages/libltfs/root.txt whenever an 38 | // ID is allocated here. 39 | root:table { 40 | messages:table { 41 | start_id:int { 15500 } 42 | end_id:int { 15999 } 43 | 44 | // Message IDs 15500-15009 are reserved for the cropto direct plugins. 45 | // DO NOT add messages with those IDs to this file. 46 | 47 | 15510D:string { "Flat File plug-in initialized" } 48 | 15511D:string { "Flat File plug-in uninitialized" } 49 | 15512E:string { "Flat File plug-in failed to parse options" } 50 | 15513E:string { "Flat File plug-in failed to open the file (%d,%d)" } 51 | 15514E:string { "Flat File plug-in detected key format violation" } 52 | 53 | // for LTFS specific format 54 | 15600E:string { "Encryption key format violation (%s): %s" } 55 | 15603E:string { "Cannot find data key" } 56 | 15604E:string { "Option parsing for the key manager interface backend failed (%d)" } 57 | 15605E:string { "Invalid sequence error (%d,%d): %s" } 58 | 15606E:string { "Failed to parse data key and/or data key identifier" } 59 | 15607E:string { "Cannot find data key of the data key identifier" } 60 | 15608I:string { "Key manager interface flatfile plug-in options:\n" 61 | " -o kmi_dki_for_format=\n" 62 | " Data key identifier to format a cartridge\n" 63 | " -o kmi_dk_list=FILE\n" 64 | " Data key and data key identifier pairs' list file\n\n" } 65 | } 66 | } 67 | 68 | -------------------------------------------------------------------------------- /ltfs/messages/kmi_simple/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/kmi_simple/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/kmi_simple/root.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | // Messages for the key manager interface simple plugin. 36 | // This backend shares IDs 15500-15999 with other key manager interface plugins and the plugin 37 | // interface functions, so be sure to make a note in messages/libltfs/root.txt whenever an 38 | // ID is allocated here. 39 | root:table { 40 | messages:table { 41 | start_id:int { 15500 } 42 | end_id:int { 15999 } 43 | 44 | 15500D:string { "Simple plug-in initialized" } 45 | 15501D:string { "Simple plug-in uninitialized" } 46 | 47 | // Message IDs 15510-15529 are reserved for the cropto flatfile plugins. 48 | // DO NOT add messages with those IDs to this file. 49 | 50 | // for LTFS specific format 51 | 15600E:string { "Encryption key format violation (%s): %s" } 52 | 15603E:string { "Cannot find data key" } 53 | 15604E:string { "Option parsing for the key manager interface backend failed (%d)" } 54 | 15605E:string { "Invalid sequence error (%d,%d): %s" } 55 | 15606E:string { "Failed to parse data key and/or data key identifier" } 56 | 15607E:string { "Cannot find data key of the data key identifier" } 57 | 15608I:string { "Key manager interface simple plug-in options:\n" 58 | " -o kmi_dk=\n" 59 | " Data key\n" 60 | " -o kmi_dki=\n" 61 | " Data key identifier\n" 62 | " -o kmi_dk_for_format=\n" 63 | " Data key to format a cartridge\n" 64 | " -o kmi_dki_for_format=\n" 65 | " Data key identifier to format a cartridge\n" 66 | " -o kmi_dk_list=:/:/.../:\n" 67 | " Data key and data key identifier pairs' list\n\n" } 68 | } 69 | } 70 | 71 | -------------------------------------------------------------------------------- /ltfs/messages/libltfs/en.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/libltfs/en_US.txt: -------------------------------------------------------------------------------- 1 | // 2 | // %Z% %I% %W% %G% %U% 3 | // 4 | // ZZ_Copyright_BEGIN 5 | // 6 | // 7 | // Licensed Materials - Property of IBM 8 | // 9 | // IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | // 11 | // Copyright IBM Corp. 2010, 2014 12 | // 13 | // This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | // (formally known as IBM Linear Tape File System) 15 | // 16 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | // you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | // General Public License as published by the Free Software Foundation, 19 | // version 2.1 of the License. 20 | // 21 | // The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | // hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | // See the GNU Lesser General Public License for more details. 25 | // 26 | // You should have received a copy of the GNU Lesser General Public 27 | // License along with this library; if not, write to the Free Software 28 | // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | // or download the license from . 30 | // 31 | // 32 | // ZZ_Copyright_END 33 | // 34 | 35 | en_US:table { 36 | // This resource intentionally left blank. 37 | } 38 | 39 | -------------------------------------------------------------------------------- /ltfs/messages/make_message_src.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | KERNEL_NAME=`uname -s` 6 | if [ "$KERNEL_NAME" = "Darwin" ]; then 7 | ICU_FRAMEWORK=/Library/Frameworks/ICU.framework 8 | export PATH=${PATH}:${ICU_FRAMEWORK}/Versions/Current/usr/bin 9 | export DYLD_LIBRARY_PATH=${ICU_FRAMEWORK}/Versions/Current/usr/lib 10 | GENRB=${ICU_FRAMEWORK}/Versions/Current/usr/bin/genrb 11 | PKGDATA=${ICU_FRAMEWORK}/Versions/Current/usr/bin/pkgdata 12 | else 13 | GENRB=genrb 14 | PKGDATA=pkgdata 15 | fi 16 | 17 | if [ "$#" -ne "1" ]; then 18 | echo "Usage: $0 object_file" 19 | exit 1 20 | fi 21 | 22 | BASENAME=`echo $1 | sed -e 's/_dat\.o$//'` 23 | 24 | cd ${BASENAME} 25 | 26 | make_obj() { 27 | # Create a fresh work directory 28 | if [ -d work ]; then 29 | rm -rf work 30 | fi 31 | mkdir work 32 | 33 | # Generate files 34 | ${GENRB} -d work -q *.txt 35 | cd work 36 | ls *.res >packagelist.txt 37 | ${PKGDATA} -p ${BASENAME} -m static -q packagelist.txt >/dev/null 38 | 39 | case $KERNEL_NAME in 40 | MINGW32_NT*) 41 | # 42 | # HPE_mingw_BUILD 43 | # 44 | # We use dynamic libraries for the package data, so use the 45 | # -m dll switch 46 | # 47 | ${PKGDATA} -p ${BASENAME} -m dll -q packagelist.txt >/dev/null 48 | 49 | # Copy the resulting DLL as both a link library 50 | # (lib*.a) and the DLL with the package data 51 | # (*.dll). Libtool will happily use the copy of 52 | # the DLL to link 53 | # 54 | cp ${BASENAME}.dll ../../lib${BASENAME}.a 55 | cp ${BASENAME}.dll ../../${BASENAME}.dll 56 | ;; 57 | *) 58 | mv ${BASENAME}_dat.o ../../ 59 | ;; 60 | esac 61 | 62 | # Clean up 63 | cd .. 64 | rm -rf work 65 | } 66 | 67 | # Check whether we need to do anything 68 | if [ -f "../$1" ]; then 69 | for file in *; do 70 | if [ "$file" -nt "../$1" ]; then 71 | make_obj 72 | exit 0 73 | fi 74 | done 75 | else 76 | make_obj 77 | fi 78 | -------------------------------------------------------------------------------- /ltfs/osx_installer/LTFS.pmdoc/01ltfs-contents.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ltfs/osx_installer/LTFS.pmdoc/01ltfs.xml: -------------------------------------------------------------------------------- 1 | com.hpe.ltfs.pkg1.2../distribution/LTFS.framework/Library/FrameworksinstallFrom.isRelativeTypeversioninstallFrom.pathidentifierscripts.postinstall.isRelativeTypeparentpost_install.sh/CVS$/\.svn$/\.cvsignore$/\.cvspass$/\.DS_Store$ -------------------------------------------------------------------------------- /ltfs/osx_installer/LTFS.pmdoc/index.xml: -------------------------------------------------------------------------------- 1 | HPE StoreOpen Software 3.4.2/Users/chrism/Documents/HPE StoreOpen Software.pkgcom.hpe.ltfsThis package installs HPE StoreOpen Software.LTFSicon.jpgLTFS_Installer_License.txtLTFS_Installer_Introduction.htmlUnable to install HPE StoreOpen SoftwareThe ICU libraries have not been tested with versions of OS X earlier than 10.5.6./Library/Frameworks/OSXFUSE.frameworkUnable to install HPE StoreOpen SoftwareThe MacFuse package for 10.6/OSXFUSE package for 10.7 and above is not installed on this system. Please install it before attempting to install HPE StoreOpen Software./Library/Frameworks/ICU.frameworkUnable to install HPE StoreOpen SoftwareThe ICU framework version 50.1.2 is not installed on this system. The ICU framework version 50.1.2 is bundled with the HPE StoreOpen Software installer image file.01ltfs.xmlproperties.titledescriptionproperties.anywhereDomainproperties.systemDomain 2 | -------------------------------------------------------------------------------- /ltfs/osx_installer/LTFS_Installer_Introduction.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 18 | 19 | 20 |

This is the installation package for
21 | HPE StoreOpen Software version 3.4.2.

22 |

This will install the HPE StoreOpen Software and associated utilities onto your system. Note that to use HPE StoreOpen Software, you should also have already installed the following packages:

23 |
    24 |
  • OSXFUSE (bundled with this distribution package)
  • 25 |
  • Refer to the HPE DAPR Compatibility Matrix for compatibility of versions of OSXFUSE with corresponding Mac OS X versions
  • 26 |
  • icu version 50.1.2 (attached to this distribution package)
  • 27 |
28 |


29 |

This installer will not allow you to proceed until you have installed these two packages.

30 |


31 | 32 | 33 | -------------------------------------------------------------------------------- /ltfs/osx_installer/LTFSicon.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nix-community/hpe-ltfs/f909474d71deb0e6a7abc71fd47c16a78b9c1eb0/ltfs/osx_installer/LTFSicon.jpg -------------------------------------------------------------------------------- /ltfs/osx_installer/post_install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | LOG_FILE=/tmp/LTFS_postinstall.log 4 | 5 | FRAMEWORK_NAME=LTFS.framework 6 | VERSION=3.4.2 7 | 8 | echo "" >> ${LOG_FILE} 9 | echo "Starting post-install for ${FRAMEWORK_NAME} at `date`" >> ${LOG_FILE} 10 | 11 | echo "User: "`who am i` >> ${LOG_FILE} 12 | echo "PWD: "`pwd` >> ${LOG_FILE} 13 | echo "args: "$@ >> ${LOG_FILE} 14 | 15 | PACKAGE_LOCATION=${1} 16 | INSTALL_DEST=${2} 17 | DEST_VOL=${3} 18 | INSTALL_TYPE=${4} 19 | 20 | echo "PACKAGE_LOC: ${PACKAGE_LOCATION}" >> ${LOG_FILE} 21 | echo "INSTALL_DEST: ${INSTALL_DEST}" >> ${LOG_FILE} 22 | echo "DEST_VOL: ${DEST_VOL}" >> ${LOG_FILE} 23 | echo "INSTALL_TYPE: ${INSTALL_TYPE}" >> ${LOG_FILE} 24 | 25 | echo "PWD: "`pwd` >> ${LOG_FILE} 26 | 27 | 28 | # Change owner... 29 | echo "Changing owner and group..." >> ${LOG_FILE} 30 | cd ${INSTALL_DEST}/${FRAMEWORK_NAME} 31 | chown -R root:admin . 32 | echo " owner and group changed" >> ${LOG_FILE} 33 | 34 | 35 | # Change permissions... 36 | echo "Changing Permissions..." >> ${LOG_FILE} 37 | # set directory permissions 38 | cd ${INSTALL_DEST}/${FRAMEWORK_NAME} 39 | find . -type d | xargs chmod u=rwx,go=rx 40 | echo " set directory permissions" >> ${LOG_FILE} 41 | 42 | # set read file permissions 43 | #cd ${INSTALL_DEST}/${FRAMEWORK_NAME}/Versions/Current/usr/include 44 | #find . -type f | xargs chmod u=rw,go=r 45 | #cd ${INSTALL_DEST}/${FRAMEWORK_NAME}/Versions/Current/usr/man 46 | #find . -type f | xargs chmod u=rw,go=r 47 | cd ${INSTALL_DEST}/${FRAMEWORK_NAME}/Versions/Current/usr/share 48 | find . -type f | xargs chmod u=rw,go=r 49 | echo " set read file permissions" >> ${LOG_FILE} 50 | 51 | # set executable file permissions 52 | cd ${INSTALL_DEST}/${FRAMEWORK_NAME}/Versions/Current/usr/bin 53 | find . -type f | xargs chmod u+rwx,go=rx 54 | cd ${INSTALL_DEST}/${FRAMEWORK_NAME}/Versions/Current/usr/lib 55 | find . -type f | xargs chmod u+rwx,go=rx 56 | echo " set executable file permissions" >> ${LOG_FILE} 57 | 58 | # Create symlinks to save cumbersome path manipulation for users 59 | echo "Linking executables..." >> ${LOG_FILE} 60 | if [ ! -d /usr/local/bin/ ] 61 | then 62 | mkdir /usr/local/bin/ 63 | echo " created directory /usr/local/bin/" >> ${LOG_FILE} 64 | fi 65 | proglist=`find ${INSTALL_DEST}/${FRAMEWORK_NAME}/Versions/Current/usr/bin -type f` 66 | for prog in $proglist 67 | do 68 | ln -s $prog /usr/local/bin/`basename $prog` 69 | done 70 | echo " symlinked executables to /usr/local/bin/" >> ${LOG_FILE} 71 | 72 | # Create a log directory if it doesn't already exist 73 | DUMPDIR=${HOME}/Library/Logs/LTFS 74 | if [ ! -d $DUMPDIR ] 75 | then 76 | echo "Creating log directory...">> ${LOG_FILE} 77 | mkdir $DUMPDIR 78 | echo " created directory $DUMPDIR for drive log snapshot dumps" >> ${LOG_FILE} 79 | ls -ld ${HOME}/Library/Logs | awk '{ printf "%s:%s %s/LTFS",$3,$4,$9 }' | xargs chown 80 | echo " set directory permissions" >> ${LOG_FILE} 81 | fi 82 | 83 | echo "Finished post-install for ${FRAMEWORK_NAME} at `date`" >> ${LOG_FILE} 84 | -------------------------------------------------------------------------------- /ltfs/src/MSG00001.bin: -------------------------------------------------------------------------------- 1 | dd\The LTFS file system encountered an error 2 | -------------------------------------------------------------------------------- /ltfs/src/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | # 35 | # (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 36 | # 05/28/10 Add hptape backend to list of platform drivers 37 | # 09/23/10 Rename hptape to more generic ltotape 38 | # 39 | # 40 | 41 | bin_PROGRAMS = ltfs 42 | 43 | ltfs_SOURCES = main.c ltfs_fuse.c 44 | ltfs_DEPENDENCIES = libltfs/libltfs.la ../messages/bin_ltfs_dat.o 45 | ltfs_CPPFLAGS = @AM_CPPFLAGS@ -I ../ltfs-sde/src 46 | ltfs_LDADD = libltfs/libltfs.la ../messages/bin_ltfs_dat.o 47 | 48 | # platform_drivers = tape_drivers/linux/ibmtape 49 | # generic_drivers = tape_drivers/generic/file tape_drivers/generic/itdtimg 50 | # SUBDIRS = $(generic_drivers) $(platform_drivers) iosched kmi libltfs utils 51 | platform_drivers = tape_drivers/linux/ltotape 52 | SUBDIRS = $(platform_drivers) iosched kmi libltfs utils 53 | -------------------------------------------------------------------------------- /ltfs/src/Makefile.am_Windows: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | # 35 | # (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 36 | # 05/28/10 Add hptape backend to list of platform drivers 37 | # 09/23/10 Rename hptape to more generic ltotape 38 | # 39 | # 40 | ############################################################################### 41 | # 42 | # Copyright (C) 2012 OSR Open Systems Resources, Inc. 43 | # 44 | ############################################################################### 45 | 46 | bin_PROGRAMS = ltfs 47 | 48 | # 49 | # RC file linked to provides message data for the Event Log 50 | # 51 | ltfs_SOURCES = main.c ltfs_fuse.c ltfs_msgs.rc 52 | ltfs_DEPENDENCIES = ../src/libltfs/libltfs.la ../messages/libbin_ltfs.a 53 | ltfs_LDADD = ../src/libltfs/libltfs.la -L../messages -lbin_ltfs -lbin_libltfs 54 | 55 | # 56 | # Provide support for building the RC file with the Resource Compiler (RC/windres) 57 | # 58 | .rc.o: 59 | $(RC) -o $@ $< 60 | 61 | # 62 | # Platform driver is the Windows driver 63 | # 64 | platform_drivers = tape_drivers/windows/ltotape 65 | 66 | SUBDIRS = libltfs kmi . iosched utils $(platform_drivers) 67 | -------------------------------------------------------------------------------- /ltfs/src/iosched/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libiosched-fcfs.la libiosched-unified.la 36 | libdir = @libdir@/ltfs 37 | 38 | AM_LIBTOOLFLAGS = --tag=disable-static 39 | 40 | libiosched_fcfs_la_SOURCES = fcfs.c 41 | libiosched_fcfs_la_LDFLAGS = -avoid-version -module @AM_LDFLAGS@ 42 | libiosched_fcfs_la_DEPENDENCIES = ../../messages/iosched_fcfs_dat.o 43 | libiosched_fcfs_la_LIBADD = ../../messages/iosched_fcfs_dat.o 44 | libiosched_fcfs_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 45 | 46 | libiosched_unified_la_SOURCES = unified.c cache_manager.c 47 | libiosched_unified_la_LDFLAGS = -avoid-version -module @AM_LDFLAGS@ 48 | libiosched_unified_la_DEPENDENCIES = ../../messages/iosched_unified_dat.o 49 | libiosched_unified_la_LIBADD = ../../messages/iosched_unified_dat.o 50 | libiosched_unified_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 51 | 52 | install-exec-hook: 53 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 54 | -------------------------------------------------------------------------------- /ltfs/src/iosched/Makefile.am_Windows: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | ############################################################################### 35 | # 36 | # Copyright (C) 2012 OSR Open Systems Resources, Inc. 37 | # 38 | ############################################################################### 39 | 40 | lib_LTLIBRARIES = libiosched-fcfs.la libiosched-unified.la 41 | libdir = @libdir@/ltfs 42 | 43 | AM_LIBTOOLFLAGS = --tag=disable-static 44 | 45 | libiosched_fcfs_la_SOURCES = fcfs.c 46 | # 47 | # OSR/HPE_mingw_BUILD 48 | # 49 | # In our MinGW environment, we dynamically link to the package 50 | # data. 51 | # 52 | libiosched_fcfs_la_LDFLAGS = -avoid-version -no-undefined @AM_LDFLAGS@ 53 | libiosched_fcfs_la_DEPENDENCIES = ../../messages/libiosched_fcfs.a 54 | libiosched_fcfs_la_LIBADD = -L../../messages -liosched_fcfs ../libltfs/libltfs.la 55 | libiosched_fcfs_la_CPPFLAGS = @AM_CPPFLAGS@ -I../src 56 | 57 | libiosched_unified_la_SOURCES = unified.c cache_manager.c 58 | 59 | # 60 | # OSR/HPE_mingw_BUILD 61 | # 62 | # In our MinGW environment, we dynamically link to the package 63 | # data. 64 | # 65 | libiosched_unified_la_LDFLAGS = -avoid-version -no-undefined @AM_LDFLAGS@ 66 | libiosched_unified_la_DEPENDENCIES = ../../messages/libiosched_unified.a 67 | libiosched_unified_la_LIBADD = -L../../messages -liosched_unified ../libltfs/libltfs.la 68 | libiosched_unified_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 69 | 70 | install-exec-hook: 71 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 72 | -------------------------------------------------------------------------------- /ltfs/src/iosched/cache_manager.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: cache_manager.h 39 | ** 40 | ** DESCRIPTION: Header file for the generic cache manager. 41 | ** 42 | ** AUTHOR: Lucas C. Villa Real 43 | ** IBM Almaden Research Center 44 | ** lucasvr@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | #ifndef __cache_manager_h 49 | #define __cache_manager_h 50 | 51 | void *cache_manager_init(size_t object_size, size_t initial_capacity, size_t max_capacity); 52 | void cache_manager_destroy(void *cache); 53 | bool cache_manager_has_room(void *cache); 54 | void *cache_manager_allocate_object(void *cache); 55 | void *cache_manager_get_object(void *object); 56 | void cache_manager_free_object(void *cache_object, size_t count); 57 | void *cache_manager_get_object_data(void *cache_object); 58 | size_t cache_manager_get_object_size(void *cache_object); 59 | 60 | #endif /* __cache_manager_h */ 61 | -------------------------------------------------------------------------------- /ltfs/src/kmi/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libkmi-simple.la libkmi-flatfile.la 36 | libdir = @libdir@/ltfs 37 | 38 | AM_LIBTOOLFLAGS = --tag=disable-static 39 | 40 | libkmi_simple_la_SOURCES = simple.c key_format_ltfs.c 41 | libkmi_simple_la_LDFLAGS = -avoid-version -module @AM_LDFLAGS@ 42 | libkmi_simple_la_DEPENDENCIES = ../../messages/kmi_simple_dat.o 43 | libkmi_simple_la_LIBADD = ../../messages/kmi_simple_dat.o 44 | libkmi_simple_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 45 | 46 | libkmi_flatfile_la_SOURCES = flatfile.c key_format_ltfs.c 47 | libkmi_flatfile_la_LDFLAGS = -avoid-version -module @AM_LDFLAGS@ 48 | libkmi_flatfile_la_DEPENDENCIES = ../../messages/kmi_flatfile_dat.o 49 | libkmi_flatfile_la_LIBADD = ../../messages/kmi_flatfile_dat.o 50 | libkmi_flatfile_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 51 | 52 | install-exec-hook: 53 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 54 | -------------------------------------------------------------------------------- /ltfs/src/kmi/Makefile.am_Windows: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | ############################################################################### 35 | # 36 | # Copyright (C) 2012 OSR Open Systems Resources, Inc. 37 | # 38 | ############################################################################### 39 | 40 | lib_LTLIBRARIES = libkmi-simple.la libkmi-flatfile.la 41 | libdir = @libdir@/ltfs 42 | 43 | AM_LIBTOOLFLAGS = --tag=disable-static 44 | 45 | libkmi_simple_la_SOURCES = simple.c key_format_ltfs.c 46 | # 47 | # OSR/HPE_mingw_BUILD 48 | # 49 | # In our MinGW environment, we dynamically link to the package 50 | # data. 51 | # 52 | libkmi_simple_la_LDFLAGS = -avoid-version -no-undefined @AM_LDFLAGS@ 53 | libkmi_simple_la_DEPENDENCIES = ../../messages/libkmi_simple.a 54 | libkmi_simple_la_LIBADD = -L../../messages -lkmi_simple ../libltfs/libltfs.la 55 | libkmi_simple_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 56 | 57 | libkmi_flatfile_la_SOURCES = flatfile.c key_format_ltfs.c 58 | 59 | # 60 | # OSR/HPE_mingw_BUILD 61 | # 62 | # In our MinGW environment, we dynamically link to the package 63 | # data. 64 | # 65 | libkmi_flatfile_la_LDFLAGS = -avoid-version -no-undefined @AM_LDFLAGS@ 66 | libkmi_flatfile_la_DEPENDENCIES = ../../messages/libkmi_flatfile.a 67 | libkmi_flatfile_la_LIBADD = -L../../messages -lkmi_flatfile ../libltfs/libltfs.la 68 | libkmi_flatfile_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 69 | 70 | install-exec-hook: 71 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 72 | -------------------------------------------------------------------------------- /ltfs/src/kmi/key_format_ltfs.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: kmi/key_format_ltfs.h 39 | ** 40 | ** DESCRIPTION: Header file for the LTFS specific format manager. 41 | ** 42 | ** AUTHOR: Yutaka Oishi 43 | ** IBM Yamato, Japan 44 | ** oishi@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __key_format_ltfs_h 50 | #define __key_format_ltfs_h 51 | 52 | #define DK_LENGTH 32 53 | #define DKI_LENGTH 12 54 | #define DKI_ASCII_LENGTH 3 55 | #define SEPARATOR_LENGTH 1 /* length of ':' and '/' */ 56 | 57 | struct key { 58 | unsigned char dk[DK_LENGTH]; /**< Data Key */ 59 | unsigned char dki[DKI_LENGTH]; /**< Data Key Identifier */ 60 | }; 61 | 62 | struct key_format_ltfs { 63 | int num_of_keys; /**< Number of DK and DKi pairs */ 64 | struct key *dk_list; /**< DK and DKi pairs' list */ 65 | }; 66 | 67 | void *key_format_ltfs_init(struct ltfs_volume *vol, const char *id); 68 | int key_format_ltfs_destroy(void * const kmi_handle, const char *id); 69 | int key_format_ltfs_get_key(unsigned char **keyalias, unsigned char **key, void * const kmi_handle, 70 | unsigned char * const dk_list, unsigned char * const dki_for_format); 71 | 72 | #endif /* __key_format_ltfs_h */ 73 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/LTFS-MIB.txt: -------------------------------------------------------------------------------- 1 | LTFS-MIB DEFINITIONS ::= BEGIN 2 | 3 | IMPORTS 4 | OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY, enterprises 5 | FROM SNMPv2-SMI; 6 | 7 | ibmLTFS MODULE-IDENTITY 8 | LAST-UPDATED "201312160000Z" 9 | ORGANIZATION "International Business Machines Corp." 10 | CONTACT-INFO "IBM Support" 11 | DESCRIPTION "This file defines IBM LTFS MIB. 12 | Licensed Materials - Property of IBM 13 | (C) Copyright IBM Corp. 2014" 14 | ::= { ibmProd 248 } 15 | 16 | ibm OBJECT IDENTIFIER ::= { enterprises 2 } 17 | ibmProd OBJECT IDENTIFIER ::= { ibm 6 } 18 | ltfsObjects OBJECT IDENTIFIER ::= { ibmLTFS 1 } 19 | ltfsTraps OBJECT IDENTIFIER ::= { ibmLTFS 2 } 20 | 21 | ltfsInfo OBJECT-TYPE 22 | SYNTAX OCTET STRING 23 | MAX-ACCESS read-only 24 | STATUS current 25 | DESCRIPTION 26 | "A string that represents the error/notification contents." 27 | ::= { ltfsObjects 1 } 28 | 29 | ltfsStartTrap NOTIFICATION-TYPE 30 | STATUS current 31 | DESCRIPTION 32 | "This trap indicates that the LTFS process started." 33 | ::= { ltfsTraps 1 } 34 | 35 | ltfsStopTrap NOTIFICATION-TYPE 36 | STATUS current 37 | DESCRIPTION 38 | "This trap indicates that the LTFS process stopped." 39 | ::= { ltfsTraps 2 } 40 | 41 | ltfsInfoTrap NOTIFICATION-TYPE 42 | OBJECTS { 43 | ltfsInfo 44 | } 45 | STATUS current 46 | DESCRIPTION 47 | "This trap indicates that there are contents of which a user should be notified." 48 | ::= { ltfsTraps 3 } 49 | 50 | ltfsErrorTrap NOTIFICATION-TYPE 51 | OBJECTS { 52 | ltfsInfo 53 | } 54 | STATUS current 55 | DESCRIPTION 56 | "This trap indicates that a fatal error is detected in LTFS process." 57 | ::= { ltfsTraps 4 } 58 | END 59 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/LtfsSnmpTrapDef.txt: -------------------------------------------------------------------------------- 1 | # 2 | # LTFS SNMP TRAP DEFINITION FILE 3 | # 4 | 5 | # 14104I # Launched command 6 | # 14105I # This binary type 7 | # 14106I # GCC version 8 | # 17087I # Kernel version 9 | # 17089I # Distribution 10 | # 14063I # Sync type 11 | # 17085I # Plugin: Loading message 12 | # 12165I # lin_tape version 13 | # 12118I # Changer or Drive identification 14 | # 12162I # Vendor ID 15 | # 12159I # Firmware revision 16 | # 12160I # Changer serial 17 | # 12158I # Opening a device through ibmtape driver 18 | # 12160I # Drive serial 19 | # 17160I # Maximum device block size 20 | # 12158I # Opening a device through ibmtape driver 21 | # 16500I # Cartridge repository plugin 22 | # 13500I # GPFS: On-demand dentry cache is initialized 23 | # 11679I # This node is started up as 'primary' node 24 | # 11545I # Rebuilding the cartridge inventory 25 | # 11675I # Cartridge allocation information 26 | # 13500I # GPFS: On-demand dentry cache is initialized 27 | # 11666I # Notify library status change : 353 => 354 28 | # 11705I # Set read lock on the lock of the multi-node config file 29 | # 14708I # LTFS admin server is listening on port 2112 30 | 14111I # Initial setup completed successfully 31 | # 14112I # Invoke 'mount' command to check the result of final setup 32 | # 14113I # Specified mount point is listed if succeeded 33 | # 14029I # Ready to receive file system requests 34 | # 14158I # Holding the regular node lock in the main process of LTFS 35 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libltfs.la 36 | 37 | noinst_HEADERS = 38 | nobase_pkginclude_HEADERS = ltfs.h tape_ops.h ltfs_types.h ltfslogging.h ltfstrace.h ltfs_thread.h ltfs_locking.h queue.h plugin.h config_file.h ltfs_error.h 39 | 40 | libltfs_la_SOURCES = \ 41 | ltfs.c \ 42 | ltfs_internal.c \ 43 | ltfs_fsops.c \ 44 | ltfs_fsops_raw.c \ 45 | fs.c \ 46 | xml_common.c \ 47 | xml_writer.c \ 48 | xml_reader.c \ 49 | xml_writer_libltfs.c \ 50 | xml_reader_libltfs.c \ 51 | label.c \ 52 | base64.c \ 53 | tape.c \ 54 | iosched.c \ 55 | dcache.c \ 56 | kmi.c \ 57 | pathname.c \ 58 | index_criteria.c \ 59 | xattr.c \ 60 | ltfslogging.c \ 61 | ltfstrace.c \ 62 | config_file.c \ 63 | plugin.c \ 64 | periodic_sync.c \ 65 | arch/uuid_internal.c \ 66 | arch/filename_handling.c \ 67 | arch/time_internal.c \ 68 | arch/arch_info.c \ 69 | arch/errormap.c 70 | 71 | libltfs_la_DEPENDENCIES = ../../messages/libltfs_dat.o ../../messages/internal_error_dat.o 72 | libltfs_la_LIBADD = ../../messages/libltfs_dat.o ../../messages/internal_error_dat.o 73 | libltfs_la_CPPFLAGS = @AM_CPPFLAGS@ -I .. 74 | libltfs_la_LDFLAGS = @AM_LDFLAGS@ 75 | 76 | install-data-local: 77 | if [ ! -d "$(prefix)/share/snmp" ]; then \ 78 | mkdir -p "$(prefix)/share/snmp"; \ 79 | cp LtfsSnmpTrapDef.txt LTFS-MIB.txt "$(prefix)/share/snmp/"; \ 80 | elif [ ! -f "$(prefix)/share/snmp/LtfsSnmpTrapDef.txt" ]; then \ 81 | cp LtfsSnmpTrapDef.txt "$(prefix)/share/snmp/LtfsSnmpTrapDef.txt"; \ 82 | elif [ ! -f "$(prefix)/share/snmp/LTFS-MIB.txt" ]; then \ 83 | cp LTFS-MIB.txt "$(prefix)/share/snmp/LTFS-MIB.txt"; \ 84 | fi 85 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/arch_info.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/arch_info.h 39 | ** 40 | ** DESCRIPTION: Prototypes for platform information 41 | ** 42 | ** AUTHOR: Atsushi Abe 43 | ** IBM Yamato, Japan 44 | ** PISTE@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef arch_info_h_ 50 | #define arch_info_h_ 51 | 52 | #if defined(__linux__) 53 | 54 | #if defined(__i386__) 55 | #define BUILD_SYS_FOR "This binary is built for Linux (i386)" 56 | #define BUILD_SYS_GCC __VERSION__ 57 | #elif defined(__x86_64__) 58 | #define BUILD_SYS_FOR "This binary is built for Linux (x86_64)" 59 | #define BUILD_SYS_GCC __VERSION__ 60 | #elif defined(__ppc__) 61 | #define BUILD_SYS_FOR "This binary is built for Linux (ppc)" 62 | #define BUILD_SYS_GCC __VERSION__ 63 | #elif defined(__ppc64__) 64 | #define BUILD_SYS_FOR "This binary is built for Linux (ppc64)" 65 | #define BUILD_SYS_GCC __VERSION__ 66 | #else 67 | #define BUILD_SYS_FOR "This binary is built for Linux (unknown)" 68 | #define BUILD_SYS_GCC __VERSION__ 69 | #endif 70 | 71 | #elif defined(__APPLE__) 72 | 73 | #define BUILD_SYS_FOR "This binary is built for Mac OS X " 74 | #define BUILD_SYS_GCC __VERSION__ 75 | 76 | #elif defined(mingw_PLATFORM) 77 | 78 | #define BUILD_SYS_FOR "This binary is built for Windows" 79 | #define BUILD_SYS_GCC __VERSION__ 80 | 81 | #else 82 | 83 | #define BUILD_SYS_FOR "This binary is built on an unknown OS" 84 | #define BUILD_SYS_GCC __VERSION__ 85 | 86 | #endif 87 | 88 | void show_runtime_system_info(void); 89 | 90 | #endif /* arch_info_h_ */ 91 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/filename_handling.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/filename_handling.h 39 | ** 40 | ** DESCRIPTION: Prototypes for platform-specific filename handling functions. 41 | ** 42 | ** AUTHOR: Takashi Ashida 43 | ** IBM Yamato, Japan 44 | ** ashida@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | ** 48 | ** (C) Copyright 2015 - 2017 Hewlett Packard Enterprise Development LP 49 | ** 10/13/17 Added support for SNIA 2.4 50 | ** 51 | ************************************************************************************* 52 | */ 53 | 54 | #ifndef filename_handling_h_ 55 | #define filename_handling_h_ 56 | 57 | #include "libltfs/ltfs.h" 58 | 59 | void update_platform_safe_name(struct dentry* dentry, bool handle_invalid_char, struct ltfs_index *idx); 60 | int ltfs_compare_names(const char *name1, const char *name2, int *result); 61 | // HPE MD 22.09.2017 Added following functions for SNIA 2.4 62 | void perform_name_percent_encoding(struct dentry* dentry); 63 | void perform_xattr_percent_encoding(struct xattr_info* xattr); 64 | void update_xattr_safe_name(struct xattr_info* xattr); 65 | 66 | #endif /* filename_handling_h_ */ 67 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/osx/osx_string.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/osx/osx_string.c 39 | ** 40 | ** DESCRIPTION: Implements some string functions missing on OS X. 41 | ** 42 | ** AUTHOR: Michael A. Richmond 43 | ** IBM Almaden Research Center 44 | ** mar@almaden.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifdef __APPLE__ 50 | 51 | #include "osx_string.h" 52 | 53 | size_t strnlen(const char *s, size_t maxlen) { 54 | const char *null_pos = memchr(s, '\0', maxlen); 55 | 56 | if (null_pos) { 57 | return null_pos - s; 58 | } else { 59 | return maxlen; 60 | } 61 | } 62 | 63 | char *strndup(const char *s, size_t maxlen) { 64 | 65 | size_t length = strnlen(s, maxlen); 66 | char *destination = malloc(length + 1); 67 | 68 | if(destination == NULL) { 69 | return NULL; 70 | } 71 | 72 | destination[length] = '\0'; 73 | return memcpy(destination, s, length); 74 | } 75 | 76 | #endif /* __APPLE__ */ 77 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/osx/osx_string.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/osx/osx_string.h 39 | ** 40 | ** DESCRIPTION: Prototypes for string functions missing on OS X. 41 | ** 42 | ** AUTHOR: Michael A. Richmond 43 | ** IBM Almaden Research Center 44 | ** mar@almaden.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __osx_string_h 50 | #define __osx_string_h 51 | 52 | #ifdef __APPLE__ 53 | 54 | #include 55 | #include 56 | #include 57 | 58 | size_t strnlen(const char *s, size_t maxlen); 59 | 60 | char *strndup(const char *s, size_t maxlen); 61 | 62 | #endif /* __APPLE__ */ 63 | 64 | #endif /* __osx_string_h */ 65 | 66 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/signal_internal.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/signal_internal.h 39 | ** 40 | ** DESCRIPTION: Prototypes for platform-specific signal functions. 41 | ** 42 | ** AUTHOR: Atsushi Abe 43 | ** IBM Yamato, Japan 44 | ** PISTE@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef signal_internal_h_ 50 | #define signal_internal_h_ 51 | 52 | #ifdef mingw_PLATFORM 53 | #include "libltfs/arch/win/win_util.h" 54 | #endif 55 | #include 56 | 57 | #ifdef __APPLE__ 58 | typedef void (*sighandler_t)(int); 59 | #endif 60 | 61 | #endif /* time_internal_h_ */ 62 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/uuid_internal.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/uuid_internal.h 39 | ** 40 | ** DESCRIPTION: Implements platform-specific UUID functions. 41 | ** 42 | ** AUTHOR: Brian Biskeborn 43 | ** IBM Almaden Research Center 44 | ** bbiskebo@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef mingw_PLATFORM 50 | 51 | #include 52 | 53 | void gen_uuid_unix(char *uuid_str) 54 | { 55 | uuid_t tape_uuid; 56 | uuid_generate(tape_uuid); 57 | uuid_unparse_lower(tape_uuid, uuid_str); 58 | } 59 | 60 | #endif 61 | 62 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/uuid_internal.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/uuid_internal.h 39 | ** 40 | ** DESCRIPTION: Prototypes for platform-specific UUID functions. 41 | ** 42 | ** AUTHOR: Brian Biskeborn 43 | ** IBM Almaden Research Center 44 | ** bbiskebo@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __uuid_internal_h__ 50 | #define __uuid_internal_h__ 51 | 52 | #ifdef mingw_PLATFORM 53 | #include "libltfs/arch/win/win_util.h" 54 | #define ltfs_gen_uuid(uuid_str) gen_uuid_win(uuid_str) 55 | 56 | #else 57 | void gen_uuid_unix(char *uuid_str); 58 | #define ltfs_gen_uuid(uuid_str) gen_uuid_unix(uuid_str) 59 | 60 | #endif /* mingw_PLATFORM */ 61 | 62 | #endif /* __uuid_internal_h__ */ 63 | 64 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/version.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/version.h 39 | ** 40 | ** DESCRIPTION: Platform-specific version information. 41 | ** 42 | ** AUTHOR: Michael A. Richmond 43 | ** IBM Almaden Research Center 44 | ** mar@almaden.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef VERSION_H_ 50 | #define VERSION_H_ 51 | 52 | /* 53 | * Creator tag value format: 54 | * PackageName Version - Platform - Program 55 | * IBM LTFS 0.2.0 - Linux - mkltfs 56 | */ 57 | #define CREATOR_STRING_FORMAT "%s %s - %s - %s" 58 | 59 | #ifdef __APPLE__ 60 | #define PLATFORM "Mac OS X" 61 | #elif mingw_PLATFORM 62 | #define PLATFORM "Windows" 63 | #else 64 | #define PLATFORM "Linux" 65 | #endif /* __APPLE__ */ 66 | 67 | #endif /* VERSION_H_ */ 68 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/win/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 1.3.0.0 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2012 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libwinlog.la 36 | libdir = @libdir@/ltfs 37 | 38 | libwinlog_la_SOURCES = winlog.c 39 | libwinlog_la_CPPFLAGS = -I$(top_srcdir)/src @AM_CPPFLAGS@ 40 | libwinlog_la_LDFLAGS = -avoid-version -module 41 | 42 | install-exec-hook: 43 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 44 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/arch/win/winlog.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 1.3.0.0 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2012 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: arch/win/winlog.c 39 | ** 40 | ** DESCRIPTION: Implements MinGW (Windows) specific log 'functions 41 | ** 42 | ************************************************************************************* 43 | */ 44 | 45 | #ifndef WINLOG_H_ 46 | #define WINLOG_H_ 47 | 48 | // prototype 49 | void vsyslog(int priority, const char *format, va_list ap); 50 | void syslog(int priority, const char *format, ...); 51 | 52 | #endif /* WINLOG_H_ */ 53 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/base64.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: base64.c 39 | ** 40 | ** DESCRIPTION: Prototype for base64 decoder. 41 | ** 42 | ** AUTHORS: Brian Biskeborn 43 | ** IBM Almaden Research Center 44 | ** bbiskebo@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __base64_h 50 | #define __base64_h 51 | 52 | #include 53 | 54 | size_t base64_decode(const unsigned char *enc, size_t nbytes_in, unsigned char **dec); 55 | 56 | #endif /* __base64_h */ 57 | 58 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/index_criteria.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: index_criteria.h 39 | ** 40 | ** DESCRIPTION: Header file for the routines that deal with the index partition 41 | ** criteria. 42 | ** 43 | ** AUTHOR: Lucas C. Villa Real 44 | ** IBM Almaden Research Center 45 | ** lucasvr@us.ibm.com 46 | ** 47 | ************************************************************************************* 48 | */ 49 | #ifndef __index_criteria_h 50 | #define __index_criteria_h 51 | 52 | #ifdef __cplusplus 53 | extern "C" { 54 | #endif 55 | 56 | int index_criteria_parse(const char *filterrules, struct ltfs_volume *vol); 57 | int index_criteria_dup_rules(struct index_criteria *dest_ic, struct index_criteria *src_ic); 58 | int index_criteria_set_allow_update(bool allow, struct ltfs_volume *vol); 59 | bool index_criteria_match(struct dentry *d, struct ltfs_volume *vol); 60 | size_t index_criteria_get_max_filesize(struct ltfs_volume *vol); 61 | const char **index_criteria_get_glob_patterns(struct ltfs_volume *vol); 62 | void index_criteria_free(struct index_criteria *ic); 63 | 64 | #ifdef __cplusplus 65 | } 66 | #endif 67 | 68 | #endif /* __index_criteria_h */ 69 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/iosched.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: iosched.h 39 | ** 40 | ** DESCRIPTION: Header for the interface with the pluggable I/O schedulers. 41 | ** 42 | ** AUTHOR: Lucas C. Villa Real 43 | ** IBM Almaden Research Center 44 | ** lucasvr@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | #ifndef __iosched_h 49 | #define __iosched_h 50 | 51 | #ifdef __cplusplus 52 | extern "C" { 53 | #endif 54 | 55 | #include "plugin.h" 56 | #include "iosched_ops.h" 57 | 58 | int iosched_init(struct libltfs_plugin *plugin, struct ltfs_volume *vol); 59 | int iosched_destroy(struct ltfs_volume *vol); 60 | int iosched_open(const char *path, bool open_write, struct dentry **dentry, 61 | struct ltfs_volume *vol); 62 | int iosched_close(struct dentry *d, bool flush, struct ltfs_volume *vol); 63 | bool iosched_initialized(struct ltfs_volume *vol); 64 | ssize_t iosched_read(struct dentry *d, char *buf, size_t size, off_t offset, 65 | struct ltfs_volume *vol); 66 | ssize_t iosched_write(struct dentry *d, const char *buf, size_t size, off_t offset, 67 | bool isupdatetime, struct ltfs_volume *vol); 68 | int iosched_flush(struct dentry *d, bool closeflag, struct ltfs_volume *vol); 69 | int iosched_truncate(struct dentry *d, off_t length, struct ltfs_volume *vol); 70 | uint64_t iosched_get_filesize(struct dentry *d, struct ltfs_volume *vol); 71 | int iosched_update_data_placement(struct dentry *d, struct ltfs_volume *vol); 72 | 73 | #ifdef __cplusplus 74 | } 75 | #endif 76 | 77 | 78 | #endif /* __iosched_h */ 79 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/kmi.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: libltfs/kmi.h 39 | ** 40 | ** DESCRIPTION: Key manager interface API 41 | ** 42 | ** AUTHOR: Yutaka Oishi 43 | ** IBM Yamato, Japan 44 | ** oishi@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __kmi_h 50 | #define __kmi_h 51 | 52 | #ifdef __cplusplus 53 | extern "C" { 54 | #endif 55 | 56 | #include "plugin.h" 57 | #include "kmi_ops.h" 58 | 59 | int kmi_init(struct libltfs_plugin * const plugin, struct ltfs_volume * const vol); 60 | int kmi_destroy(struct ltfs_volume * const vol); 61 | bool kmi_initialized(const struct ltfs_volume * const vol); 62 | int kmi_get_key(unsigned char **keyalias, unsigned char **key, void * const kmi_handle); 63 | int kmi_print_help_message(const struct kmi_ops * const ops); 64 | int kmi_parse_opts(void * const kmi_handle, void *opt_args); 65 | 66 | #ifdef __cplusplus 67 | } 68 | #endif 69 | 70 | 71 | #endif /* __kmi_h */ 72 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/kmi_ops.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: kmi_ops.h 39 | ** 40 | ** DESCRIPTION: Defines operations that must be supported by the key manager interface plugins. 41 | ** 42 | ** AUTHOR: Yutaka Oishi 43 | ** IBM Yamato, Japan 44 | ** oishi@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | #ifndef __kmi_ops_h 49 | #define __kmi_ops_h 50 | 51 | #include "ltfs.h" 52 | 53 | /** 54 | * kmi_ops structure. 55 | * Defines operations that must be supported by the key manager interface plugins. 56 | */ 57 | struct kmi_ops { 58 | void *(*init)(struct ltfs_volume *vol); 59 | int (*destroy)(void * const kmi_handle); 60 | int (*get_key)(unsigned char ** const keyalias, unsigned char ** const key, void * const kmi_handle); 61 | int (*help_message)(void); 62 | int (*parse_opts)(void *opt_args); 63 | }; 64 | 65 | struct kmi_ops *kmi_get_ops(void); 66 | const char *kmi_get_message_bundle_name(void ** const message_data); 67 | 68 | #endif /* __kmi_ops_h */ 69 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/label.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: label.h 39 | ** 40 | ** DESCRIPTION: Prototypes for label handling functions. 41 | ** 42 | ** AUTHOR: Takashi Ashida 43 | ** IBM Yamato, Japan 44 | ** ashida@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef label_h_ 50 | #define label_h_ 51 | 52 | #include "ltfs.h" 53 | 54 | int label_alloc(struct ltfs_label **label); 55 | void label_free(struct ltfs_label **label); 56 | int label_compare(struct ltfs_label *label1, struct ltfs_label *label2); 57 | void label_make_ansi_label(struct ltfs_volume *vol, char *label, size_t size); 58 | 59 | #endif /* label_h_ */ 60 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/ltfs_fuse_version.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: ltfs_fuse_version.h 39 | ** 40 | ** DESCRIPTION: Defines the minimum FUSE version for all modules. 41 | ** 42 | ** AUTHOR: Michael A. Richmond 43 | ** IBM Almaden Research Center 44 | ** mar@almaden.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __ltfs_fuse_version_h__ 50 | #define __ltfs_fuse_version_h__ 51 | 52 | #define FUSE_USE_VERSION 26 53 | 54 | #endif /* __ltfs_fuse_version_h__ */ 55 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/ltfs_thread.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: ltfs_thread.c 39 | ** 40 | ** DESCRIPTION: LTFS thread operation imprementation 41 | ** 42 | ** AUTHORS: Atsushi Abe 43 | ** IBM Tokyo Lab., Japan 44 | ** piste@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifdef __APPLE__ 50 | 51 | #include 52 | #include 53 | 54 | uint32_t ltfs_get_thread_id(void) 55 | { 56 | uint32_t tid; 57 | 58 | tid = (uint32_t)pthread_mach_thread_np(pthread_self()); 59 | 60 | return tid; 61 | } 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/ltfssnmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: snmp/ltfssnmp.h 39 | ** 40 | ** DESCRIPTION: Implements the snmp trap functions. 41 | ** 42 | ** AUTHORS: Masahide Washizawa 43 | ** IBM Tokyo Lab., Japan 44 | ** washi@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __LTFSSNMP_H__ 50 | #define __LTFSSNMP_H__ 51 | 52 | #if ((!defined (__APPLE__)) && (!defined (mingw_PLATFORM))) 53 | #include 54 | #include 55 | #include 56 | #endif /* ((!defined (__APPLE__)) && (!defined (mingw_PLATFORM))) */ 57 | 58 | #include 59 | #include 60 | #include "libltfs/queue.h" 61 | #include "libltfs/ltfs_error.h" 62 | #include "libltfs/ltfslogging.h" 63 | 64 | /* 65 | * function declarations 66 | */ 67 | int ltfs_snmp_init(char *); 68 | int ltfs_snmp_finish(); 69 | bool is_snmp_enabled(void); 70 | bool is_snmp_trapid(const char *); 71 | int send_ltfsStartTrap(void); 72 | int send_ltfsStopTrap(void); 73 | int send_ltfsInfoTrap(char *); 74 | int send_ltfsErrorTrap(char *); 75 | 76 | #endif /* __LTFSSNMP_H__ */ 77 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/periodic_sync.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: periodic_sync.c 39 | ** 40 | ** DESCRIPTION: Prototypes for the periodic sync feature 41 | ** 42 | ** AUTHOR: Atsushi Abe 43 | ** IBM Yamato, Japan 44 | ** PISTE@jp.ibm.com 45 | ************************************************************************************* 46 | */ 47 | #ifndef __periodic_sync_h 48 | #define __periodic_sync_h 49 | 50 | #ifdef __cplusplus 51 | extern "C" { 52 | #endif 53 | 54 | int periodic_sync_thread_init(int sec, struct ltfs_volume *vol); 55 | int periodic_sync_thread_destroy(void* syncer_handle); 56 | bool periodic_sync_thread_initialized(void* syncer_handle); 57 | int periodic_sync_thread_signal(void *syncer_handle); 58 | 59 | #ifdef __cplusplus 60 | } 61 | #endif 62 | 63 | #endif /* __periodic_sync_h */ 64 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/uthash_ext.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | */ 34 | 35 | /************************************************************************************* 36 | ** FILE NAME: uthash_ext.h 37 | ** 38 | ** DESCRIPTION: Header file for HASH function extensions. 39 | ** 40 | ** AUTHORS: 41 | ** IBM Yamato, Japan 42 | ** 43 | ************************************************************************************* 44 | */ 45 | #ifndef __uthash_ext_h 46 | #define __uthash_ext_h 47 | 48 | #include "uthash.h" 49 | 50 | #ifdef __cplusplus 51 | extern "C" { 52 | #endif 53 | 54 | #define HASH_FIND_PARTIAL(structure,start,length,table,search,result) \ 55 | do { \ 56 | structure *s, *tmp; \ 57 | result = NULL; \ 58 | HASH_ITER(hh, table, s, tmp) { \ 59 | if (HASH_KEYCMP(&s->start, &search.start, length) == 0) { \ 60 | result = s; \ 61 | break; \ 62 | } \ 63 | } \ 64 | } while (0) 65 | 66 | #ifdef __cplusplus 67 | } 68 | #endif 69 | 70 | #endif /* uthash_ext_h */ 71 | -------------------------------------------------------------------------------- /ltfs/src/libltfs/xml_common.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: xml_common.c 39 | ** 40 | ** DESCRIPTION: XML module initialization and teardown routines. 41 | ** 42 | ** AUTHORS: Brian Biskeborn 43 | ** IBM Almaden Research Center 44 | ** bbiskebo@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #include "xml.h" 50 | 51 | void xml_init() 52 | { 53 | LIBXML_TEST_VERSION; 54 | } 55 | 56 | void xml_finish() 57 | { 58 | xmlCleanupParser(); 59 | } 60 | -------------------------------------------------------------------------------- /ltfs/src/ltfs_copyright.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: ltfs_copyright.h 39 | ** 40 | ** DESCRIPTION: Defines components of the LTFS copyright string. 41 | ** 42 | ** AUTHOR: Brian Biskeborn 43 | ** IBM Almaden Research Center 44 | ** bbiskebo@us.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __ltfs_copyright_h__ 50 | #define __ltfs_copyright_h__ 51 | 52 | #ifdef __cplusplus 53 | extern "C" { 54 | #endif 55 | 56 | #define LTFS_COPYRIGHT_0 "Licensed Materials - Property of IBM" 57 | #define LTFS_COPYRIGHT_1 "IBM Linear Tape File System Single Drive Edition" 58 | #define LTFS_COPYRIGHT_2 "(C) Copyright IBM Corp. 2011, 2012 All Rights Reserved" 59 | #define LTFS_COPYRIGHT_3 "US Government Users Restricted Rights - Use, duplication or " 60 | #define LTFS_COPYRIGHT_4 "disclosure restricted by GSA ADP Schedule Contract with" 61 | #define LTFS_COPYRIGHT_5 "IBM Corp." 62 | 63 | #ifdef __cplusplus 64 | } 65 | #endif 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /ltfs/src/ltfs_msgs.h: -------------------------------------------------------------------------------- 1 | // 2 | // Values are 32 bit values laid out as follows: 3 | // 4 | // 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 5 | // 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 6 | // +---+-+-+-----------------------+-------------------------------+ 7 | // |Sev|C|R| Facility | Code | 8 | // +---+-+-+-----------------------+-------------------------------+ 9 | // 10 | // where 11 | // 12 | // Sev - is the severity code 13 | // 14 | // 00 - Success 15 | // 01 - Informational 16 | // 10 - Warning 17 | // 11 - Error 18 | // 19 | // C - is the Customer code flag 20 | // 21 | // R - is a reserved bit 22 | // 23 | // Facility - is the facility code 24 | // 25 | // Code - is the facility's status code 26 | // 27 | // 28 | // Define the facility codes 29 | // 30 | 31 | 32 | // 33 | // Define the severity codes 34 | // 35 | #define STATUS_SEVERITY_WARNING 0x2 36 | #define STATUS_SEVERITY_SUCCESS 0x0 37 | #define STATUS_SEVERITY_INFORMATIONAL 0x1 38 | #define STATUS_SEVERITY_ERROR 0x3 39 | 40 | 41 | // 42 | // MessageId: LTFS_ERROR_EVENT 43 | // 44 | // MessageText: 45 | // 46 | // The LTFS file system encountered an error 47 | // 48 | #define LTFS_ERROR_EVENT ((DWORD)0x00000064L) 49 | 50 | -------------------------------------------------------------------------------- /ltfs/src/ltfs_msgs.mc: -------------------------------------------------------------------------------- 1 | ;/* 2 | ; This MC file allows us to suppress the warnings in the event log 3 | ; about there being no provider for our messages. 4 | ; 5 | ; To compile this MC file and generate a new RC file, use the following 6 | ; command: 7 | ; 8 | ; mc.exe ltfs_msgs.mc 9 | ;*/ 10 | MessageIdTypedef=DWORD 11 | 12 | SeverityNames=(Success=0x0:STATUS_SEVERITY_SUCCESS 13 | Informational=0x1:STATUS_SEVERITY_INFORMATIONAL 14 | Warning=0x2:STATUS_SEVERITY_WARNING 15 | Error=0x3:STATUS_SEVERITY_ERROR 16 | ) 17 | 18 | MessageId=100 19 | SymbolicName=LTFS_ERROR_EVENT 20 | Language=English 21 | The LTFS file system encountered an error 22 | . 23 | 24 | 25 | -------------------------------------------------------------------------------- /ltfs/src/ltfs_msgs.rc: -------------------------------------------------------------------------------- 1 | LANGUAGE 0x9,0x1 2 | 1 11 "MSG00001.bin" 3 | -------------------------------------------------------------------------------- /ltfs/src/ltfsprintf.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ************************************************************************************* 34 | ** 35 | ** COMPONENT NAME: IBM Linear Tape File System 36 | ** 37 | ** FILE NAME: ltfsprintf.h 38 | ** 39 | ** DESCRIPTION: Implements a basic printf based logging function. 40 | ** This function should not be used as a permanent logging 41 | ** in the LTFS code base unless there is a compelling reason 42 | ** to avoid dependency on the official logging framework. 43 | ** 44 | ** AUTHORS: Michael A. Richmond 45 | ** IBM Almaden Research Center 46 | ** mar@almaden.ibm.com 47 | ** 48 | ************************************************************************************* 49 | */ 50 | 51 | 52 | #ifndef __ltfs_printf_h 53 | #define __ltfs_printf_h 54 | 55 | #ifdef __cplusplus 56 | extern "C" { 57 | #endif 58 | 59 | #include 60 | 61 | /* For printing debug messages */ 62 | #define ltfsprintf(fmt, ...) \ 63 | do { \ 64 | fprintf(stderr, "["__FILE__"::%d] "fmt"\n", __LINE__, ##__VA_ARGS__); \ 65 | } while(0) 66 | 67 | #ifdef __cplusplus 68 | } 69 | #endif 70 | 71 | #endif /* __ltfs_printf_h */ 72 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/crc32c_crc.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: crc32c_crc.h 39 | ** 40 | ** DESCRIPTION: Implements CRC32C CRC usd by LTO based drives 41 | ** 42 | ** AUTHORS: Mitsuhiro Nishida 43 | ** IBM Tokyo Lab., Japan 44 | ** mini@jp.ibm.com 45 | ** 46 | ** Atsushi Abe 47 | ** IBM Tokyo Lab., Japan 48 | ** piste@jp.ibm.com 49 | ** 50 | ************************************************************************************* 51 | */ 52 | 53 | #ifndef __crc32c_crc_h 54 | #define __crc32c_crc_h 55 | 56 | #ifdef __cplusplus 57 | extern "C" { 58 | #endif 59 | 60 | void *memcpy_crc32c_enc(void *dest, const void *src, size_t n); 61 | int memcpy_crc32c_check(void *dest, const void *src, size_t n); 62 | void crc32c_enc(void *buf, size_t n); 63 | int crc32c_check(void *buf, size_t n); 64 | 65 | #ifdef __cplusplus 66 | } 67 | #endif 68 | 69 | #endif // __crc32c_crc_h 70 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/generic/file/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libdriver-file.la 36 | libdir = @libdir@/ltfs 37 | 38 | AM_LIBTOOLFLAGS = --tag=disable-static 39 | 40 | libdriver_file_la_SOURCES = filedebug_tc.c 41 | libdriver_file_la_DEPENDENCIES = ../../../../messages/driver_generic_file_dat.o 42 | libdriver_file_la_LIBADD = ../../../../messages/driver_generic_file_dat.o 43 | libdriver_file_la_LDFLAGS = -avoid-version -module 44 | libdriver_file_la_CPPFLAGS = @AM_CPPFLAGS@ -I ../../.. 45 | 46 | install-exec-hook: 47 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 48 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/generic/itdtimg/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libdriver-itdtimg.la 36 | libdir = @libdir@/ltfs 37 | 38 | AM_LIBTOOLFLAGS = --tag=disable-static 39 | 40 | libdriver_itdtimg_la_SOURCES = itdtimg_tc.c 41 | libdriver_itdtimg_la_DEPENDENCIES = ../../../../messages/driver_generic_itdtimg_dat.o 42 | libdriver_itdtimg_la_LIBADD = ../../../../messages/driver_generic_itdtimg_dat.o 43 | libdriver_itdtimg_la_LDFLAGS = -avoid-version -module 44 | libdriver_itdtimg_la_CPPFLAGS = @AM_CPPFLAGS@ -I ../../.. 45 | 46 | install-exec-hook: 47 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 48 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ibmtape/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | lib_LTLIBRARIES = libdriver-ibmtape.la 36 | libdir = @libdir@/ltfs 37 | 38 | AM_LIBTOOLFLAGS = --tag=disable-static 39 | 40 | libdriver_ibmtape_la_SOURCES = ibmtape_cmn.c ibmtape_tc.c 41 | libdriver_ibmtape_la_DEPENDENCIES = ../../../../messages/driver_linux_ibmtape_dat.o ./libdriver_ibmtape_la-reed_solomon_crc.lo ./libdriver_ibmtape_la-crc32c_crc.lo 42 | libdriver_ibmtape_la_LIBADD = ../../../../messages/driver_linux_ibmtape_dat.o ./libdriver_ibmtape_la-reed_solomon_crc.lo ./libdriver_ibmtape_la-crc32c_crc.lo 43 | libdriver_ibmtape_la_LDFLAGS = -avoid-version -module 44 | libdriver_ibmtape_la_CPPFLAGS = @AM_CPPFLAGS@ -I ../../.. -I ../.. 45 | 46 | libdriver_ibmtape_la-reed_solomon_crc.lo: ../../reed_solomon_crc.c 47 | $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdriver_ibmtape_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(CRC_OPTIMIZE) -MT libdriver_ibmtape_la-reed_solomon_crc.lo -MD -MP -c -o libdriver_ibmtape_la-reed_solomon_crc.lo $< 48 | 49 | libdriver_ibmtape_la-crc32c_crc.lo: ../../crc32c_crc.c 50 | $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdriver_ibmtape_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(CRC_OPTIMIZE) -MT libdriver_ibmtape_la-crc32c_crc.lo -MD -MP -c -o libdriver_ibmtape_la-crc32c_crc.lo $< 51 | 52 | install-exec-hook: 53 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 54 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # Hewlett Packard LTFS backend for LTO and DAT tape drives 3 | # 4 | # FILE: Makefile.am 5 | # 6 | # CONTENTS: Makefile specifics for ltotape backend 7 | # 8 | # (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 9 | # 10 | # This program is free software; you can redistribute it and/or modify it 11 | # under the terms of version 2.1 of the GNU Lesser General Public License 12 | # as published by the Free Software Foundation. 13 | # 14 | # This program is distributed in the hope that it will be useful, but 15 | # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 16 | # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 17 | # License for more details. 18 | # 19 | # You should have received a copy of the GNU General Public License along 20 | # with this program; if not, write to: 21 | # Free Software Foundation, Inc. 22 | # 51 Franklin Street, Fifth Floor 23 | # Boston, MA 02110-1301, USA. 24 | # 25 | 26 | lib_LTLIBRARIES = libdriver-ltotape.la 27 | libdir = @libdir@/ltfs 28 | 29 | AM_LIBTOOLFLAGS = --tag=disable-static 30 | 31 | libdriver_ltotape_la_SOURCES = ltotape.c ltotape_diag.c ltotape_platform.c 32 | libdriver_ltotape_la_DEPENDENCIES = $(top_srcdir)/messages/driver_ltotape_dat.o 33 | libdriver_ltotape_la_LIBADD = $(top_srcdir)/messages/driver_ltotape_dat.o 34 | libdriver_ltotape_la_CPPFLAGS = -I$(top_srcdir)/src @AM_CPPFLAGS@ 35 | libdriver_ltotape_la_LDFLAGS = -avoid-version -module 36 | 37 | install-exec-hook: 38 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 39 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/ltotape.c: -------------------------------------------------------------------------------- 1 | ../../osx/ltotape/ltotape.c -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/ltotape.h: -------------------------------------------------------------------------------- 1 | ../../osx/ltotape/ltotape.h -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/ltotape_diag.c: -------------------------------------------------------------------------------- 1 | ../../osx/ltotape/ltotape_diag.c -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/ltotape_diag.h: -------------------------------------------------------------------------------- 1 | ../../osx/ltotape/ltotape_diag.h -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/ltotape_supdevs.h: -------------------------------------------------------------------------------- 1 | ../../osx/ltotape/ltotape_supdevs.h -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/linux/ltotape/ltotape_timeout.h: -------------------------------------------------------------------------------- 1 | ../../osx/ltotape/ltotape_timeout.h -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/osx/iokit/device_identifiers.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: tape_drivers/osx/iokit/device_identifiers.h 39 | ** 40 | ** DESCRIPTION: Header file defining devices supported for 41 | ** LTFS. 42 | ** 43 | ** AUTHOR: Michael A. Richmond 44 | ** IBM Almaden Research Center 45 | ** mar@almaden.ibm.com 46 | ** 47 | ************************************************************************************* 48 | */ 49 | 50 | 51 | #include "tape_timeout.h" 52 | #include "tape_drivers/tape_drivers.h" 53 | 54 | #ifndef __device_identifiers_h 55 | #define __device_identifiers_h 56 | 57 | #define IBM_VENDOR_ID "IBM" 58 | struct supported_device { 59 | char vendor_id[VENDOR_ID_LENGTH + 1]; 60 | char product_id[PRODUCT_ID_LENGTH + 1]; 61 | int device_code; 62 | DRIVE_TYPE drive_type; 63 | char product_name[PRODUCT_NAME_LENGTH + 1]; 64 | }; 65 | 66 | #define DEVICE(v, p, c, t, n) &(struct supported_device){ v, p, c, t, n } 67 | 68 | extern struct supported_device *supported_devices[]; 69 | 70 | #endif /* __device_identifiers_h */ 71 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/osx/iokit/scsi_mode_pages.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: tape_drivers/osx/iokit/scsi_mode_pages.h 39 | ** 40 | ** DESCRIPTION: Header file for raw SCSI mode pages. 41 | ** 42 | ** AUTHOR: Michael A. Richmond 43 | ** IBM Almaden Research Center 44 | ** mar@almaden.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | 50 | #ifndef __scsi_mode_pages_h 51 | #define __scsi_mode_pages_h 52 | 53 | #define DATA_COMPRESSION_PAGE_NUMBER 0x0F 54 | #define DEVICE_CONFIGURATION_PAGE_NUMBER 0x10 55 | #define MEDIUM_SENSE_PAGE_NUMBER 0x23 56 | 57 | /* medium sense page (359x only) */ 58 | #define Capacity100 0x00 59 | #define Capacity75 0xC0 60 | #define Capacity50 0x80 61 | #define Capacity25 0x40 62 | #define Capacity100RangeHigh 0xff 63 | #define Capacity100RangeLow 0xC1 64 | #define Capacity75RangeHigh 0xC0 65 | #define Capacity75RangeLow 0x81 66 | #define Capacity50RangeHigh 0x80 67 | #define Capacity50RangeLow 0x41 68 | #define Capacity25RangeHigh 0x40 69 | #define Capacity25RangeLow 0x01 70 | 71 | #endif /* __scsi_mode_pages_h */ 72 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/osx/ltotape/ltotape_supdevs.h: -------------------------------------------------------------------------------- 1 | /************************************************************************************ 2 | ** 3 | ** Hewlett Packard LTFS backend for HP LTO and DAT tape drives 4 | ** 5 | ** FILE: ltotape_supdevs.h 6 | ** 7 | ** CONTENTS: Array of devices supported by this backend 8 | ** 9 | ** (C) Copyright 2015 - 2017 Hewlett Packard Enterprise Development LP 10 | ** 11 | ** This program is free software; you can redistribute it and/or modify it 12 | ** under the terms of version 2.1 of the GNU Lesser General Public License 13 | ** as published by the Free Software Foundation. 14 | ** 15 | ** This program is distributed in the hope that it will be useful, but 16 | ** WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 17 | ** or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 18 | ** License for more details. 19 | ** 20 | ** You should have received a copy of the GNU General Public License along 21 | ** with this program; if not, write to: 22 | ** Free Software Foundation, Inc. 23 | ** 51 Franklin Street, Fifth Floor 24 | ** Boston, MA 02110-1301, USA. 25 | ** 26 | ** 18 August 2010 27 | ** 28 | ************************************************************************************* 29 | */ 30 | 31 | #ifndef __ltotape_supdevs_h 32 | #define __ltotape_supdevs_h 33 | 34 | /* 35 | * Array of device types supported by this back end: 36 | */ 37 | const supported_device_type supported_devices[] = { 38 | { "Ultrium 5-SCSI ", drivefamily_lto, "HP LTO5", drive_lto5 }, 39 | { "Ultrium 6-SCSI ", drivefamily_lto, "HP LTO6", drive_lto6 }, 40 | { "Ultrium 7-SCSI ", drivefamily_lto, "HP LTO7", drive_lto7 }, 41 | { "Ultrium 8-SCSI ", drivefamily_lto, "HPE LTO8", drive_lto8 }, 42 | { "ULTRIUM 5 ", drivefamily_lto, "Quantum LTO5", drive_lto5 }, 43 | { "ULTRIUM 6 ", drivefamily_lto, "Quantum LTO6", drive_lto6 }, 44 | { "ULTRIUM 7 ", drivefamily_lto, "Quantum LTO7", drive_lto7 }, 45 | { "ULTRIUM 8 ", drivefamily_lto, "Quantum LTO8", drive_lto8 }, 46 | { "LTO-5 HH ", drivefamily_lto, "TANDBERG DATA LTO5", drive_lto5 }, 47 | { "LTO-6 HH ", drivefamily_lto, "TANDBERG DATA LTO6", drive_lto6 }, 48 | { "DAT320 ", drivefamily_dat, "HP DAT320", drive_dat }, 49 | { "DAT160 ", drivefamily_dat, "HP DAT160", drive_dat }, 50 | { (const char*)NULL, drivefamily_unknown, "Unknown", drive_unknown } 51 | }; 52 | 53 | #endif // __ltotape_diag_h 54 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/reed_solomon_crc.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: reed_solomon_crc.h 39 | ** 40 | ** DESCRIPTION: Implements Reed-Solomon GF(256) CRC usd by LTO based drives 41 | ** 42 | ** AUTHOR: Atsushi Abe 43 | ** IBM Tokyo Lab., Japan 44 | ** PISTE@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __reed_solomon_crc_h 50 | #define __reed_solomon_crc_h 51 | 52 | #ifdef __cplusplus 53 | extern "C" { 54 | #endif 55 | 56 | void *memcpy_rs_gf256_enc(void *dest, const void *src, size_t n); 57 | int memcpy_rs_gf256_check(void *dest, const void *src, size_t n); 58 | void rs_gf256_enc(void *buf, size_t n); 59 | int rs_gf256_check(void *buf, size_t n); 60 | 61 | #ifdef __cplusplus 62 | } 63 | #endif 64 | 65 | #endif // __reed_solomon_crc_h 66 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/tape_drivers.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** %Z% %I% %W% %G% %U% 3 | ** 4 | ** ZZ_Copyright_BEGIN 5 | ** 6 | ** 7 | ** Licensed Materials - Property of IBM 8 | ** 9 | ** IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | ** 11 | ** Copyright IBM Corp. 2010, 2014 12 | ** 13 | ** This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | ** (formally known as IBM Linear Tape File System) 15 | ** 16 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | ** you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | ** General Public License as published by the Free Software Foundation, 19 | ** version 2.1 of the License. 20 | ** 21 | ** The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | ** hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | ** implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | ** See the GNU Lesser General Public License for more details. 25 | ** 26 | ** You should have received a copy of the GNU Lesser General Public 27 | ** License along with this library; if not, write to the Free Software 28 | ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | ** or download the license from . 30 | ** 31 | ** 32 | ** ZZ_Copyright_END 33 | ** 34 | ************************************************************************************* 35 | ** 36 | ** COMPONENT NAME: IBM Linear Tape File System 37 | ** 38 | ** FILE NAME: tape_drivers/tape_drivers.h 39 | ** 40 | ** DESCRIPTION: Prototypes for common tape operations. 41 | ** 42 | ** AUTHOR: Yutaka Oishi 43 | ** IBM Yamato, Japan 44 | ** OISHI@jp.ibm.com 45 | ** 46 | ************************************************************************************* 47 | */ 48 | 49 | #ifndef __tape_drivers_h 50 | #define __tape_drivers_h 51 | 52 | #define KB (1024) 53 | #define MB (KB * 1024) 54 | #define GB (MB * 1024) 55 | 56 | #define VENDOR_ID_LENGTH 8 57 | #define PRODUCT_ID_LENGTH 16 58 | #define PRODUCT_NAME_LENGTH (PRODUCT_ID_LENGTH + 3) /* " [PRODUCT_ID]" */ 59 | #define PRODUCT_REV_LENGTH 4 60 | 61 | static const char base_firmware_level_lto5[] = "B170"; 62 | static const char base_firmware_level_ts1140[] = "3694"; 63 | 64 | typedef void (*crc_enc)(void *buf, size_t n); 65 | typedef int (*crc_check)(void *buf, size_t n); 66 | typedef void* (*memcpy_crc_enc)(void *dest, const void *src, size_t n); 67 | typedef int (*memcpy_crc_check)(void *dest, const void *src, size_t n); 68 | 69 | typedef enum { 70 | DRIVE_UNSUPPORTED, /* Unsupported drive */ 71 | DRIVE_LTO5, /* IBM Ultrium Gen 5 */ 72 | DRIVE_LTO5_HH, /* IBM Ultrium Gen 5 Half-High */ 73 | DRIVE_LTO6, /* IBM Ultrium Gen 6 */ 74 | DRIVE_LTO6_HH, /* IBM Ultrium Gen 6 Half-High */ 75 | DRIVE_TS1140, /* TS1140 */ 76 | DRIVE_TS1150, /* TS1150 */ 77 | } DRIVE_TYPE; 78 | 79 | #endif // __tape_drivers_h 80 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/windows/ltotape/Makefile: -------------------------------------------------------------------------------- 1 | 2 | # Rough makefile for building the Microsoft Windows ltotape backend 3 | # under cygwin. 4 | # 5 | # Expect this to change majorly before it becomes useful.. 6 | 7 | CC=/bin/gcc 8 | CFLAGS=-g -c -DHP_BUILD 9 | HAX=-DUChar="unsigned char" 10 | INC=-I. -I../../.. 11 | 12 | SRCS=ltotape_platform.c ltotape_diag.c ltotape.c 13 | 14 | LIBRARY: $(SRCS) 15 | $(CC) $(CFLAGS) $(INC) $(HAX) $(SRCS) 16 | 17 | clean: 18 | rm -f $(SRCS:.c=.o) testharness.exe 19 | 20 | # Test harness program, purely for trying out the backend functions before LTFS ported.. 21 | testharness: $(SRCS) testharness.c 22 | $(CC) -g $(INC) testharness.c $(SRCS:.c=.o) -o testharness 23 | 24 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/windows/ltotape/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # Hewlett Packard LTFS backend for LTO and DAT tape drives 3 | # 4 | # FILE: Makefile.am 5 | # 6 | # CONTENTS: Makefile specifics for ltotape backend 7 | # 8 | # (C) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP 9 | # 10 | # This program is free software; you can redistribute it and/or modify it 11 | # under the terms of version 2.1 of the GNU Lesser General Public License 12 | # as published by the Free Software Foundation. 13 | # 14 | # This program is distributed in the hope that it will be useful, but 15 | # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 16 | # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 17 | # License for more details. 18 | # 19 | # You should have received a copy of the GNU General Public License along 20 | # with this program; if not, write to: 21 | # Free Software Foundation, Inc. 22 | # 51 Franklin Street, Fifth Floor 23 | # Boston, MA 02110-1301, USA. 24 | # 25 | 26 | lib_LTLIBRARIES = libdriver-ltotape-win.la 27 | libdir = @libdir@/ltfs 28 | 29 | AM_LIBTOOLFLAGS = --tag=disable-static 30 | 31 | libdriver_ltotape_win_la_SOURCES = ltotape.c ltotape_diag.c ltotape_platform.c 32 | libdriver_ltotape_win_la_DEPENDENCIES = $(top_srcdir)/messages/libdriver_ltotape.a 33 | libdriver_ltotape_win_la_LIBADD = -L$(abs_top_srcdir)/messages -ldriver_ltotape ../../../libltfs/libltfs.la -lfuse4win 34 | libdriver_ltotape_win_la_CPPFLAGS = -I$(top_srcdir)/src @AM_CPPFLAGS@ 35 | libdriver_ltotape_win_la_LDFLAGS = -avoid-version -no-undefined 36 | 37 | install-exec-hook: 38 | for f in $(lib_LTLIBRARIES); do rm -f $(libdir)/$$f; done 39 | -------------------------------------------------------------------------------- /ltfs/src/tape_drivers/windows/ltotape/ltotape_supdevs.h: -------------------------------------------------------------------------------- 1 | /************************************************************************************ 2 | ** 3 | ** Hewlett Packard LTFS backend for HP LTO and DAT tape drives 4 | ** 5 | ** FILE: ltotape_supdevs.h 6 | ** 7 | ** CONTENTS: Array of devices supported by this backend 8 | ** 9 | ** (C) Copyright 2015 - 2017 Hewlett Packard Enterprise Development LP 10 | ** 11 | ** This program is free software; you can redistribute it and/or modify it 12 | ** under the terms of version 2.1 of the GNU Lesser General Public License 13 | ** as published by the Free Software Foundation. 14 | ** 15 | ** This program is distributed in the hope that it will be useful, but 16 | ** WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 17 | ** or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 18 | ** License for more details. 19 | ** 20 | ** You should have received a copy of the GNU General Public License along 21 | ** with this program; if not, write to: 22 | ** Free Software Foundation, Inc. 23 | ** 51 Franklin Street, Fifth Floor 24 | ** Boston, MA 02110-1301, USA. 25 | ** 26 | ** 18 August 2010 27 | ** 28 | ************************************************************************************* 29 | */ 30 | 31 | #ifndef __ltotape_supdevs_h 32 | #define __ltotape_supdevs_h 33 | 34 | /* 35 | * Array of device types supported by this back end: 36 | */ 37 | const supported_device_type supported_devices[] = { 38 | { "Ultrium 5-SCSI ", drivefamily_lto, "HP LTO5", drive_lto5 }, 39 | { "Ultrium 6-SCSI ", drivefamily_lto, "HP LTO6", drive_lto6 }, 40 | { "Ultrium 7-SCSI ", drivefamily_lto, "HP LTO7", drive_lto7 }, 41 | { "Ultrium 8-SCSI ", drivefamily_lto, "HPE LTO8", drive_lto8 }, 42 | { "ULTRIUM 5 ", drivefamily_lto, "Quantum LTO5", drive_lto5 }, 43 | { "ULTRIUM 6 ", drivefamily_lto, "Quantum LTO6", drive_lto6 }, 44 | { "ULTRIUM 7 ", drivefamily_lto, "Quantum LTO7", drive_lto7 }, 45 | { "ULTRIUM 8 ", drivefamily_lto, "Quantum LTO8", drive_lto8 }, 46 | { "LTO-5 HH ", drivefamily_lto, "TANDBERG DATA LTO5", drive_lto5 }, 47 | { "LTO-6 HH ", drivefamily_lto, "TANDBERG DATA LTO6", drive_lto6 }, 48 | { "DAT320 ", drivefamily_dat, "HP DAT320", drive_dat }, 49 | { "DAT160 ", drivefamily_dat, "HP DAT160", drive_dat }, 50 | { (const char*)NULL, drivefamily_unknown, "Unknown", drive_unknown } 51 | }; 52 | 53 | #endif // __ltotape_diag_h 54 | -------------------------------------------------------------------------------- /ltfs/src/utils/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | 35 | bin_PROGRAMS = mkltfs ltfsck unltfs 36 | 37 | noinst_HEADERS = 38 | 39 | mkltfs_SOURCES = mkltfs.c 40 | mkltfs_DEPENDENCIES = ../libltfs/libltfs.la ../../messages/bin_mkltfs_dat.o 41 | mkltfs_LDADD = ../libltfs/libltfs.la ../../messages/bin_mkltfs_dat.o 42 | mkltfs_CPPFLAGS = @AM_CPPFLAGS@ -I .. 43 | 44 | unltfs_SOURCES = unltfs.c 45 | unltfs_DEPENDENCIES = ../libltfs/libltfs.la ../../messages/bin_mkltfs_dat.o 46 | unltfs_LDADD = ../libltfs/libltfs.la ../../messages/bin_mkltfs_dat.o 47 | unltfs_CPPFLAGS = @AM_CPPFLAGS@ -I .. 48 | 49 | ltfsck_SOURCES = ltfsck.c 50 | ltfsck_DEPENDENCIES = ../libltfs/libltfs.la ../../messages/bin_ltfsck_dat.o 51 | ltfsck_LDADD = ../libltfs/libltfs.la ../../messages/bin_ltfsck_dat.o 52 | ltfsck_CPPFLAGS = @AM_CPPFLAGS@ -I .. 53 | -------------------------------------------------------------------------------- /ltfs/src/utils/Makefile.am_Windows: -------------------------------------------------------------------------------- 1 | # 2 | # %Z% %I% %W% %G% %U% 3 | # 4 | # ZZ_Copyright_BEGIN 5 | # 6 | # 7 | # Licensed Materials - Property of IBM 8 | # 9 | # IBM Linear Tape File System Single Drive Edition Version 2.2.0.2 for Linux and Mac OS X 10 | # 11 | # Copyright IBM Corp. 2010, 2014 12 | # 13 | # This file is part of the IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X 14 | # (formally known as IBM Linear Tape File System) 15 | # 16 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is free software; 17 | # you can redistribute it and/or modify it under the terms of the GNU Lesser 18 | # General Public License as published by the Free Software Foundation, 19 | # version 2.1 of the License. 20 | # 21 | # The IBM Linear Tape File System Single Drive Edition for Linux and Mac OS X is distributed in the 22 | # hope that it will be useful, but WITHOUT ANY WARRANTY; without even the 23 | # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 | # See the GNU Lesser General Public License for more details. 25 | # 26 | # You should have received a copy of the GNU Lesser General Public 27 | # License along with this library; if not, write to the Free Software 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29 | # or download the license from . 30 | # 31 | # 32 | # ZZ_Copyright_END 33 | # 34 | ############################################################################### 35 | # 36 | # Copyright (C) 2012 OSR Open Systems Resources, Inc. 37 | # 38 | ############################################################################### 39 | 40 | 41 | bin_PROGRAMS = mkltfs ltfsck unltfs 42 | 43 | noinst_HEADERS = 44 | 45 | mkltfs_SOURCES = mkltfs.c 46 | # 47 | # OSR/HPE_mingw_BUILD 48 | # 49 | # In our MinGW environment, we dynamically link to the package 50 | # data. 51 | # 52 | mkltfs_DEPENDENCIES = ../libltfs/libltfs.la ../../messages/libbin_mkltfs.a 53 | mkltfs_LDADD = -L../../messages ../libltfs/libltfs.la -lbin_mkltfs -lbin_libltfs 54 | mkltfs_CPPFLAGS = @AM_CPPFLAGS@ -I .. 55 | 56 | unltfs_SOURCES = unltfs.c 57 | # 58 | # OSR/HPE_mingw_BUILD 59 | # 60 | # In our MinGW environment, we dynamically link to the package 61 | # data. 62 | # 63 | unltfs_DEPENDENCIES = ../libltfs/libltfs.la ../../messages/libbin_mkltfs.a 64 | unltfs_LDADD = -L../../messages ../libltfs/libltfs.la -lbin_mkltfs -lbin_libltfs 65 | unltfs_CPPFLAGS = @AM_CPPFLAGS@ -I .. 66 | 67 | ltfsck_SOURCES = ltfsck.c 68 | # 69 | # OSR/HPE_mingw_BUILD 70 | # 71 | # In our MinGW environment, we dynamically link to the package 72 | # data. 73 | # 74 | ltfsck_DEPENDENCIES = ../libltfs/libltfs.la ../../messages/libbin_ltfsck.a 75 | ltfsck_LDADD = -L../../messages ../libltfs/libltfs.la -lbin_ltfsck -lbin_libltfs 76 | ltfsck_CPPFLAGS = @AM_CPPFLAGS@ -I .. 77 | --------------------------------------------------------------------------------