OXIESEC PANEL
- Current Dir:
/
/
opt
/
gsutil
/
gslib
/
utils
/
__pycache__
Server IP: 2a02:4780:11:1594:0:ef5:22d7:a
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/11/2025 08:19:48 AM
rwxr-xr-x
📄
__init__.cpython-39.pyc
126 bytes
02/11/2025 08:19:48 AM
rw-r--r--
📄
acl_helper.cpython-39.pyc
9.38 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
arg_helper.cpython-39.pyc
1.01 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
boto_util.cpython-39.pyc
16.46 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
cat_helper.cpython-39.pyc
4.21 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
cloud_api_helper.cpython-39.pyc
3.29 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
constants.cpython-39.pyc
2.88 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
copy_helper.cpython-39.pyc
101.64 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
encryption_helper.cpython-39.pyc
5.84 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
execution_util.cpython-39.pyc
1.06 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
hashing_helper.cpython-39.pyc
15.71 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
iam_helper.cpython-39.pyc
8.61 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
ls_helper.cpython-39.pyc
12.4 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
metadata_util.cpython-39.pyc
3.1 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
parallelism_framework_util.cpython-39.pyc
11.79 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
posix_util.cpython-39.pyc
12.46 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
retention_util.cpython-39.pyc
8.77 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
retry_util.cpython-39.pyc
2.5 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
rsync_util.cpython-39.pyc
1.6 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
shim_util.cpython-39.pyc
19.8 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
signurl_helper.cpython-39.pyc
4.21 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
stet_util.cpython-39.pyc
3.35 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
system_util.cpython-39.pyc
7.9 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
temporary_file_util.cpython-39.pyc
915 bytes
02/11/2025 08:19:49 AM
rw-r--r--
📄
text_util.cpython-39.pyc
12.62 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
translation_helper.cpython-39.pyc
25.67 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
unit_util.cpython-39.pyc
7.01 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
update_util.cpython-39.pyc
3.39 KB
02/11/2025 08:19:49 AM
rw-r--r--
📄
user_agent_helper.cpython-39.pyc
1.49 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
version_check.cpython-39.pyc
1.39 KB
02/11/2025 08:19:48 AM
rw-r--r--
📄
wrapped_credentials.cpython-39.pyc
5.81 KB
02/11/2025 08:19:49 AM
rw-r--r--
Editing: copy_helper.cpython-39.pyc
Close
a +(Wg�� � @ s� d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlZddlmZ ddl Z ddl Z ddlZddlZddl Z ddlZddlZddlmZ ddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZddlZdd lm Z dd lm Z dd l!m"Z" ddl#m$Z$ ddl%Z%ddl&Z&ddl'm(Z( dd l'm)Z) ddl'm*Z* ddl'm+Z+ ddl'm,Z, ddl'm-Z- ddl'm.Z. ddl'm/Z/ ddl'm0Z0 ddl'm1Z1 ddl'm2Z2 ddl'm3Z3 ddl4m5Z5 ddl6m7Z7 ddl6m8Z8 ddl6m9Z9 ddl6m:Z: ddl6m;Z; ddl6m<Z< ddl=m>Z> dd l?m@Z@ dd!lAmBZB dd"lAmCZC dd#lAmDZD dd$lEmFZF dd%lGmHZH dd&lGmIZI dd'lGmJZJ dd(lGmKZK dd)lGmLZL dd*lMmNZN dd+lMmOZO dd,lPmQZQ dd-l&mRZR dd.lSmTZT dd/lSmUZU dd0lSmVZV dd1lSmWZW dd2lXmYZZ dd3l[m\Z\ dd4l[m]Z] dd5l^m_Z_ dd6l^m`Z` dd7l^maZa dd8l^mbZb dd9l^mcZc dd:l^mdZd dd;l^meZe dd<l^mfZf dd=l^mgZg dd>l^mhZh dd?l^miZi dd@l^mjZj ddAlkmlZl ddBlkmmZm ddClkmnZn ddDlkmoZo ddElpmqZq ddFlpmrZr ddGlpmsZs ddHlpmtZt ddIlpmuZu ddJlvmwZw ddKlvmxZx ddLlymzZz ddMlym{Z{ ddNlym|Z| ddOl}m~Z~ ddPl}mZ ddQl}m�Z� ddRl}m�Z� ddSl�m�Z� ddTl�m�Z� ddUl�m�Z� ddVl�m�Z� ddWl�m�Z� ddXl�m�Z� ddYl�m�Z� ddZl�m�Z� dd[l�m�Z� dd\l�m�Z� dd]l�m�Z� dd^l�m�Z� dd_l�m�Z� dd`l�m�Z� ddal�m�Z� ddbl�m�Z� ddcl�m�Z� dddl�m�Z� ddel�m�Z� ddfl�m�Z� ddgl�m�Z� ddhl�m�Z� ddil�m�Z� ddjl�m�Z� ddkl�m�Z� ddll�m�Z� ddml�m�Z� ddnl�m�Z� ddol�m�Z� ddpl�m�Z� ddql�m�Z� ddrl�m�Z� ddsl�m�Z� ddtl�m�Z� ddul�m�Z� ddvl�m�Z� ddwl�m�Z� ej��rXe�Z�e��rfddl�Z�e�e�� j��rxelj�nddx�a�el��� a�dyZ�dzZ�d{Z�d|Z�g d}�Z�ed~d�Z�ed�d��Z�ed�d��Z�d�Z�d�Z�e�Z�d�Z�d�Z�e�e�� j��r�elj�nddx�a�el��� a�d�d�d��Z�G d�d�� d�eȃZ�d�d�� Z�d�d�� Zːdd�d��Z�ed�g d���Z͐dd�d��Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d�� ZԐdd�d��Z�d�d�� Z�d�d�� Z�d�d�� Zؐdd�d��Z�d�d�� Z�d�d�� Zېdd�d��Z�d�d�� Zݐdd�d��Zސdd�d��Zߐdd�d��Z�d�d�� Z�d�d�� Z�d�d�� Z�d�d Z�dd�dĄZ�d�dƄ Z�dd�dȄZ�dd�dʄZ�dd�d̄Z�d�d΄ Z�d�dЄ Z�dd�dӄZ�d�dՄ Z�d�dׄ Z�dd�dلZ�d�dۄ Z�G d�d݄ d�e�Z�dd�d߄Z�dd�d�Z�d d�d�Z��d!d�d�Z��d"d�d�Z��d#d�d�Z��d$d�d�Z�d�d� Z��d%d�d�Z��d&d�d�Z�d�e� d�e� d�e� d��Z�d�d�� Z�d�d�� Z�d�d�� �Z �d'd�d���ZG d�d�� d�e��ZG �d �d� �deȃ�ZG �d�d� �deȃ�ZG �d�d� �d�e��Z�d�d� �Z�d�d � �Z�d �d� �Z�d(�d�d ��Z �d�d� �Z dS () z(Helper functions for copy functionality.� )�absolute_import)�print_function)�division)�unicode_literalsN)� namedtuple)� attrgetter)�range)� protojson)�config)�AccessDeniedException)�ArgumentException)�CloudApi)�EncryptionException)�NotFoundException)�PreconditionException)� Preconditions)�ResumableDownloadException)�ResumableUploadAbortException)�ResumableUploadException)�!ResumableUploadStartOverException)�ServiceException)�MAX_COMPOSE_ARITY)�0DEFAULT_PARALLEL_COMPOSITE_UPLOAD_COMPONENT_SIZE)�+DEFAULT_PARALLEL_COMPOSITE_UPLOAD_THRESHOLD)�-DEFAULT_SLICED_OBJECT_DOWNLOAD_COMPONENT_SIZE)�-DEFAULT_SLICED_OBJECT_DOWNLOAD_MAX_COMPONENTS)�(DEFAULT_SLICED_OBJECT_DOWNLOAD_THRESHOLD)�DEFAULT_GZIP_COMPRESSION_LEVEL)�ApiSelector)�DaisyChainWrapper)�CommandException)�HashMismatchException)�InvalidUrlError)�FilePart)�GenerateComponentObjectPrefix)�ReadParallelUploadTrackerFile)�$ValidateParallelCompositeTrackerData)�)WriteComponentToParallelUploadTrackerFile)�WriteParallelUploadTrackerFile)�FileProgressCallbackHandler)�ProgressCallbackWithTimeout)�#ResumableStreamingJsonUploadWrapper)�storage_url)�ContainsWildcard)�GenerationFromUrlAndString)�IsCloudSubdirPlaceholder)�StorageUrlFromString)�storage_v1_messages)�FileMessage)�RetryableErrorMessage)�DeleteDownloadTrackerFiles)�DeleteTrackerFile)�ENCRYPTION_UPLOAD_TRACKER_ENTRY)�GetDownloadStartByte)�GetTrackerFilePath)�GetUploadTrackerData)�#RaiseUnwritableTrackerFileException)�ReadOrCreateDownloadTrackerFile)�"SERIALIZATION_UPLOAD_TRACKER_ENTRY)�TrackerFileType)�!WriteDownloadComponentTrackerFile)�WriteJsonDataToTrackerFile)�parallelism_framework_util)� stet_util)�temporary_file_util)� text_util)�GetJsonResumableChunkSize)�GetMaxRetryDelay)� GetNumRetries)�ResumableThreshold)�UsingCrcmodExtension)�GetCloudApiInstance)�GetDownloadSerializationData)�DEFAULT_FILE_BUFFER_SIZE)�MIN_SIZE_COMPUTE_LOGGING)�UTF8)� CryptoKeyType)�CryptoKeyWrapperFromKey)�FindMatchingCSEKInBotoConfig)�GetEncryptionKeyWrapper)�Base64EncodeHash)�"CalculateB64EncodedMd5FromContents)�CalculateHashesFromContents)�CHECK_HASH_IF_FAST_ELSE_FAIL)�CHECK_HASH_NEVER)�ConcatCrc32c)�GetDownloadHashAlgs)�GetMd5)�GetUploadHashAlgs)�HashingFileUploadWrapper)�ObjectIsGzipEncoded)� AtomicDict)�$CheckMultiprocessingAvailableAndInit)�PutToQueueWithTimeout)� ATIME_ATTR)�ConvertDatetimeToPOSIX)�GID_ATTR)� MODE_ATTR)� MTIME_ATTR)�ParseAndSetPOSIXAttributes)�UID_ATTR)�CheckFreeSpace)�GetFileSize)�GetStreamFromFileUrl)� IS_WINDOWS)�AddS3MarkerAclToObjectMetadata)�CopyObjectMetadata)�DEFAULT_CONTENT_TYPE)�ObjectMetadataFromHeaders)�PreconditionsFromHeaders)�S3MarkerAclFromObjectMetadata)� DivideAndCeil)�HumanReadableToBytes)�MakeHumanReadable)�SECONDS_PER_DAY)�TEN_MIB)�CreateWildcardIterator)�managerFZ_corruptzF/gsutil/tmp/parallel_composite_uploads/for_details_see/gsutil_help_cp/ad PARALLEL_UPLOAD_SALT_TO_PREVENT_COLLISIONS. The theory is that no user will have prepended this to the front of one of their object names and then done an MD5 hash of the name, and then prepended PARALLEL_UPLOAD_TEMP_NAMESPACE to the front of their object name. Note that there will be no problems with object name length since we hash the original name. )�crc32c�customerEncryption�etag� generation�md5Hash�size�%PerformParallelUploadFileToObjectArgsz�filename file_start file_length src_url dst_url canned_acl content_type storage_class tracker_file tracker_file_lock encryption_key_sha256 gzip_encoded�%PerformSlicedDownloadObjectToFileArgszicomponent_num src_url src_obj_metadata_json dst_url download_file_name start_byte end_byte decryption_key�!PerformSlicedDownloadReturnValueszKcomponent_num crc32c bytes_transferred component_total_size server_encodingi �GZIP_ALL_FILESi ` l z text/markdownzapplication/gzip)�mdZtgzc @ s e Zd ZdZdS )�FileConcurrencySkipErrorz@Raised when skipping a file due to a concurrent, duplicate copy.N��__name__� __module__�__qualname__�__doc__� r� r� �&/opt/gsutil/gslib/utils/copy_helper.pyr� + s r� c C s | j �t|�� dS )�9Simple exception handler to allow post-completion status.N)�logger�error�str��cls�er� r� r� �_RmExceptionHandler/ s r� c C s4 | j �t|�� | jd7 _| j �dt�� � dS )r� � z* Encountered exception while copying: %s N)r� r� r� �op_failure_count�debug� traceback� format_excr� r� r� r� �_ParallelCopyExceptionHandler4 s �r� c C s� t |j|j|j�}t| |d�}|�� d}tj|jj|jj |j |jd�}|j}zLt jr\tj|_t|j||j|j|||| j| tddd|jd�}W t jr�||_nt jr�||_0 W d � n1 s�0 Y |d } t|j|j| | j|jd� |S ) aO Function argument to Apply for performing parallel composite uploads. Args: cls: Calling Command class. args: PerformParallelUploadFileToObjectArgs tuple describing the target. thread_state: gsutil Cloud API instance to use for the operation. Returns: StorageUrl representing a successfully uploaded component. ��thread_stateN)�name�bucket�contentType�storageClassFT)� gzip_exts�allow_splitting�is_component�gzip_encoded� ��encryption_key_sha256)r# �filename� file_start�file_lengthrI �apitools_messages�Object�dst_url�object_name�bucket_name�content_type� storage_class� prefer_api�global_copy_helper_opts� canned_aclr �XML�_UploadFileToObject�src_urlr� r� r� r'