Documentation ¶
Overview ¶
Package cmd This file implements helper functions to validate AWS Signature Version '4' authorization header.
This package provides comprehensive helpers for following signature types. - Based on Authorization header. - Based on Query parameters. - Based on Form POST policy.
Package cmd This file implements helper functions to validate Streaming AWS Signature Version '4' authorization header.
Index ¶
- Constants
- Variables
- func Access(name string) error
- func AuthMiddleware(h http.Handler) http.Handler
- func BucketAccessPolicyToPolicy(policyInfo *miniogopolicy.BucketAccessPolicy) (*policy.Policy, error)
- func CheckLocalServerAddr(serverAddr string) error
- func CleanMinioInternalMetadataKeys(metadata map[string]string) map[string]string
- func ClusterCheckHandler(w http.ResponseWriter, r *http.Request)
- func ClusterReadCheckHandler(w http.ResponseWriter, r *http.Request)
- func ComputeCompleteMultipartMD5(parts []CompletePart) string
- func CreateEndpoints(serverAddr string, foundLocal bool, args ...[]string) (Endpoints, SetupType, error)
- func DecryptBlocksRequestR(inputReader io.Reader, h http.Header, seqNumber uint32, partStart int, ...) (io.Reader, error)
- func DecryptCopyRequestR(client io.Reader, h http.Header, bucket, object string, seqNumber uint32, ...) (io.Reader, error)
- func DecryptETag(key crypto.ObjectKey, object ObjectInfo) (string, error)
- func DecryptObjectInfo(info *ObjectInfo, r *http.Request) (encrypted bool, err error)
- func DecryptRequestWithSequenceNumberR(client io.Reader, h http.Header, bucket, object string, seqNumber uint32, ...) (io.Reader, error)
- func EncryptRequest(content io.Reader, r *http.Request, bucket, object string, ...) (io.Reader, crypto.ObjectKey, error)
- func ErrorRespToObjectError(err error, params ...string) error
- func FromMinioClientMetadata(metadata map[string][]string) map[string]string
- func GenETag() string
- func GetAllSets(args ...string) ([][]string, error)
- func GetCurrentReleaseTime() (releaseTime time.Time, err error)
- func GetLocalPeer(endpointServerPools EndpointServerPools, host, port string) (localPeer string)
- func GetObject(ctx context.Context, api ObjectLayer, bucket, object string, startOffset int64, ...) (err error)
- func GetPeerOnlineCount() (nodesOnline, nodesOffline int)
- func GetProxyEndpointLocalIndex(proxyEps []ProxyEndpoint) int
- func GetTotalCapacity(diskInfo []madmin.Disk) (capacity uint64)
- func GetTotalCapacityFree(diskInfo []madmin.Disk) (capacity uint64)
- func GetTotalUsableCapacity(diskInfo []madmin.Disk, s StorageInfo) (capacity float64)
- func GetTotalUsableCapacityFree(diskInfo []madmin.Disk, s StorageInfo) (capacity float64)
- func GetVersion(configFile string) (string, error)
- func HasPrefix(s string, prefix string) bool
- func HasSuffix(s string, suffix string) bool
- func IsBOSH() bool
- func IsBackendOnline(ctx context.Context, host string) bool
- func IsDCOS() bool
- func IsDocker() bool
- func IsErr(err error, errs ...error) bool
- func IsErrIgnored(err error, ignoredErrs ...error) bool
- func IsKubernetes() bool
- func IsPCFTile() bool
- func IsSourceBuild() bool
- func IsValidBucketName(bucket string) bool
- func IsValidObjectName(object string) bool
- func IsValidObjectPrefix(object string) bool
- func LivenessCheckHandler(w http.ResponseWriter, r *http.Request)
- func Load(configFile string, data interface{}) (quick.Config, error)
- func Lstat(name string) (os.FileInfo, error)
- func Main(args []string)
- func MkdirAll(dirPath string, mode os.FileMode) error
- func MockOpenIDTestUserInteraction(ctx context.Context, pro OpenIDClientAppParams, username, password string) (string, error)
- func NSUpdated(bucket, prefix string)
- func NewGatewayHTTPTransport() *http.Transport
- func NewGatewayHTTPTransportWithClientCerts(clientCert, clientKey string) *http.Transport
- func NewRemoteTargetHTTPTransport() *http.Transport
- func NewhashReader(src io.Reader, size int64, md5Hex string, sha256Hex string, actualSize int64) (*hash.Reader, error)
- func Open(name string) (*os.File, error)
- func OpenFile(name string, flag int, perm os.FileMode) (*os.File, error)
- func OpenFileDirectIO(name string, flag int, perm os.FileMode) (*os.File, error)
- func ParseGatewayEndpoint(arg string) (endPoint string, secure bool, err error)
- func ParseSSECopyCustomerRequest(h http.Header, metadata map[string]string) (key []byte, err error)
- func ParseSSECustomerHeader(header http.Header) (key []byte, err error)
- func ParseSSECustomerRequest(r *http.Request) (key []byte, err error)
- func PolicyToBucketAccessPolicy(bucketPolicy *policy.Policy) (*miniogopolicy.BucketAccessPolicy, error)
- func ReadinessCheckHandler(w http.ResponseWriter, r *http.Request)
- func RegisterGatewayCommand(cmd cli.Command) error
- func Remove(deletePath string) error
- func RemoveAll(dirPath string) error
- func Rename(src, dst string) error
- func ReportMetrics(ctx context.Context, metricsGroups []*MetricsGroup) <-chan Metric
- func Save(configFile string, data interface{}) error
- func StartGateway(ctx *cli.Context, gw Gateway)
- func Stat(name string) (os.FileInfo, error)
- func ToMinioClientCompletePart(part CompletePart) minio.CompletePart
- func ToMinioClientCompleteParts(parts []CompletePart) []minio.CompletePart
- func ToMinioClientMetadata(metadata map[string]string) map[string]string
- func ToMinioClientObjectInfoMetadata(metadata map[string]string) map[string][]string
- func ToS3ETag(etag string) string
- func Trace(f http.HandlerFunc, logBody bool, w http.ResponseWriter, r *http.Request) madmin.TraceInfo
- func UTCNow() time.Time
- func ValidateGatewayArguments(serverAddr, endpointAddr string) error
- type APIError
- type APIErrorCode
- type APIErrorResponse
- type AccElem
- type AdminError
- type AllAccessDisabled
- type AssumeRoleResponse
- type AssumeRoleResult
- type AssumeRoleWithCertificateResponse
- type AssumeRoleWithClientGrantsResponse
- type AssumeRoleWithLDAPResponse
- type AssumeRoleWithWebIdentityResponse
- type AssumedRoleUser
- type AuditLogOptions
- type BackendDown
- type BackendMetrics
- func (s *BackendMetrics) GetBytesReceived() uint64
- func (s *BackendMetrics) GetBytesSent() uint64
- func (s *BackendMetrics) GetRequests() RequestStats
- func (s *BackendMetrics) IncBytesReceived(n uint64)
- func (s *BackendMetrics) IncBytesSent(n uint64)
- func (s *BackendMetrics) IncRequests(method string)
- type BackendType
- type BitrotAlgorithm
- func (a BitrotAlgorithm) Available() bool
- func (z *BitrotAlgorithm) DecodeMsg(dc *msgp.Reader) (err error)
- func (z BitrotAlgorithm) EncodeMsg(en *msgp.Writer) (err error)
- func (z BitrotAlgorithm) MarshalMsg(b []byte) (o []byte, err error)
- func (z BitrotAlgorithm) Msgsize() (s int)
- func (a BitrotAlgorithm) New() hash.Hash
- func (a BitrotAlgorithm) String() string
- func (z *BitrotAlgorithm) UnmarshalMsg(bts []byte) (o []byte, err error)
- type BitrotVerifier
- type Bucket
- type BucketAccessPolicy
- type BucketAlreadyExists
- type BucketAlreadyOwnedByYou
- type BucketExists
- type BucketInfo
- type BucketLifecycleNotFound
- type BucketMetadata
- func (z *BucketMetadata) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *BucketMetadata) EncodeMsg(en *msgp.Writer) (err error)
- func (b *BucketMetadata) Load(ctx context.Context, api ObjectLayer, name string) error
- func (z *BucketMetadata) MarshalMsg(b []byte) (o []byte, err error)
- func (z *BucketMetadata) Msgsize() (s int)
- func (b *BucketMetadata) Save(ctx context.Context, api ObjectLayer) error
- func (z *BucketMetadata) UnmarshalMsg(bts []byte) (o []byte, err error)
- type BucketMetadataSys
- func (sys *BucketMetadataSys) Get(bucket string) (BucketMetadata, error)
- func (sys *BucketMetadataSys) GetBucketTarget(bucket string, arn string) (madmin.BucketTarget, error)
- func (sys *BucketMetadataSys) GetBucketTargetsConfig(bucket string) (*madmin.BucketTargets, error)
- func (sys *BucketMetadataSys) GetConfig(ctx context.Context, bucket string) (BucketMetadata, error)
- func (sys *BucketMetadataSys) GetLifecycleConfig(bucket string) (*lifecycle.Lifecycle, error)
- func (sys *BucketMetadataSys) GetNotificationConfig(bucket string) (*event.Config, error)
- func (sys *BucketMetadataSys) GetObjectLockConfig(bucket string) (*objectlock.Config, error)
- func (sys *BucketMetadataSys) GetPolicyConfig(bucket string) (*policy.Policy, error)
- func (sys *BucketMetadataSys) GetQuotaConfig(ctx context.Context, bucket string) (*madmin.BucketQuota, error)
- func (sys *BucketMetadataSys) GetReplicationConfig(ctx context.Context, bucket string) (*replication.Config, error)
- func (sys *BucketMetadataSys) GetSSEConfig(bucket string) (*bucketsse.BucketSSEConfig, error)
- func (sys *BucketMetadataSys) GetTaggingConfig(bucket string) (*tags.Tags, error)
- func (sys *BucketMetadataSys) GetVersioningConfig(bucket string) (*versioning.Versioning, error)
- func (sys *BucketMetadataSys) Init(ctx context.Context, buckets []BucketInfo, objAPI ObjectLayer) error
- func (sys *BucketMetadataSys) Remove(bucket string)
- func (sys *BucketMetadataSys) Reset()
- func (sys *BucketMetadataSys) Set(bucket string, meta BucketMetadata)
- func (sys *BucketMetadataSys) Update(ctx context.Context, bucket string, configFile string, configData []byte) error
- type BucketNameInvalid
- type BucketNotEmpty
- type BucketNotFound
- type BucketObjectLockConfigNotFound
- type BucketObjectLockSys
- type BucketOptions
- type BucketPolicyNotFound
- type BucketQuotaConfigNotFound
- type BucketQuotaExceeded
- type BucketQuotaSys
- type BucketRemoteAlreadyExists
- type BucketRemoteArnInvalid
- type BucketRemoteArnTypeInvalid
- type BucketRemoteConnectionErr
- type BucketRemoteDestinationNotFound
- type BucketRemoteLabelInUse
- type BucketRemoteRemoveDisallowed
- type BucketRemoteTargetNotFound
- type BucketRemoteTargetNotVersioned
- type BucketReplicationConfigNotFound
- type BucketReplicationResyncStatus
- func (z *BucketReplicationResyncStatus) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *BucketReplicationResyncStatus) EncodeMsg(en *msgp.Writer) (err error)
- func (z *BucketReplicationResyncStatus) MarshalMsg(b []byte) (o []byte, err error)
- func (z *BucketReplicationResyncStatus) Msgsize() (s int)
- func (z *BucketReplicationResyncStatus) UnmarshalMsg(bts []byte) (o []byte, err error)
- type BucketReplicationSourceNotVersioned
- type BucketReplicationStat
- func (z *BucketReplicationStat) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *BucketReplicationStat) EncodeMsg(en *msgp.Writer) (err error)
- func (z *BucketReplicationStat) MarshalMsg(b []byte) (o []byte, err error)
- func (z *BucketReplicationStat) Msgsize() (s int)
- func (z *BucketReplicationStat) UnmarshalMsg(bts []byte) (o []byte, err error)
- type BucketReplicationStats
- func (brs BucketReplicationStats) Clone() (c BucketReplicationStats)
- func (z *BucketReplicationStats) DecodeMsg(dc *msgp.Reader) (err error)
- func (brs *BucketReplicationStats) Empty() bool
- func (z *BucketReplicationStats) EncodeMsg(en *msgp.Writer) (err error)
- func (z *BucketReplicationStats) MarshalMsg(b []byte) (o []byte, err error)
- func (z *BucketReplicationStats) Msgsize() (s int)
- func (z *BucketReplicationStats) UnmarshalMsg(bts []byte) (o []byte, err error)
- type BucketSSEConfigNotFound
- type BucketSSEConfigSys
- type BucketStats
- type BucketTaggingNotFound
- type BucketTargetSys
- func (sys *BucketTargetSys) Delete(bucket string)
- func (sys *BucketTargetSys) GetRemoteBucketTargetByArn(ctx context.Context, bucket, arn string) madmin.BucketTarget
- func (sys *BucketTargetSys) GetRemoteTargetClient(ctx context.Context, arn string) *TargetClient
- func (sys *BucketTargetSys) ListBucketTargets(ctx context.Context, bucket string) (*madmin.BucketTargets, error)
- func (sys *BucketTargetSys) ListTargets(ctx context.Context, bucket, arnType string) (targets []madmin.BucketTarget)
- func (sys *BucketTargetSys) RemoveTarget(ctx context.Context, bucket, arnStr string) error
- func (sys *BucketTargetSys) SetTarget(ctx context.Context, bucket string, tgt *madmin.BucketTarget, update bool) error
- func (sys *BucketTargetSys) UpdateAllTargets(bucket string, tgts *madmin.BucketTargets)
- type BucketTargetUsageInfo
- type BucketUsageInfo
- type BucketVersioningSys
- type CacheChecksumInfoV1
- type CacheDiskStats
- type CacheObjectLayer
- type CacheStats
- type CacheStatusType
- type CacheStorageInfo
- type CheckPreconditionFn
- type ChecksumAlgo
- type ChecksumInfo
- func (z *ChecksumInfo) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ChecksumInfo) EncodeMsg(en *msgp.Writer) (err error)
- func (c ChecksumInfo) MarshalJSON() ([]byte, error)
- func (z *ChecksumInfo) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ChecksumInfo) Msgsize() (s int)
- func (c *ChecksumInfo) UnmarshalJSON(data []byte) error
- func (z *ChecksumInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ClientGrantsResult
- type CommonPrefix
- type CompleteMultipartUpload
- type CompleteMultipartUploadResponse
- type CompletePart
- type CompletedParts
- type ConfigDir
- type ConfigSys
- type ConnStats
- type ConsoleLogger
- type CopyObjectPartResponse
- type CopyObjectResponse
- type DataUsageInfo
- type DecryptBlocksReader
- type DeleteBucketOptions
- type DeleteError
- type DeleteMarkerMTime
- type DeleteObjectsRequest
- type DeleteObjectsResponse
- type DeleteVersionsErrsResp
- type DeletedObject
- type DeletedObjectInfo
- type DeletedObjectReplicationInfo
- type DiskInfo
- type DiskMetrics
- type Encryption
- type Endpoint
- type EndpointServerPools
- func (l *EndpointServerPools) Add(zeps PoolEndpoints) error
- func (l EndpointServerPools) FirstLocal() bool
- func (l EndpointServerPools) GetLocalPoolIdx(ep Endpoint) int
- func (l EndpointServerPools) GetPoolIdx(pool string) int
- func (l EndpointServerPools) HTTPS() bool
- func (l EndpointServerPools) Hostnames() []string
- func (l EndpointServerPools) Legacy() bool
- func (l EndpointServerPools) LocalDisksPaths() []string
- func (l EndpointServerPools) Localhost() string
- func (l EndpointServerPools) NEndpoints() (count int)
- type EndpointType
- type Endpoints
- type Erasure
- func (e Erasure) Decode(ctx context.Context, writer io.Writer, readers []io.ReaderAt, ...) (written int64, derr error)
- func (e *Erasure) DecodeDataAndParityBlocks(ctx context.Context, data [][]byte) error
- func (e *Erasure) DecodeDataBlocks(data [][]byte) error
- func (e *Erasure) Encode(ctx context.Context, src io.Reader, writers []io.Writer, buf []byte, ...) (total int64, err error)
- func (e *Erasure) EncodeData(ctx context.Context, data []byte) ([][]byte, error)
- func (e Erasure) Heal(ctx context.Context, writers []io.Writer, readers []io.ReaderAt, ...) (derr error)
- func (e *Erasure) ShardFileOffset(startOffset, length, totalLength int64) int64
- func (e *Erasure) ShardFileSize(totalLength int64) int64
- func (e *Erasure) ShardSize() int64
- type ErasureAlgo
- func (z *ErasureAlgo) DecodeMsg(dc *msgp.Reader) (err error)
- func (z ErasureAlgo) EncodeMsg(en *msgp.Writer) (err error)
- func (z ErasureAlgo) MarshalMsg(b []byte) (o []byte, err error)
- func (z ErasureAlgo) Msgsize() (s int)
- func (i ErasureAlgo) String() string
- func (z *ErasureAlgo) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ErasureInfo
- func (e *ErasureInfo) AddChecksumInfo(ckSumInfo ChecksumInfo)
- func (z *ErasureInfo) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ErasureInfo) EncodeMsg(en *msgp.Writer) (err error)
- func (e ErasureInfo) GetChecksumInfo(partNumber int) (ckSum ChecksumInfo)
- func (z *ErasureInfo) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ErasureInfo) Msgsize() (s int)
- func (e ErasureInfo) ShardFileSize(totalLength int64) int64
- func (e ErasureInfo) ShardSize() int64
- func (z *ErasureInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
- type EvalMetadataFn
- type ExpirationOptions
- type FSChecksumInfoV1
- type FSObjects
- func (fs *FSObjects) AbortMultipartUpload(ctx context.Context, bucket, object, uploadID string, opts ObjectOptions) error
- func (fs *FSObjects) BackendInfo() madmin.BackendInfo
- func (fs *FSObjects) CompleteMultipartUpload(ctx context.Context, bucket string, object string, uploadID string, ...) (oi ObjectInfo, e error)
- func (fs *FSObjects) CopyObject(ctx context.Context, srcBucket, srcObject, dstBucket, dstObject string, ...) (oi ObjectInfo, err error)
- func (fs *FSObjects) CopyObjectPart(ctx context.Context, ...) (pi PartInfo, e error)
- func (fs *FSObjects) DeleteBucket(ctx context.Context, bucket string, opts DeleteBucketOptions) error
- func (fs *FSObjects) DeleteBucketPolicy(ctx context.Context, bucket string) error
- func (fs *FSObjects) DeleteObject(ctx context.Context, bucket, object string, opts ObjectOptions) (objInfo ObjectInfo, err error)
- func (fs *FSObjects) DeleteObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (ObjectInfo, error)
- func (fs *FSObjects) DeleteObjects(ctx context.Context, bucket string, objects []ObjectToDelete, ...) ([]DeletedObject, []error)
- func (fs *FSObjects) GetBucketInfo(ctx context.Context, bucket string) (bi BucketInfo, e error)
- func (fs *FSObjects) GetBucketPolicy(ctx context.Context, bucket string) (*policy.Policy, error)
- func (fs *FSObjects) GetMetrics(ctx context.Context) (*BackendMetrics, error)
- func (fs *FSObjects) GetMultipartInfo(ctx context.Context, bucket, object, uploadID string, opts ObjectOptions) (MultipartInfo, error)
- func (fs *FSObjects) GetObjectInfo(ctx context.Context, bucket, object string, opts ObjectOptions) (oi ObjectInfo, e error)
- func (fs *FSObjects) GetObjectNInfo(ctx context.Context, bucket, object string, rs *HTTPRangeSpec, h http.Header, ...) (gr *GetObjectReader, err error)
- func (fs *FSObjects) GetObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (*tags.Tags, error)
- func (fs *FSObjects) GetRawData(ctx context.Context, volume, file string, ...) error
- func (fs *FSObjects) HealBucket(ctx context.Context, bucket string, opts madmin.HealOpts) (madmin.HealResultItem, error)
- func (fs *FSObjects) HealFormat(ctx context.Context, dryRun bool) (madmin.HealResultItem, error)
- func (fs *FSObjects) HealObject(ctx context.Context, bucket, object, versionID string, opts madmin.HealOpts) (res madmin.HealResultItem, err error)
- func (fs *FSObjects) HealObjects(ctx context.Context, bucket, prefix string, opts madmin.HealOpts, ...) (e error)
- func (fs *FSObjects) Health(ctx context.Context, opts HealthOptions) HealthResult
- func (fs *FSObjects) IsCompressionSupported() bool
- func (fs *FSObjects) IsEncryptionSupported() bool
- func (fs *FSObjects) IsListenSupported() bool
- func (fs *FSObjects) IsNotificationSupported() bool
- func (fs *FSObjects) IsTaggingSupported() bool
- func (fs *FSObjects) ListBuckets(ctx context.Context) ([]BucketInfo, error)
- func (fs *FSObjects) ListMultipartUploads(ctx context.Context, ...) (result ListMultipartsInfo, e error)
- func (fs *FSObjects) ListObjectParts(ctx context.Context, bucket, object, uploadID string, ...) (result ListPartsInfo, e error)
- func (fs *FSObjects) ListObjectVersions(ctx context.Context, bucket, prefix, marker, versionMarker, delimiter string, ...) (loi ListObjectVersionsInfo, e error)
- func (fs *FSObjects) ListObjects(ctx context.Context, bucket, prefix, marker, delimiter string, maxKeys int) (loi ListObjectsInfo, err error)
- func (fs *FSObjects) ListObjectsV2(ctx context.Context, bucket, prefix, continuationToken, delimiter string, ...) (result ListObjectsV2Info, err error)
- func (fs *FSObjects) LocalStorageInfo(ctx context.Context) (StorageInfo, []error)
- func (fs *FSObjects) MakeBucketWithLocation(ctx context.Context, bucket string, opts BucketOptions) error
- func (fs *FSObjects) NSScanner(ctx context.Context, bf *bloomFilter, updates chan<- DataUsageInfo, ...) error
- func (fs *FSObjects) NewMultipartUpload(ctx context.Context, bucket, object string, opts ObjectOptions) (string, error)
- func (fs *FSObjects) NewNSLock(bucket string, objects ...string) RWLocker
- func (fs *FSObjects) PutObject(ctx context.Context, bucket string, object string, r *PutObjReader, ...) (objInfo ObjectInfo, err error)
- func (fs *FSObjects) PutObjectPart(ctx context.Context, bucket, object, uploadID string, partID int, ...) (pi PartInfo, e error)
- func (fs *FSObjects) PutObjectTags(ctx context.Context, bucket, object string, tags string, opts ObjectOptions) (ObjectInfo, error)
- func (fs *FSObjects) ReadHealth(ctx context.Context) bool
- func (fs *FSObjects) RestoreTransitionedObject(ctx context.Context, bucket, object string, opts ObjectOptions) error
- func (fs *FSObjects) SetBucketPolicy(ctx context.Context, bucket string, p *policy.Policy) error
- func (fs *FSObjects) SetDriveCounts() []int
- func (fs *FSObjects) Shutdown(ctx context.Context) error
- func (fs *FSObjects) StorageInfo(ctx context.Context) (StorageInfo, []error)
- func (fs *FSObjects) TransitionObject(ctx context.Context, bucket, object string, opts ObjectOptions) error
- func (fs *FSObjects) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo, ...) error
- type FileInfo
- func (fi FileInfo) AcceptableDelta(maxTime time.Time, delta time.Duration) bool
- func (fi *FileInfo) AddObjectPart(partNumber int, partETag string, partSize int64, actualSize int64)
- func (fi FileInfo) DataShardFixed() bool
- func (z *FileInfo) DecodeMsg(dc *msgp.Reader) (err error)
- func (fi *FileInfo) DeleteMarkerReplicationStatus() replication.StatusType
- func (z *FileInfo) EncodeMsg(en *msgp.Writer) (err error)
- func (fi FileInfo) Equals(ofi FileInfo) (ok bool)
- func (fi FileInfo) GetDataDir() string
- func (fi FileInfo) InlineData() bool
- func (fi FileInfo) IsRemote() bool
- func (fi *FileInfo) IsRestoreObjReq() bool
- func (fi FileInfo) IsValid() bool
- func (z *FileInfo) MarshalMsg(b []byte) (o []byte, err error)
- func (fi FileInfo) MetadataEquals(ofi FileInfo) bool
- func (z *FileInfo) Msgsize() (s int)
- func (fi FileInfo) ObjectToPartOffset(ctx context.Context, offset int64) (partIndex int, partOffset int64, err error)
- func (fi FileInfo) ReplicationInfoEquals(ofi FileInfo) bool
- func (fi *FileInfo) SetInlineData()
- func (fi *FileInfo) SetTierFreeVersion()
- func (fi *FileInfo) SetTierFreeVersionID(versionID string)
- func (fi *FileInfo) TierFreeVersion() bool
- func (fi *FileInfo) TierFreeVersionID() string
- func (fi FileInfo) ToObjectInfo(bucket, object string) ObjectInfo
- func (fi FileInfo) TransitionInfoEquals(ofi FileInfo) bool
- func (z *FileInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
- func (fi *FileInfo) VersionPurgeStatus() VersionPurgeStatusType
- type FileInfoVersions
- func (z *FileInfoVersions) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *FileInfoVersions) EncodeMsg(en *msgp.Writer) (err error)
- func (z *FileInfoVersions) MarshalMsg(b []byte) (o []byte, err error)
- func (z *FileInfoVersions) Msgsize() (s int)
- func (f FileInfoVersions) Size() (size int64)
- func (z *FileInfoVersions) UnmarshalMsg(bts []byte) (o []byte, err error)
- type FileLogger
- type FilesInfo
- type Gateway
- type GatewayLocker
- type GatewayUnsupported
- func (a GatewayUnsupported) AbortMultipartUpload(ctx context.Context, bucket string, object string, uploadID string, ...) error
- func (a GatewayUnsupported) BackendInfo() madmin.BackendInfo
- func (a GatewayUnsupported) CompleteMultipartUpload(ctx context.Context, bucket string, object string, uploadID string, ...) (oi ObjectInfo, err error)
- func (a GatewayUnsupported) CopyObject(ctx context.Context, srcBucket string, srcObject string, destBucket string, ...) (objInfo ObjectInfo, err error)
- func (a GatewayUnsupported) CopyObjectPart(ctx context.Context, ...) (pi PartInfo, err error)
- func (a GatewayUnsupported) DeleteBucketLifecycle(ctx context.Context, bucket string) error
- func (a GatewayUnsupported) DeleteBucketPolicy(ctx context.Context, bucket string) error
- func (a GatewayUnsupported) DeleteBucketSSEConfig(ctx context.Context, bucket string) error
- func (a GatewayUnsupported) DeleteObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (ObjectInfo, error)
- func (a GatewayUnsupported) GetBucketLifecycle(ctx context.Context, bucket string) (*lifecycle.Lifecycle, error)
- func (a GatewayUnsupported) GetBucketPolicy(ctx context.Context, bucket string) (bucketPolicy *policy.Policy, err error)
- func (a GatewayUnsupported) GetBucketSSEConfig(ctx context.Context, bucket string) (*bucketsse.BucketSSEConfig, error)
- func (a GatewayUnsupported) GetBucketVersioning(ctx context.Context, bucket string) (*versioning.Versioning, error)
- func (a GatewayUnsupported) GetMetrics(ctx context.Context) (*BackendMetrics, error)
- func (a GatewayUnsupported) GetMultipartInfo(ctx context.Context, bucket string, object string, uploadID string, ...) (MultipartInfo, error)
- func (a GatewayUnsupported) GetObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (*tags.Tags, error)
- func (a GatewayUnsupported) HealBucket(ctx context.Context, bucket string, opts madmin.HealOpts) (madmin.HealResultItem, error)
- func (a GatewayUnsupported) HealFormat(ctx context.Context, dryRun bool) (madmin.HealResultItem, error)
- func (a GatewayUnsupported) HealObject(ctx context.Context, bucket, object, versionID string, opts madmin.HealOpts) (h madmin.HealResultItem, e error)
- func (a GatewayUnsupported) HealObjects(ctx context.Context, bucket, prefix string, opts madmin.HealOpts, ...) (e error)
- func (a GatewayUnsupported) Health(_ context.Context, _ HealthOptions) HealthResult
- func (a GatewayUnsupported) IsCompressionSupported() bool
- func (a GatewayUnsupported) IsEncryptionSupported() bool
- func (a GatewayUnsupported) IsListenSupported() bool
- func (a GatewayUnsupported) IsNotificationSupported() bool
- func (a GatewayUnsupported) IsTaggingSupported() bool
- func (a GatewayUnsupported) ListMultipartUploads(ctx context.Context, bucket string, prefix string, keyMarker string, ...) (lmi ListMultipartsInfo, err error)
- func (a GatewayUnsupported) ListObjectParts(ctx context.Context, bucket string, object string, uploadID string, ...) (lpi ListPartsInfo, err error)
- func (a GatewayUnsupported) ListObjectVersions(ctx context.Context, bucket, prefix, marker, versionMarker, delimiter string, ...) (ListObjectVersionsInfo, error)
- func (a GatewayUnsupported) ListObjectsV2(ctx context.Context, bucket, prefix, continuationToken, delimiter string, ...) (result ListObjectsV2Info, err error)
- func (a GatewayUnsupported) LocalStorageInfo(ctx context.Context) (StorageInfo, []error)
- func (a GatewayUnsupported) NSScanner(ctx context.Context, bf *bloomFilter, updates chan<- DataUsageInfo, ...) error
- func (a GatewayUnsupported) NewMultipartUpload(ctx context.Context, bucket string, object string, opts ObjectOptions) (uploadID string, err error)
- func (a GatewayUnsupported) NewNSLock(bucket string, objects ...string) RWLocker
- func (a GatewayUnsupported) PutObjectMetadata(ctx context.Context, bucket, object string, opts ObjectOptions) (ObjectInfo, error)
- func (a GatewayUnsupported) PutObjectPart(ctx context.Context, bucket string, object string, uploadID string, partID int, ...) (pi PartInfo, err error)
- func (a GatewayUnsupported) PutObjectTags(ctx context.Context, bucket, object string, tags string, opts ObjectOptions) (ObjectInfo, error)
- func (a GatewayUnsupported) ReadHealth(_ context.Context) bool
- func (a GatewayUnsupported) RestoreTransitionedObject(ctx context.Context, bucket, object string, opts ObjectOptions) error
- func (a GatewayUnsupported) SetBucketLifecycle(ctx context.Context, bucket string, lifecycle *lifecycle.Lifecycle) error
- func (a GatewayUnsupported) SetBucketPolicy(ctx context.Context, bucket string, bucketPolicy *policy.Policy) error
- func (a GatewayUnsupported) SetBucketSSEConfig(ctx context.Context, bucket string, config *bucketsse.BucketSSEConfig) error
- func (a GatewayUnsupported) SetBucketVersioning(ctx context.Context, bucket string, v *versioning.Versioning) error
- func (a GatewayUnsupported) SetDriveCounts() []int
- func (a GatewayUnsupported) TransitionObject(ctx context.Context, bucket, object string, opts ObjectOptions) error
- func (a GatewayUnsupported) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo, ...) error
- type GenericError
- type GetObjectInfoFn
- type GetObjectReader
- type GroupInfo
- type HTTPAPIStats
- type HTTPConsoleLoggerSys
- func (sys *HTTPConsoleLoggerSys) Cancel()
- func (sys *HTTPConsoleLoggerSys) Content() (logs []log.Entry)
- func (sys *HTTPConsoleLoggerSys) Endpoint() string
- func (sys *HTTPConsoleLoggerSys) HasLogListeners() bool
- func (sys *HTTPConsoleLoggerSys) Init() error
- func (sys *HTTPConsoleLoggerSys) Send(e interface{}, logKind string) error
- func (sys *HTTPConsoleLoggerSys) SetNodeName(nodeName string)
- func (sys *HTTPConsoleLoggerSys) String() string
- func (sys *HTTPConsoleLoggerSys) Subscribe(subCh chan interface{}, doneCh <-chan struct{}, node string, last int, ...)
- func (sys *HTTPConsoleLoggerSys) Type() types.TargetType
- type HTTPRangeSpec
- type HTTPStats
- type HealObjectFn
- type HealthOptions
- type HealthResult
- type Help
- type IAMEtcdStore
- type IAMObjectStore
- type IAMStorageAPI
- type IAMStoreSys
- func (store *IAMStoreSys) AddServiceAccount(ctx context.Context, cred auth.Credentials) error
- func (store *IAMStoreSys) AddUser(ctx context.Context, accessKey string, ureq madmin.AddOrUpdateUserReq) error
- func (store *IAMStoreSys) AddUsersToGroup(ctx context.Context, group string, members []string) error
- func (store *IAMStoreSys) DeletePolicy(ctx context.Context, policy string) error
- func (store *IAMStoreSys) DeleteUser(ctx context.Context, accessKey string, userType IAMUserType) error
- func (store *IAMStoreSys) DeleteUsers(ctx context.Context, users []string) error
- func (store *IAMStoreSys) FilterPolicies(policyName string, bucketName string) (string, iampolicy.Policy)
- func (store *IAMStoreSys) GetAllParentUsers() map[string]string
- func (store *IAMStoreSys) GetBucketUsers(bucket string) (map[string]madmin.UserInfo, error)
- func (store *IAMStoreSys) GetGroupDescription(group string) (gd madmin.GroupDesc, err error)
- func (store *IAMStoreSys) GetMappedPolicy(name string, isGroup bool) (MappedPolicy, bool)
- func (store *IAMStoreSys) GetPolicy(name string) (iampolicy.Policy, error)
- func (store *IAMStoreSys) GetPolicyDoc(name string) (r PolicyDoc, err error)
- func (store *IAMStoreSys) GetSTSAndServiceAccounts() []auth.Credentials
- func (store *IAMStoreSys) GetUser(user string) (auth.Credentials, bool)
- func (store *IAMStoreSys) GetUserInfo(name string) (u madmin.UserInfo, err error)
- func (store *IAMStoreSys) GetUsers() map[string]madmin.UserInfo
- func (store *IAMStoreSys) GroupNotificationHandler(ctx context.Context, group string) error
- func (store *IAMStoreSys) HasWatcher() bool
- func (store *IAMStoreSys) ListGroups(ctx context.Context) (res []string, err error)
- func (store *IAMStoreSys) ListPolicies(ctx context.Context, bucketName string) (map[string]iampolicy.Policy, error)
- func (store *IAMStoreSys) ListServiceAccounts(ctx context.Context, accessKey string) ([]auth.Credentials, error)
- func (store *IAMStoreSys) LoadIAMCache(ctx context.Context) error
- func (store *IAMStoreSys) LoadUser(ctx context.Context, accessKey string)
- func (store *IAMStoreSys) PolicyDBGet(name string, isGroup bool, groups ...string) ([]string, error)
- func (store *IAMStoreSys) PolicyDBSet(ctx context.Context, name, policy string, userType IAMUserType, isGroup bool) error
- func (store *IAMStoreSys) PolicyMappingNotificationHandler(ctx context.Context, userOrGroup string, isGroup bool, userType IAMUserType) error
- func (store *IAMStoreSys) PolicyNotificationHandler(ctx context.Context, policy string) error
- func (store *IAMStoreSys) RemoveUsersFromGroup(ctx context.Context, group string, members []string) error
- func (store *IAMStoreSys) SetGroupStatus(ctx context.Context, group string, enabled bool) error
- func (store *IAMStoreSys) SetPolicy(ctx context.Context, name string, policy iampolicy.Policy) error
- func (store *IAMStoreSys) SetTempUser(ctx context.Context, accessKey string, cred auth.Credentials, ...) error
- func (store *IAMStoreSys) SetUserStatus(ctx context.Context, accessKey string, status madmin.AccountStatus) error
- func (store *IAMStoreSys) UpdateServiceAccount(ctx context.Context, accessKey string, opts updateServiceAccountOpts) error
- func (store *IAMStoreSys) UpdateUserIdentity(ctx context.Context, cred auth.Credentials) error
- func (store *IAMStoreSys) UpdateUserSecretKey(ctx context.Context, accessKey, secretKey string) error
- func (store *IAMStoreSys) UserNotificationHandler(ctx context.Context, accessKey string, userType IAMUserType) error
- type IAMSys
- func (sys *IAMSys) AddUsersToGroup(ctx context.Context, group string, members []string) error
- func (sys *IAMSys) CreateUser(ctx context.Context, accessKey string, ureq madmin.AddOrUpdateUserReq) error
- func (sys *IAMSys) CurrentPolicies(policyName string) string
- func (sys *IAMSys) DeletePolicy(ctx context.Context, policyName string, notifyPeers bool) error
- func (sys *IAMSys) DeleteServiceAccount(ctx context.Context, accessKey string, notifyPeers bool) error
- func (sys *IAMSys) DeleteUser(ctx context.Context, accessKey string, notifyPeers bool) error
- func (sys *IAMSys) EnableLDAPSys()
- func (sys *IAMSys) GetClaimsForSvcAcc(ctx context.Context, accessKey string) (map[string]interface{}, error)
- func (sys *IAMSys) GetCombinedPolicy(policies ...string) iampolicy.Policy
- func (sys *IAMSys) GetGroupDescription(group string) (gd madmin.GroupDesc, err error)
- func (sys *IAMSys) GetRolePolicy(arnStr string) (string, error)
- func (sys *IAMSys) GetServiceAccount(ctx context.Context, accessKey string) (auth.Credentials, *iampolicy.Policy, error)
- func (sys *IAMSys) GetUser(ctx context.Context, accessKey string) (cred auth.Credentials, ok bool)
- func (sys *IAMSys) GetUserInfo(ctx context.Context, name string) (u madmin.UserInfo, err error)
- func (sys *IAMSys) HasRolePolicy() bool
- func (sys *IAMSys) HasWatcher() bool
- func (sys *IAMSys) InfoPolicy(policyName string) (*madmin.PolicyInfo, error)
- func (sys *IAMSys) Init(ctx context.Context, objAPI ObjectLayer, etcdClient *etcd.Client, ...)
- func (sys *IAMSys) Initialized() bool
- func (sys *IAMSys) IsAllowed(args iampolicy.Args) bool
- func (sys *IAMSys) IsAllowedLDAPSTS(args iampolicy.Args, parentUser string) bool
- func (sys *IAMSys) IsAllowedSTS(args iampolicy.Args, parentUser string) bool
- func (sys *IAMSys) IsAllowedServiceAccount(args iampolicy.Args, parentUser string) bool
- func (sys *IAMSys) IsServiceAccount(name string) (bool, string, error)
- func (sys *IAMSys) IsTempUser(name string) (bool, string, error)
- func (sys *IAMSys) ListBucketUsers(bucket string) (map[string]madmin.UserInfo, error)
- func (sys *IAMSys) ListGroups(ctx context.Context) (r []string, err error)
- func (sys *IAMSys) ListPolicies(ctx context.Context, bucketName string) (map[string]iampolicy.Policy, error)
- func (sys *IAMSys) ListServiceAccounts(ctx context.Context, accessKey string) ([]auth.Credentials, error)
- func (sys *IAMSys) ListUsers() (map[string]madmin.UserInfo, error)
- func (sys *IAMSys) Load(ctx context.Context) error
- func (sys *IAMSys) LoadGroup(ctx context.Context, objAPI ObjectLayer, group string) error
- func (sys *IAMSys) LoadPolicy(ctx context.Context, objAPI ObjectLayer, policyName string) error
- func (sys *IAMSys) LoadPolicyMapping(ctx context.Context, objAPI ObjectLayer, userOrGroup string, isGroup bool) error
- func (sys *IAMSys) LoadServiceAccount(ctx context.Context, accessKey string) error
- func (sys *IAMSys) LoadUser(ctx context.Context, objAPI ObjectLayer, accessKey string, ...) error
- func (sys *IAMSys) NewServiceAccount(ctx context.Context, parentUser string, groups []string, ...) (auth.Credentials, error)
- func (sys *IAMSys) PolicyDBGet(name string, isGroup bool, groups ...string) ([]string, error)
- func (sys *IAMSys) PolicyDBSet(ctx context.Context, name, policy string, isGroup bool) error
- func (sys *IAMSys) RemoveUsersFromGroup(ctx context.Context, group string, members []string) error
- func (sys *IAMSys) SetGroupStatus(ctx context.Context, group string, enabled bool) error
- func (sys *IAMSys) SetPolicy(ctx context.Context, policyName string, p iampolicy.Policy) error
- func (sys *IAMSys) SetTempUser(ctx context.Context, accessKey string, cred auth.Credentials, ...) error
- func (sys *IAMSys) SetUserSecretKey(ctx context.Context, accessKey string, secretKey string) error
- func (sys *IAMSys) SetUserStatus(ctx context.Context, accessKey string, status madmin.AccountStatus) error
- func (sys *IAMSys) UpdateServiceAccount(ctx context.Context, accessKey string, opts updateServiceAccountOpts) error
- type IAMUserType
- type IncompleteBody
- type InitiateMultipartUploadResponse
- type Initiator
- type InsufficientReadQuorum
- type InsufficientWriteQuorum
- type InvalidArgument
- type InvalidETag
- type InvalidMarkerPrefixCombination
- type InvalidObjectState
- type InvalidPart
- type InvalidRange
- type InvalidUploadID
- type InvalidUploadIDKeyCombination
- type InvalidVersionID
- type IsLeafDirFunc
- type IsLeafFunc
- type LDAPIdentityResult
- type LastMinuteLatencies
- func (l *LastMinuteLatencies) Add(size int64, t time.Duration)
- func (z *LastMinuteLatencies) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *LastMinuteLatencies) EncodeMsg(en *msgp.Writer) (err error)
- func (l *LastMinuteLatencies) GetAvgData() [sizeLastElemMarker]AccElem
- func (z *LastMinuteLatencies) MarshalMsg(b []byte) (o []byte, err error)
- func (l LastMinuteLatencies) Merge(o LastMinuteLatencies) (merged LastMinuteLatencies)
- func (z *LastMinuteLatencies) Msgsize() (s int)
- func (z *LastMinuteLatencies) UnmarshalMsg(bts []byte) (o []byte, err error)
- type LifecycleSys
- type ListBucketsResponse
- type ListDirFunc
- type ListMultipartUploadsResponse
- type ListMultipartsInfo
- type ListObjectVersionsInfo
- type ListObjectsInfo
- type ListObjectsResponse
- type ListObjectsV2Info
- type ListObjectsV2Response
- type ListPartsInfo
- type ListPartsResponse
- type ListVersionsResponse
- type LocationResponse
- type LockContext
- type LockType
- type MalformedUploadID
- type MappedPolicy
- type MetadataEntry
- type MethodNotAllowed
- type Metric
- type MetricDescription
- type MetricName
- type MetricNamespace
- type MetricSubsystem
- type MetricType
- type MetricsGroup
- type MetricsTransport
- type MultipartInfo
- type NotImplemented
- type NotificationGroup
- type NotificationPeerErr
- type NotificationSys
- func (sys *NotificationSys) AddRulesMap(bucketName string, rulesMap event.RulesMap)
- func (sys *NotificationSys) BackgroundHealStatus() ([]madmin.BgHealState, []NotificationPeerErr)
- func (sys *NotificationSys) ConfiguredTargetIDs() []event.TargetID
- func (sys *NotificationSys) DeleteBucketMetadata(ctx context.Context, bucketName string)
- func (sys *NotificationSys) DeletePolicy(policyName string) []NotificationPeerErr
- func (sys *NotificationSys) DeleteServiceAccount(accessKey string) []NotificationPeerErr
- func (sys *NotificationSys) DeleteUser(accessKey string) []NotificationPeerErr
- func (sys *NotificationSys) DispatchNetPerfChan(ctx context.Context) chan madmin.NetPerfInfo
- func (sys *NotificationSys) DispatchNetPerfInfo(ctx context.Context) []madmin.NetPerfInfo
- func (sys *NotificationSys) DownloadProfilingData(ctx context.Context, writer io.Writer) bool
- func (sys *NotificationSys) DriveSpeedTest(ctx context.Context, opts madmin.DriveSpeedTestOpts) chan madmin.DriveSpeedTestResult
- func (sys *NotificationSys) GetARNList(onlyActive bool) []string
- func (sys *NotificationSys) GetBandwidthReports(ctx context.Context, buckets ...string) madmin.BucketBandwidthReport
- func (sys *NotificationSys) GetCPUs(ctx context.Context) []madmin.CPUs
- func (sys *NotificationSys) GetClusterBucketStats(ctx context.Context, bucketName string) []BucketStats
- func (sys *NotificationSys) GetClusterMetrics(ctx context.Context) chan Metric
- func (sys *NotificationSys) GetDrivePerfInfos(ctx context.Context) chan madmin.DrivePerfInfos
- func (sys *NotificationSys) GetLastDayTierStats(ctx context.Context) dailyAllTierStats
- func (sys *NotificationSys) GetLocalDiskIDs(ctx context.Context) (localDiskIDs [][]string)
- func (sys *NotificationSys) GetLocks(ctx context.Context, r *http.Request) []*PeerLocks
- func (sys *NotificationSys) GetMemInfo(ctx context.Context) []madmin.MemInfo
- func (sys *NotificationSys) GetNetPerfInfo(ctx context.Context) madmin.NetPerfInfo
- func (sys *NotificationSys) GetOSInfo(ctx context.Context) []madmin.OSInfo
- func (sys *NotificationSys) GetParallelNetPerfInfo(ctx context.Context) madmin.NetPerfInfo
- func (sys *NotificationSys) GetPartitions(ctx context.Context) []madmin.Partitions
- func (sys *NotificationSys) GetProcInfo(ctx context.Context) []madmin.ProcInfo
- func (sys *NotificationSys) GetSysConfig(ctx context.Context) []madmin.SysConfig
- func (sys *NotificationSys) GetSysErrors(ctx context.Context) []madmin.SysErrors
- func (sys *NotificationSys) GetSysServices(ctx context.Context) []madmin.SysServices
- func (sys *NotificationSys) InitBucketTargets(ctx context.Context, objAPI ObjectLayer) error
- func (sys *NotificationSys) LoadBucketMetadata(ctx context.Context, bucketName string)
- func (sys *NotificationSys) LoadGroup(group string) []NotificationPeerErr
- func (sys *NotificationSys) LoadPolicy(policyName string) []NotificationPeerErr
- func (sys *NotificationSys) LoadPolicyMapping(userOrGroup string, isGroup bool) []NotificationPeerErr
- func (sys *NotificationSys) LoadServiceAccount(accessKey string) []NotificationPeerErr
- func (sys *NotificationSys) LoadTransitionTierConfig(ctx context.Context)
- func (sys *NotificationSys) LoadUser(accessKey string, temp bool) []NotificationPeerErr
- func (sys *NotificationSys) Netperf(ctx context.Context, duration time.Duration) []madmin.NetperfNodeResult
- func (sys *NotificationSys) ReloadPoolMeta(ctx context.Context)
- func (sys *NotificationSys) ReloadSiteReplicationConfig(ctx context.Context) []error
- func (sys *NotificationSys) RemoveAllRemoteTargets()
- func (sys *NotificationSys) RemoveNotification(bucketName string)
- func (sys *NotificationSys) RemoveRulesMap(bucketName string, rulesMap event.RulesMap)
- func (sys *NotificationSys) Send(args eventArgs)
- func (sys *NotificationSys) ServerInfo() []madmin.ServerProperties
- func (sys *NotificationSys) ServerUpdate(ctx context.Context, u *url.URL, sha256Sum []byte, lrTime time.Time, ...) []NotificationPeerErr
- func (sys *NotificationSys) ServiceFreeze(ctx context.Context, freeze bool) []NotificationPeerErr
- func (sys *NotificationSys) SignalService(sig serviceSignal) []NotificationPeerErr
- func (sys *NotificationSys) Speedtest(ctx context.Context, size int, concurrent int, duration time.Duration, ...) []SpeedtestResult
- func (sys *NotificationSys) StartProfiling(profiler string) []NotificationPeerErr
- type ObjReaderFn
- type Object
- type ObjectAlreadyExists
- type ObjectExistsAsDirectory
- type ObjectInfo
- func (o ObjectInfo) Clone() (cinfo ObjectInfo)
- func (o *ObjectInfo) DecryptedSize() (int64, error)
- func (o *ObjectInfo) EncryptedSize() int64
- func (o ObjectInfo) GetActualETag(h http.Header) string
- func (o ObjectInfo) GetActualSize() (int64, error)
- func (o *ObjectInfo) GetDecryptedRange(rs *HTTPRangeSpec) (encOff, encLength, skipLen int64, seqNumber uint32, partStart int, err error)
- func (o ObjectInfo) IsCacheable() bool
- func (o ObjectInfo) IsCompressed() bool
- func (o ObjectInfo) IsCompressedOK() (bool, error)
- func (oi ObjectInfo) IsRemote() bool
- func (o *ObjectInfo) KMSKeyID() string
- func (o *ObjectInfo) TargetReplicationStatus(arn string) (status replication.StatusType)
- func (oi ObjectInfo) ToLifecycleOpts() lifecycle.ObjectOpts
- type ObjectLayer
- type ObjectLocked
- type ObjectNameInvalid
- type ObjectNamePrefixAsSlash
- type ObjectNameTooLong
- type ObjectNotFound
- type ObjectOptions
- func (o *ObjectOptions) DeleteMarkerReplicationStatus() replication.StatusType
- func (o *ObjectOptions) PutReplicationState() (r ReplicationState)
- func (o *ObjectOptions) SetDeleteReplicationState(dsc ReplicateDecision, vID string)
- func (o *ObjectOptions) SetReplicaStatus(st replication.StatusType)
- func (o *ObjectOptions) VersionPurgeStatus() VersionPurgeStatusType
- type ObjectPartInfo
- func (z *ObjectPartInfo) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ObjectPartInfo) EncodeMsg(en *msgp.Writer) (err error)
- func (z *ObjectPartInfo) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ObjectPartInfo) Msgsize() (s int)
- func (z *ObjectPartInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ObjectToDelete
- type ObjectTooLarge
- type ObjectTooSmall
- type ObjectV
- type ObjectVersion
- type OpenIDClientAppParams
- type OperationTimedOut
- type OutputLocation
- type Owner
- type Part
- type PartInfo
- type PartTooBig
- type PartTooSmall
- type PeerLocks
- type PeerSiteInfo
- type PolicyDoc
- type PolicyStatus
- type PolicySys
- type PoolDecommissionInfo
- func (z *PoolDecommissionInfo) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *PoolDecommissionInfo) EncodeMsg(en *msgp.Writer) (err error)
- func (z *PoolDecommissionInfo) MarshalMsg(b []byte) (o []byte, err error)
- func (z *PoolDecommissionInfo) Msgsize() (s int)
- func (z *PoolDecommissionInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
- type PoolEndpoints
- type PoolStatus
- type PostPolicyForm
- type PostResponse
- type PreConditionFailed
- type PrefixAccessDenied
- type ProxyEndpoint
- type PutObjReader
- type RWLocker
- type RangeInfo
- type ReplicateDecision
- func (z *ReplicateDecision) DecodeMsg(dc *msgp.Reader) (err error)
- func (z ReplicateDecision) EncodeMsg(en *msgp.Writer) (err error)
- func (z ReplicateDecision) MarshalMsg(b []byte) (o []byte, err error)
- func (z ReplicateDecision) Msgsize() (s int)
- func (d *ReplicateDecision) PendingStatus() string
- func (d *ReplicateDecision) ReplicateAny() bool
- func (d *ReplicateDecision) Set(t replicateTargetDecision)
- func (d *ReplicateDecision) String() string
- func (d *ReplicateDecision) Synchronous() bool
- func (z *ReplicateDecision) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ReplicateObjectInfo
- type ReplicationLatency
- func (z *ReplicationLatency) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ReplicationLatency) EncodeMsg(en *msgp.Writer) (err error)
- func (z *ReplicationLatency) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ReplicationLatency) Msgsize() (s int)
- func (z *ReplicationLatency) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ReplicationPool
- type ReplicationState
- func (rs *ReplicationState) CompositeReplicationStatus() (st replication.StatusType)
- func (rs *ReplicationState) CompositeVersionPurgeStatus() VersionPurgeStatusType
- func (z *ReplicationState) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ReplicationState) EncodeMsg(en *msgp.Writer) (err error)
- func (rs *ReplicationState) Equal(o ReplicationState) bool
- func (z *ReplicationState) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ReplicationState) Msgsize() (s int)
- func (z *ReplicationState) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ReplicationStats
- func (r *ReplicationStats) Delete(bucket string)
- func (r *ReplicationStats) Get(bucket string) BucketReplicationStats
- func (r *ReplicationStats) GetInitialUsage(bucket string) BucketReplicationStats
- func (r *ReplicationStats) Update(bucket string, arn string, n int64, duration time.Duration, ...)
- func (r *ReplicationStats) UpdateReplicaStat(bucket string, n int64)
- type RequestStats
- type RestoreObjectRequest
- type RestoreRequestType
- type ResyncDecision
- func (z *ResyncDecision) DecodeMsg(dc *msgp.Reader) (err error)
- func (r *ResyncDecision) Empty() bool
- func (z ResyncDecision) EncodeMsg(en *msgp.Writer) (err error)
- func (z ResyncDecision) MarshalMsg(b []byte) (o []byte, err error)
- func (z ResyncDecision) Msgsize() (s int)
- func (z *ResyncDecision) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ResyncStatusType
- func (z *ResyncStatusType) DecodeMsg(dc *msgp.Reader) (err error)
- func (z ResyncStatusType) EncodeMsg(en *msgp.Writer) (err error)
- func (z ResyncStatusType) MarshalMsg(b []byte) (o []byte, err error)
- func (z ResyncStatusType) Msgsize() (s int)
- func (rt ResyncStatusType) String() string
- func (z *ResyncStatusType) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ResyncTarget
- func (z *ResyncTarget) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ResyncTarget) EncodeMsg(en *msgp.Writer) (err error)
- func (z *ResyncTarget) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ResyncTarget) Msgsize() (s int)
- func (z *ResyncTarget) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ResyncTargetDecision
- func (z *ResyncTargetDecision) DecodeMsg(dc *msgp.Reader) (err error)
- func (z ResyncTargetDecision) EncodeMsg(en *msgp.Writer) (err error)
- func (z ResyncTargetDecision) MarshalMsg(b []byte) (o []byte, err error)
- func (z ResyncTargetDecision) Msgsize() (s int)
- func (z *ResyncTargetDecision) UnmarshalMsg(bts []byte) (o []byte, err error)
- type ResyncTargetsInfo
- func (z *ResyncTargetsInfo) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *ResyncTargetsInfo) EncodeMsg(en *msgp.Writer) (err error)
- func (z *ResyncTargetsInfo) MarshalMsg(b []byte) (o []byte, err error)
- func (z *ResyncTargetsInfo) Msgsize() (s int)
- func (z *ResyncTargetsInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
- type S3Location
- type SRError
- type STSError
- type STSErrorCode
- type STSErrorResponse
- type SealMD5CurrFn
- type SelectParameters
- type ServerConnStats
- type ServerHTTPAPIStats
- type ServerHTTPStats
- type ServerProperties
- type ServerSystemConfig
- type SetupType
- type SignatureDoesNotMatch
- type SiteReplicationSys
- func (c *SiteReplicationSys) AddPeerClusters(ctx context.Context, psites []madmin.PeerSite) (madmin.ReplicateAddStatus, error)
- func (c *SiteReplicationSys) BucketMetaHook(ctx context.Context, item madmin.SRBucketMeta) error
- func (c *SiteReplicationSys) DeleteBucketHook(ctx context.Context, bucket string, forceDelete bool) error
- func (c *SiteReplicationSys) EditPeerCluster(ctx context.Context, peer madmin.PeerInfo) (madmin.ReplicateEditStatus, error)
- func (c *SiteReplicationSys) GetClusterInfo(ctx context.Context) (info madmin.SiteReplicationInfo, err error)
- func (c *SiteReplicationSys) GetIDPSettings(ctx context.Context) madmin.IDPSettings
- func (c *SiteReplicationSys) IAMChangeHook(ctx context.Context, item madmin.SRIAMItem) error
- func (c *SiteReplicationSys) Init(ctx context.Context, objAPI ObjectLayer) error
- func (c *SiteReplicationSys) InternalRemoveReq(ctx context.Context, objectAPI ObjectLayer, rreq madmin.SRRemoveReq) error
- func (c *SiteReplicationSys) MakeBucketHook(ctx context.Context, bucket string, opts BucketOptions) error
- func (c *SiteReplicationSys) PeerAddPolicyHandler(ctx context.Context, policyName string, p *iampolicy.Policy) error
- func (c *SiteReplicationSys) PeerBucketConfigureReplHandler(ctx context.Context, bucket string) error
- func (c *SiteReplicationSys) PeerBucketDeleteHandler(ctx context.Context, bucket string, forceDelete bool) error
- func (c *SiteReplicationSys) PeerBucketMakeWithVersioningHandler(ctx context.Context, bucket string, opts BucketOptions) error
- func (c *SiteReplicationSys) PeerBucketObjectLockConfigHandler(ctx context.Context, bucket string, objectLockData *string) error
- func (c *SiteReplicationSys) PeerBucketPolicyHandler(ctx context.Context, bucket string, policy *policy.Policy) error
- func (c *SiteReplicationSys) PeerBucketQuotaConfigHandler(ctx context.Context, bucket string, quota *madmin.BucketQuota) error
- func (c *SiteReplicationSys) PeerBucketSSEConfigHandler(ctx context.Context, bucket string, sseConfig *string) error
- func (c *SiteReplicationSys) PeerBucketTaggingHandler(ctx context.Context, bucket string, tags *string) error
- func (c *SiteReplicationSys) PeerEditReq(ctx context.Context, arg madmin.PeerInfo) error
- func (c *SiteReplicationSys) PeerGroupInfoChangeHandler(ctx context.Context, change *madmin.SRGroupInfo) error
- func (c *SiteReplicationSys) PeerIAMUserChangeHandler(ctx context.Context, change *madmin.SRIAMUser) error
- func (c *SiteReplicationSys) PeerJoinReq(ctx context.Context, arg madmin.SRPeerJoinReq) error
- func (c *SiteReplicationSys) PeerPolicyMappingHandler(ctx context.Context, mapping *madmin.SRPolicyMapping) error
- func (c *SiteReplicationSys) PeerSTSAccHandler(ctx context.Context, stsCred *madmin.SRSTSCredential) error
- func (c *SiteReplicationSys) PeerSvcAccChangeHandler(ctx context.Context, change *madmin.SRSvcAccChange) error
- func (c *SiteReplicationSys) RemovePeerCluster(ctx context.Context, objectAPI ObjectLayer, rreq madmin.SRRemoveReq) (st madmin.ReplicateRemoveStatus, err error)
- func (c *SiteReplicationSys) RemoveRemoteTargetsForEndpoint(ctx context.Context, objectAPI ObjectLayer, endpoints []string, ...) (err error)
- func (c *SiteReplicationSys) SiteReplicationMetaInfo(ctx context.Context, objAPI ObjectLayer, opts madmin.SRStatusOptions) (info madmin.SRInfo, err error)
- func (c *SiteReplicationSys) SiteReplicationStatus(ctx context.Context, objAPI ObjectLayer, opts madmin.SRStatusOptions) (info madmin.SRStatusInfo, err error)
- type SlowDown
- type SpeedtestResult
- type StartProfilingResult
- type StatInfo
- type StorageAPI
- type StorageErr
- type StorageFull
- type StorageInfo
- type StringMap
- type TargetClient
- type TargetReplicationResyncStatus
- func (z *TargetReplicationResyncStatus) DecodeMsg(dc *msgp.Reader) (err error)
- func (z *TargetReplicationResyncStatus) EncodeMsg(en *msgp.Writer) (err error)
- func (z *TargetReplicationResyncStatus) MarshalMsg(b []byte) (o []byte, err error)
- func (z *TargetReplicationResyncStatus) Msgsize() (s int)
- func (z *TargetReplicationResyncStatus) UnmarshalMsg(bts []byte) (o []byte, err error)
- type TierConfigMgr
- func (config *TierConfigMgr) Add(ctx context.Context, tier madmin.TierConfig) error
- func (config *TierConfigMgr) Bytes() ([]byte, error)
- func (z *TierConfigMgr) DecodeMsg(dc *msgp.Reader) (err error)
- func (config *TierConfigMgr) Edit(ctx context.Context, tierName string, creds madmin.TierCreds) error
- func (config *TierConfigMgr) Empty() bool
- func (z *TierConfigMgr) EncodeMsg(en *msgp.Writer) (err error)
- func (config *TierConfigMgr) Init(ctx context.Context, objAPI ObjectLayer) error
- func (config *TierConfigMgr) IsTierValid(tierName string) bool
- func (config *TierConfigMgr) ListTiers() []madmin.TierConfig
- func (z *TierConfigMgr) MarshalMsg(b []byte) (o []byte, err error)
- func (z *TierConfigMgr) Msgsize() (s int)
- func (config *TierConfigMgr) Reload(ctx context.Context, objAPI ObjectLayer) error
- func (config *TierConfigMgr) Remove(ctx context.Context, tier string) error
- func (config *TierConfigMgr) Reset()
- func (config *TierConfigMgr) Save(ctx context.Context, objAPI ObjectLayer) error
- func (z *TierConfigMgr) UnmarshalMsg(bts []byte) (o []byte, err error)
- func (config *TierConfigMgr) Verify(ctx context.Context, tier string) error
- type TransitionOptions
- type TransitionStorageClassNotFound
- type TransitionedObject
- type TreeWalkPool
- type TreeWalkResult
- type UnsupportedMetadata
- type Upload
- type UserIdentity
- type UsersSysType
- type VerifyFileResp
- type VersionNotFound
- type VersionPurgeStatusType
- func (z *VersionPurgeStatusType) DecodeMsg(dc *msgp.Reader) (err error)
- func (v VersionPurgeStatusType) Empty() bool
- func (z VersionPurgeStatusType) EncodeMsg(en *msgp.Writer) (err error)
- func (z VersionPurgeStatusType) MarshalMsg(b []byte) (o []byte, err error)
- func (z VersionPurgeStatusType) Msgsize() (s int)
- func (v VersionPurgeStatusType) Pending() bool
- func (z *VersionPurgeStatusType) UnmarshalMsg(bts []byte) (o []byte, err error)
- type VersionType
- func (z *VersionType) DecodeMsg(dc *msgp.Reader) (err error)
- func (z VersionType) EncodeMsg(en *msgp.Writer) (err error)
- func (z VersionType) MarshalMsg(b []byte) (o []byte, err error)
- func (z VersionType) Msgsize() (s int)
- func (i VersionType) String() string
- func (z *VersionType) UnmarshalMsg(bts []byte) (o []byte, err error)
- type VolInfo
- type VolsInfo
- type WalkDirOptions
- type WarmBackend
- type WarmBackendGetOpts
- type WebIdentityResult
Constants ¶
const ( AdminUpdateUnexpectedFailure = "XMinioAdminUpdateUnexpectedFailure" AdminUpdateURLNotReachable = "XMinioAdminUpdateURLNotReachable" AdminUpdateApplyFailure = "XMinioAdminUpdateApplyFailure" )
Admin API errors
const ( // Disabled means the lifecycle rule is inactive Disabled = "Disabled" // TransitionStatus status of transition TransitionStatus = "transition-status" // TransitionedObjectName name of transitioned object TransitionedObjectName = "transitioned-object" // TransitionedVersionID is version of remote object TransitionedVersionID = "transitioned-versionID" // TransitionTier name of transition storage class TransitionTier = "transition-tier" )
const ( // ReplicationReset has reset id and timestamp of last reset operation ReplicationReset = "replication-reset" // ReplicationStatus has internal replication status - stringified representation of target's replication status for all replication // activity initiated from this cluster ReplicationStatus = "replication-status" // ReplicationTimestamp - the last time replication was initiated on this cluster for this object version ReplicationTimestamp = "replication-timestamp" // ReplicaStatus - this header is present if a replica was received by this cluster for this object version ReplicaStatus = "replica-status" // ReplicaTimestamp - the last time a replica was received by this cluster for this object version ReplicaTimestamp = "replica-timestamp" // TaggingTimestamp - the last time a tag metadata modification happened on this cluster for this object version TaggingTimestamp = "tagging-timestamp" // ObjectLockRetentionTimestamp - the last time a object lock metadata modification happened on this cluster for this object version ObjectLockRetentionTimestamp = "objectlock-retention-timestamp" // ObjectLockLegalHoldTimestamp - the last time a legal hold metadata modification happened on this cluster for this object version ObjectLockLegalHoldTimestamp = "objectlock-legalhold-timestamp" // ReplicationWorkerMultiplier is suggested worker multiplier if traffic exceeds replication worker capacity ReplicationWorkerMultiplier = 1.5 )
const ( ReplicateObjectAPI = "ReplicateObject" ReplicateDeleteAPI = "ReplicateDelete" )
Replication specific APIName
const ( // ReplicateQueued - replication being queued trail ReplicateQueued = "replicate:queue" // ReplicateExisting - audit trail for existing objects replication ReplicateExisting = "replicate:existing" // ReplicateExistingDelete - audit trail for delete replication triggered for existing delete markers ReplicateExistingDelete = "replicate:existing:delete" // ReplicateMRF - audit trail for replication from Most Recent Failures (MRF) queue ReplicateMRF = "replicate:mrf" // ReplicateIncoming - audit trail indicating replication started [could be from incoming/existing/heal activity] ReplicateIncoming = "replicate:incoming" // ReplicateHeal - audit trail for healing of failed/pending replications ReplicateHeal = "replicate:heal" // ReplicateDelete - audit trail for delete replication ReplicateDelete = "replicate:delete" )
const ( // ILMExpiry - audit trail for ILM expiry ILMExpiry = "ilm:expiry" // ILMFreeVersionDelete - audit trail for ILM free-version delete ILMFreeVersionDelete = "ilm:free-version-delete" // ILMTransition - audit trail for ILM transitioning. ILMTransition = " ilm:transition" )
const ( // CommitPending - cache writeback with backend is pending. CommitPending cacheCommitStatus = "pending" // CommitComplete - cache writeback completed ok. CommitComplete cacheCommitStatus = "complete" // CommitFailed - cache writeback needs a retry. CommitFailed cacheCommitStatus = "failed" )
const ( // CommitWriteBack allows staging and write back of cached content for single object uploads CommitWriteBack string = "writeback" // CommitWriteThrough allows caching multipart uploads to disk synchronously CommitWriteThrough string = "writethrough" )
const ( // SSECustomerKeySize is the size of valid client provided encryption keys in bytes. // Currently AWS supports only AES256. So the SSE-C key size is fixed to 32 bytes. SSECustomerKeySize = 32 // SSEIVSize is the size of the IV data SSEIVSize = 32 // 32 bytes // SSEDAREPackageBlockSize - SSE dare package block size. SSEDAREPackageBlockSize = 64 * 1024 // 64KiB bytes // SSEDAREPackageMetaSize - SSE dare package meta padding bytes. SSEDAREPackageMetaSize = 32 // 32 bytes )
const ( GatewayMinioSysTmp = "minio.sys.tmp/" AzureBackendGateway = "azure" GCSBackendGateway = "gcs" HDFSBackendGateway = "hdfs" NASBackendGateway = "nas" S3BackendGateway = "s3" )
GatewayMinioSysTmp prefix is used in Azure/GCS gateway for save metadata sent by Initialize Multipart Upload API.
const ( ReservedMetadataPrefix = "X-Minio-Internal-" ReservedMetadataPrefixLower = "x-minio-internal-" )
ReservedMetadataPrefix is the prefix of a metadata key which is reserved and for internal use only.
const ( // GlobalStaleUploadsExpiry - Expiry duration after which the uploads in multipart, // tmp directory are deemed stale. GlobalStaleUploadsExpiry = time.Hour * 24 // 24 hrs. // GlobalStaleUploadsCleanupInterval - Cleanup interval when the stale uploads cleanup is initiated. GlobalStaleUploadsCleanupInterval = time.Hour * 6 // 6 hrs. )
const ( Unknown = BackendType(madmin.Unknown) // Filesystem backend. BackendFS = BackendType(madmin.FS) // Multi disk BackendErasure (single, distributed) backend. BackendErasure = BackendType(madmin.Erasure) // Gateway backend. BackendGateway = BackendType(madmin.Gateway) )
Enum for different backend types.
const (
DefaultBitrotAlgorithm = HighwayHash256S
)
DefaultBitrotAlgorithm is the default algorithm used for bitrot protection.
const DefaultSkewTime = 15 * time.Minute
DefaultSkewTime - skew time is 15 minutes between minio peers.
const (
EnvErasureSetDriveCount = "MINIO_ERASURE_SET_DRIVE_COUNT"
)
Override set drive count for manual distribution.
const (
EnvPrometheusAuthType = "MINIO_PROMETHEUS_AUTH_TYPE"
)
Standard env prometheus auth type
const (
GlobalMinioDefaultPort = "9000"
)
minio configuration related constants.
const ( // SSECacheEncrypted is the metadata key indicating that the object // is a cache entry encrypted with cache KMS master key in globalCacheKMS. SSECacheEncrypted = "X-Minio-Internal-Encrypted-Cache" )
const SlashSeparator = "/"
SlashSeparator - slash separator.
const (
VersionPurgeStatusKey = ReservedMetadataPrefixLower + "purgestatus"
)
VersionPurgeStatusKey denotes purge status in metadata
Variables ¶
var ( // GOPATH - GOPATH value at the time of build. GOPATH = "" // GOROOT - GOROOT value at the time of build. GOROOT = "" // Version - version time.RFC3339. Version = "DEVELOPMENT.GOGET" // ReleaseTag - release tag in TAG.%Y-%m-%dT%H-%M-%SZ. ReleaseTag = "DEVELOPMENT.GOGET" // CommitID - latest commit id. CommitID = "DEVELOPMENT.GOGET" // ShortCommitID - first 12 characters from CommitID. ShortCommitID = "DEVELOPMENT.GOGET" )
DO NOT EDIT THIS FILE DIRECTLY. These are build-time constants set through ‘buildscripts/gen-ldflags.go’.
var ( // CanonicalizeETag provides canonicalizeETag function alias. CanonicalizeETag = canonicalizeETag // MustGetUUID function alias. MustGetUUID = mustGetUUID // CleanMetadataKeys provides cleanMetadataKeys function alias. CleanMetadataKeys = cleanMetadataKeys // PathJoin function alias. PathJoin = pathJoin // ListObjects function alias. ListObjects = listObjects // FilterListEntries function alias. FilterListEntries = filterListEntries // IsStringEqual is string equal. IsStringEqual = isStringEqual )
var ( // GlobalKMS initialized KMS configuration GlobalKMS kms.KMS // GlobalGatewaySSE sse options GlobalGatewaySSE gatewaySSE )
var GlobalContext context.Context
GlobalContext context that is canceled when server is requested to shut down.
var GlobalFlags = []cli.Flag{ cli.StringFlag{ Name: "config-dir, C", Value: defaultConfigDir.Get(), Usage: "[DEPRECATED] path to legacy configuration directory", Hidden: true, }, cli.StringFlag{ Name: "certs-dir, S", Value: defaultCertsDir.Get(), Usage: "path to certs directory", }, cli.BoolFlag{ Name: "quiet", Usage: "disable startup and info messages", }, cli.BoolFlag{ Name: "anonymous", Usage: "hide sensitive information from logging", }, cli.BoolFlag{ Name: "json", Usage: "output logs in JSON format", }, cli.BoolFlag{ Name: "compat", Usage: "enable strict S3 compatibility by turning off certain performance optimizations", Hidden: true, }, cli.BoolFlag{ Name: "no-compat", Usage: "disable strict S3 compatibility by turning on certain performance optimizations", Hidden: true, }, }
GlobalFlags - global flags for minio.
var ObjectsHistogramIntervals = []objectHistogramInterval{ {"LESS_THAN_1024_B", 0, humanize.KiByte - 1}, {"BETWEEN_1024_B_AND_1_MB", humanize.KiByte, humanize.MiByte - 1}, {"BETWEEN_1_MB_AND_10_MB", humanize.MiByte, humanize.MiByte*10 - 1}, {"BETWEEN_10_MB_AND_64_MB", humanize.MiByte * 10, humanize.MiByte*64 - 1}, {"BETWEEN_64_MB_AND_128_MB", humanize.MiByte * 64, humanize.MiByte*128 - 1}, {"BETWEEN_128_MB_AND_512_MB", humanize.MiByte * 128, humanize.MiByte*512 - 1}, {"GREATER_THAN_512_MB", humanize.MiByte * 512, math.MaxInt64}, }
ObjectsHistogramIntervals is the list of all intervals of object sizes to be included in objects histogram.
var ServerFlags = []cli.Flag{ cli.StringFlag{ Name: "address", Value: ":" + GlobalMinioDefaultPort, Usage: "bind to a specific ADDRESS:PORT, ADDRESS can be an IP or hostname", EnvVar: "MINIO_ADDRESS", }, cli.IntFlag{ Name: "listeners", Value: 1, Usage: "bind N number of listeners per ADDRESS:PORT", EnvVar: "MINIO_LISTENERS", }, cli.StringFlag{ Name: "console-address", Usage: "bind to a specific ADDRESS:PORT for embedded Console UI, ADDRESS can be an IP or hostname", EnvVar: "MINIO_CONSOLE_ADDRESS", }, cli.DurationFlag{ Name: "shutdown-timeout", Value: xhttp.DefaultShutdownTimeout, Usage: "shutdown timeout to gracefully shutdown server", EnvVar: "MINIO_SHUTDOWN_TIMEOUT", Hidden: true, }, }
ServerFlags - server command specific flags
Functions ¶
func Access ¶
Access captures time taken to call syscall.Access() on windows, plan9 and solaris syscall.Access uses os.Lstat()
func AuthMiddleware ¶
AuthMiddleware checks if the bearer token is valid and authorized.
func BucketAccessPolicyToPolicy ¶
func BucketAccessPolicyToPolicy(policyInfo *miniogopolicy.BucketAccessPolicy) (*policy.Policy, error)
BucketAccessPolicyToPolicy - converts minio-go/policy.BucketAccessPolicy to policy.Policy.
func CheckLocalServerAddr ¶
CheckLocalServerAddr - checks if serverAddr is valid and local host.
func CleanMinioInternalMetadataKeys ¶
CleanMinioInternalMetadataKeys removes X-Amz-Meta- prefix from minio internal encryption metadata that was sent by minio gateway
func ClusterCheckHandler ¶
func ClusterCheckHandler(w http.ResponseWriter, r *http.Request)
ClusterCheckHandler returns if the server is ready for requests.
func ClusterReadCheckHandler ¶
func ClusterReadCheckHandler(w http.ResponseWriter, r *http.Request)
ClusterReadCheckHandler returns if the server is ready for requests.
func ComputeCompleteMultipartMD5 ¶
func ComputeCompleteMultipartMD5(parts []CompletePart) string
ComputeCompleteMultipartMD5 calculates MD5 ETag for complete multipart responses
func CreateEndpoints ¶
func CreateEndpoints(serverAddr string, foundLocal bool, args ...[]string) (Endpoints, SetupType, error)
CreateEndpoints - validates and creates new endpoints for given args.
func DecryptBlocksRequestR ¶
func DecryptBlocksRequestR(inputReader io.Reader, h http.Header, seqNumber uint32, partStart int, oi ObjectInfo, copySource bool) (io.Reader, error)
DecryptBlocksRequestR - same as DecryptBlocksRequest but with a reader
func DecryptCopyRequestR ¶
func DecryptCopyRequestR(client io.Reader, h http.Header, bucket, object string, seqNumber uint32, metadata map[string]string) (io.Reader, error)
DecryptCopyRequestR - same as DecryptCopyRequest, but with a Reader
func DecryptETag ¶
func DecryptETag(key crypto.ObjectKey, object ObjectInfo) (string, error)
DecryptETag decrypts the ETag that is part of given object with the given object encryption key.
However, DecryptETag does not try to decrypt the ETag if it consists of a 128 bit hex value (32 hex chars) and exactly one '-' followed by a 32-bit number. This special case adresses randomly-generated ETags generated by the MinIO server when running in non-compat mode. These random ETags are not encrypt.
Calling DecryptETag with a non-randomly generated ETag will fail.
func DecryptObjectInfo ¶
func DecryptObjectInfo(info *ObjectInfo, r *http.Request) (encrypted bool, err error)
DecryptObjectInfo tries to decrypt the provided object if it is encrypted. It fails if the object is encrypted and the HTTP headers don't contain SSE-C headers or the object is not encrypted but SSE-C headers are provided. (AWS behavior) DecryptObjectInfo returns 'ErrNone' if the object is not encrypted or the decryption succeeded.
DecryptObjectInfo also returns whether the object is encrypted or not.
func DecryptRequestWithSequenceNumberR ¶
func DecryptRequestWithSequenceNumberR(client io.Reader, h http.Header, bucket, object string, seqNumber uint32, metadata map[string]string) (io.Reader, error)
DecryptRequestWithSequenceNumberR - same as DecryptRequestWithSequenceNumber but with a reader
func EncryptRequest ¶
func EncryptRequest(content io.Reader, r *http.Request, bucket, object string, metadata map[string]string) (io.Reader, crypto.ObjectKey, error)
EncryptRequest takes the client provided content and encrypts the data with the client provided key. It also marks the object as client-side-encrypted and sets the correct headers.
func ErrorRespToObjectError ¶
ErrorRespToObjectError converts MinIO errors to minio object layer errors.
func FromMinioClientMetadata ¶
FromMinioClientMetadata converts minio metadata to map[string]string
func GetAllSets ¶
GetAllSets - parses all ellipses input arguments, expands them into corresponding list of endpoints chunked evenly in accordance with a specific set size. For example: {1...64} is divided into 4 sets each of size 16. This applies to even distributed setup syntax as well.
func GetCurrentReleaseTime ¶
GetCurrentReleaseTime - returns this process's release time. If it is official minio version, parsed version is returned else minio binary's mod time is returned.
func GetLocalPeer ¶
func GetLocalPeer(endpointServerPools EndpointServerPools, host, port string) (localPeer string)
GetLocalPeer - returns local peer value, returns globalMinioAddr for FS and Erasure mode. In case of distributed server return the first element from the set of peers which indicate that they are local. There is always one entry that is local even with repeated server endpoints.
func GetObject ¶
func GetObject(ctx context.Context, api ObjectLayer, bucket, object string, startOffset int64, length int64, writer io.Writer, etag string, opts ObjectOptions) (err error)
GetObject - TODO(aead): This function just acts as an adapter for GetObject tests and benchmarks since the GetObject method of the ObjectLayer interface has been removed. Once, the tests are adjusted to use GetObjectNInfo this function can be removed.
func GetPeerOnlineCount ¶
func GetPeerOnlineCount() (nodesOnline, nodesOffline int)
GetPeerOnlineCount gets the count of online and offline nodes.
func GetProxyEndpointLocalIndex ¶
func GetProxyEndpointLocalIndex(proxyEps []ProxyEndpoint) int
GetProxyEndpointLocalIndex returns index of the local proxy endpoint
func GetTotalCapacity ¶
func GetTotalCapacity(diskInfo []madmin.Disk) (capacity uint64)
GetTotalCapacity gets the total capacity in the cluster.
func GetTotalCapacityFree ¶
func GetTotalCapacityFree(diskInfo []madmin.Disk) (capacity uint64)
GetTotalCapacityFree gets the total capacity free in the cluster.
func GetTotalUsableCapacity ¶
func GetTotalUsableCapacity(diskInfo []madmin.Disk, s StorageInfo) (capacity float64)
GetTotalUsableCapacity gets the total usable capacity in the cluster. This value is not an accurate representation of total usable in a multi-tenant deployment.
func GetTotalUsableCapacityFree ¶
func GetTotalUsableCapacityFree(diskInfo []madmin.Disk, s StorageInfo) (capacity float64)
GetTotalUsableCapacityFree gets the total usable capacity free in the cluster. This value is not an accurate representation of total free in a multi-tenant deployment.
func GetVersion ¶
GetVersion gets config version from backend
func HasPrefix ¶
HasPrefix - Prefix matcher string matches prefix in a platform specific way. For example on windows since its case insensitive we are supposed to do case insensitive checks.
func HasSuffix ¶
HasSuffix - Suffix matcher string matches suffix in a platform specific way. For example on windows since its case insensitive we are supposed to do case insensitive checks.
func IsBackendOnline ¶
IsBackendOnline - verifies if the backend is reachable by performing a GET request on the URL. returns 'true' if backend is reachable.
func IsDocker ¶
func IsDocker() bool
IsDocker - returns if the environment minio is running in docker or not. The check is a simple file existence check.
https://github.com/moby/moby/blob/master/daemon/initlayer/setup_unix.go#L25
"/.dockerenv": "file",
func IsErrIgnored ¶
IsErrIgnored returns whether given error is ignored or not.
func IsKubernetes ¶
func IsKubernetes() bool
IsKubernetes returns true if minio is running in kubernetes.
func IsSourceBuild ¶
func IsSourceBuild() bool
IsSourceBuild - returns if this binary is a non-official build from source code.
func IsValidBucketName ¶
IsValidBucketName verifies that a bucket name is in accordance with Amazon's requirements (i.e. DNS naming conventions). It must be 3-63 characters long, and it must be a sequence of one or more labels separated by periods. Each label can contain lowercase ascii letters, decimal digits and hyphens, but must not begin or end with a hyphen. See: http://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html
func IsValidObjectName ¶
IsValidObjectName verifies an object name in accordance with Amazon's requirements. It cannot exceed 1024 characters and must be a valid UTF8 string.
See: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html
You should avoid the following characters in a key name because of significant special handling for consistency across all applications.
Rejects strings with following characters.
- Backslash ("\")
additionally minio does not support object names with trailing SlashSeparator.
func IsValidObjectPrefix ¶
IsValidObjectPrefix verifies whether the prefix is a valid object name. Its valid to have a empty prefix.
func LivenessCheckHandler ¶
func LivenessCheckHandler(w http.ResponseWriter, r *http.Request)
LivenessCheckHandler - Checks if the process is up. Always returns success.
func MockOpenIDTestUserInteraction ¶
func MockOpenIDTestUserInteraction(ctx context.Context, pro OpenIDClientAppParams, username, password string) (string, error)
MockOpenIDTestUserInteraction - tries to login to dex using provided credentials. It performs the user's browser interaction to login and retrieves the auth code from dex and exchanges it for a JWT.
func NSUpdated ¶
func NSUpdated(bucket, prefix string)
NSUpdated indicates namespace has been updated. The function will block until the entry has been picked up.
func NewGatewayHTTPTransport ¶
NewGatewayHTTPTransport returns a new http configuration used while communicating with the cloud backends.
func NewGatewayHTTPTransportWithClientCerts ¶
NewGatewayHTTPTransportWithClientCerts returns a new http configuration used while communicating with the cloud backends.
func NewRemoteTargetHTTPTransport ¶
NewRemoteTargetHTTPTransport returns a new http configuration used while communicating with the remote replication targets.
func NewhashReader ¶ added in v0.1.1
func OpenFileDirectIO ¶
OpenFileDirectIO captures time taken to call disk.OpenFileDirectIO
func ParseGatewayEndpoint ¶
ParseGatewayEndpoint - Return endpoint.
func ParseSSECopyCustomerRequest ¶
ParseSSECopyCustomerRequest parses the SSE-C header fields of the provided request. It returns the client provided key on success.
func ParseSSECustomerHeader ¶
ParseSSECustomerHeader parses the SSE-C header fields and returns the client provided key on success.
func ParseSSECustomerRequest ¶
ParseSSECustomerRequest parses the SSE-C header fields of the provided request. It returns the client provided key on success.
func PolicyToBucketAccessPolicy ¶
func PolicyToBucketAccessPolicy(bucketPolicy *policy.Policy) (*miniogopolicy.BucketAccessPolicy, error)
PolicyToBucketAccessPolicy converts a MinIO policy into a minio-go policy data structure.
func ReadinessCheckHandler ¶
func ReadinessCheckHandler(w http.ResponseWriter, r *http.Request)
ReadinessCheckHandler Checks if the process is up. Always returns success.
func RegisterGatewayCommand ¶
RegisterGatewayCommand registers a new command for gateway.
func ReportMetrics ¶
func ReportMetrics(ctx context.Context, metricsGroups []*MetricsGroup) <-chan Metric
ReportMetrics reports serialized metrics to the channel passed for the metrics generated.
func StartGateway ¶
StartGateway - handler for 'minio gateway <name>'.
func ToMinioClientCompletePart ¶
func ToMinioClientCompletePart(part CompletePart) minio.CompletePart
ToMinioClientCompletePart converts CompletePart to minio CompletePart
func ToMinioClientCompleteParts ¶
func ToMinioClientCompleteParts(parts []CompletePart) []minio.CompletePart
ToMinioClientCompleteParts converts []CompletePart to minio []CompletePart
func ToMinioClientMetadata ¶
ToMinioClientMetadata converts metadata to map[string]string
func ToMinioClientObjectInfoMetadata ¶
ToMinioClientObjectInfoMetadata convertes metadata to map[string][]string
func Trace ¶
func Trace(f http.HandlerFunc, logBody bool, w http.ResponseWriter, r *http.Request) madmin.TraceInfo
Trace gets trace of http request
func ValidateGatewayArguments ¶
ValidateGatewayArguments - Validate gateway arguments.
Types ¶
type APIErrorCode ¶
type APIErrorCode int
APIErrorCode type of error status.
const ( ErrNone APIErrorCode = iota ErrAccessDenied ErrBadDigest ErrEntityTooSmall ErrEntityTooLarge ErrPolicyTooLarge ErrIncompleteBody ErrInternalError ErrInvalidAccessKeyID ErrAccessKeyDisabled ErrInvalidBucketName ErrInvalidDigest ErrInvalidRange ErrInvalidRangePartNumber ErrInvalidCopyPartRange ErrInvalidCopyPartRangeSource ErrInvalidMaxKeys ErrInvalidEncodingMethod ErrInvalidMaxUploads ErrInvalidMaxParts ErrInvalidPartNumberMarker ErrInvalidPartNumber ErrInvalidRequestBody ErrInvalidCopySource ErrInvalidMetadataDirective ErrInvalidCopyDest ErrInvalidPolicyDocument ErrInvalidObjectState ErrMalformedXML ErrMissingContentLength ErrMissingContentMD5 ErrMissingRequestBodyError ErrMissingSecurityHeader ErrNoSuchBucket ErrNoSuchBucketPolicy ErrNoSuchBucketLifecycle ErrNoSuchLifecycleConfiguration ErrInvalidLifecycleWithObjectLock ErrNoSuchBucketSSEConfig ErrNoSuchCORSConfiguration ErrNoSuchWebsiteConfiguration ErrReplicationConfigurationNotFoundError ErrRemoteDestinationNotFoundError ErrReplicationDestinationMissingLock ErrRemoteTargetNotFoundError ErrReplicationRemoteConnectionError ErrReplicationBandwidthLimitError ErrBucketRemoteIdenticalToSource ErrBucketRemoteAlreadyExists ErrBucketRemoteLabelInUse ErrBucketRemoteArnTypeInvalid ErrBucketRemoteArnInvalid ErrBucketRemoteRemoveDisallowed ErrRemoteTargetNotVersionedError ErrReplicationSourceNotVersionedError ErrReplicationNeedsVersioningError ErrReplicationBucketNeedsVersioningError ErrReplicationDenyEditError ErrReplicationNoMatchingRuleError ErrObjectRestoreAlreadyInProgress ErrNoSuchKey ErrNoSuchUpload ErrInvalidVersionID ErrNoSuchVersion ErrNotImplemented ErrPreconditionFailed ErrRequestTimeTooSkewed ErrSignatureDoesNotMatch ErrMethodNotAllowed ErrInvalidPart ErrInvalidPartOrder ErrAuthorizationHeaderMalformed ErrMalformedPOSTRequest ErrPOSTFileRequired ErrSignatureVersionNotSupported ErrBucketNotEmpty ErrAllAccessDisabled ErrMalformedPolicy ErrMissingFields ErrMissingCredTag ErrCredMalformed ErrInvalidRegion ErrInvalidServiceS3 ErrInvalidServiceSTS ErrInvalidRequestVersion ErrMissingSignTag ErrMissingSignHeadersTag ErrMalformedDate ErrMalformedPresignedDate ErrMalformedCredentialDate ErrMalformedCredentialRegion ErrMalformedExpires ErrNegativeExpires ErrAuthHeaderEmpty ErrExpiredPresignRequest ErrRequestNotReadyYet ErrUnsignedHeaders ErrMissingDateHeader ErrInvalidQuerySignatureAlgo ErrInvalidQueryParams ErrBucketAlreadyOwnedByYou ErrInvalidDuration ErrBucketAlreadyExists ErrMetadataTooLarge ErrUnsupportedMetadata ErrMaximumExpires ErrSlowDown ErrInvalidPrefixMarker ErrBadRequest ErrKeyTooLongError ErrInvalidBucketObjectLockConfiguration ErrObjectLockConfigurationNotFound ErrObjectLockConfigurationNotAllowed ErrNoSuchObjectLockConfiguration ErrObjectLocked ErrInvalidRetentionDate ErrPastObjectLockRetainDate ErrUnknownWORMModeDirective ErrBucketTaggingNotFound ErrObjectLockInvalidHeaders ErrInvalidTagDirective // SSE-S3 related API errors ErrInvalidEncryptionMethod // Server-Side-Encryption (with Customer provided key) related API errors. ErrInsecureSSECustomerRequest ErrSSEMultipartEncrypted ErrSSEEncryptedObject ErrInvalidEncryptionParameters ErrInvalidSSECustomerAlgorithm ErrInvalidSSECustomerKey ErrMissingSSECustomerKey ErrMissingSSECustomerKeyMD5 ErrSSECustomerKeyMD5Mismatch ErrInvalidSSECustomerParameters ErrIncompatibleEncryptionMethod ErrKMSNotConfigured ErrKMSKeyNotFoundException ErrNoAccessKey ErrInvalidToken // Bucket notification related errors. ErrEventNotification ErrARNNotification ErrRegionNotification ErrOverlappingFilterNotification ErrFilterNameInvalid ErrFilterNamePrefix ErrFilterNameSuffix ErrFilterValueInvalid ErrOverlappingConfigs ErrUnsupportedNotification // S3 extended errors. ErrContentSHA256Mismatch // MinIO extended errors. ErrReadQuorum ErrWriteQuorum ErrStorageFull ErrRequestBodyParse ErrObjectExistsAsDirectory ErrInvalidObjectName ErrInvalidObjectNamePrefixSlash ErrInvalidResourceName ErrServerNotInitialized ErrOperationTimedOut ErrClientDisconnected ErrOperationMaxedOut ErrInvalidRequest ErrTransitionStorageClassNotFoundError // MinIO storage class error codes ErrInvalidStorageClass ErrBackendDown ErrMalformedJSON ErrAdminNoSuchUser ErrAdminNoSuchGroup ErrAdminGroupNotEmpty ErrAdminNoSuchPolicy ErrAdminInvalidArgument ErrAdminInvalidAccessKey ErrAdminInvalidSecretKey ErrAdminConfigNoQuorum ErrAdminConfigTooLarge ErrAdminConfigBadJSON ErrAdminConfigDuplicateKeys ErrAdminCredentialsMismatch ErrInsecureClientRequest ErrObjectTampered // Site-Replication errors ErrSiteReplicationInvalidRequest ErrSiteReplicationPeerResp ErrSiteReplicationBackendIssue ErrSiteReplicationServiceAccountError ErrSiteReplicationBucketConfigError ErrSiteReplicationBucketMetaError ErrSiteReplicationIAMError // Bucket Quota error codes ErrAdminBucketQuotaExceeded ErrAdminNoSuchQuotaConfiguration ErrHealNotImplemented ErrHealNoSuchProcess ErrHealInvalidClientToken ErrHealMissingBucket ErrHealAlreadyRunning ErrHealOverlappingPaths ErrIncorrectContinuationToken // S3 Select Errors ErrEmptyRequestBody ErrUnsupportedFunction ErrInvalidExpressionType ErrBusy ErrExpressionTooLong ErrIllegalSQLFunctionArgument ErrInvalidKeyPath ErrInvalidCompressionFormat ErrInvalidFileHeaderInfo ErrInvalidJSONType ErrInvalidQuoteFields ErrInvalidRequestParameter ErrInvalidDataType ErrInvalidTextEncoding ErrInvalidDataSource ErrInvalidTableAlias ErrMissingRequiredParameter ErrObjectSerializationConflict ErrUnsupportedSQLOperation ErrUnsupportedSQLStructure ErrUnsupportedSyntax ErrUnsupportedRangeHeader ErrLexerInvalidChar ErrLexerInvalidOperator ErrLexerInvalidLiteral ErrLexerInvalidIONLiteral ErrParseExpectedDatePart ErrParseExpectedKeyword ErrParseExpectedTokenType ErrParseExpected2TokenTypes ErrParseExpectedNumber ErrParseExpectedRightParenBuiltinFunctionCall ErrParseExpectedTypeName ErrParseExpectedWhenClause ErrParseUnsupportedToken ErrParseUnsupportedLiteralsGroupBy ErrParseExpectedMember ErrParseUnsupportedSelect ErrParseUnsupportedCase ErrParseUnsupportedCaseClause ErrParseUnsupportedAlias ErrParseUnsupportedSyntax ErrParseUnknownOperator ErrParseMissingIdentAfterAt ErrParseUnexpectedOperator ErrParseUnexpectedTerm ErrParseUnexpectedToken ErrParseUnexpectedKeyword ErrParseExpectedExpression ErrParseExpectedLeftParenAfterCast ErrParseExpectedLeftParenValueConstructor ErrParseExpectedLeftParenBuiltinFunctionCall ErrParseExpectedArgumentDelimiter ErrParseCastArity ErrParseInvalidTypeParam ErrParseEmptySelect ErrParseSelectMissingFrom ErrParseExpectedIdentForGroupName ErrParseExpectedIdentForAlias ErrParseUnsupportedCallWithStar ErrParseNonUnaryAgregateFunctionCall ErrParseMalformedJoin ErrParseExpectedIdentForAt ErrParseAsteriskIsNotAloneInSelectList ErrParseCannotMixSqbAndWildcardInSelectList ErrParseInvalidContextForWildcardInSelectList ErrIncorrectSQLFunctionArgumentType ErrValueParseFailure ErrEvaluatorInvalidArguments ErrIntegerOverflow ErrLikeInvalidInputs ErrCastFailed ErrInvalidCast ErrEvaluatorInvalidTimestampFormatPattern ErrEvaluatorInvalidTimestampFormatPatternSymbolForParsing ErrEvaluatorTimestampFormatPatternDuplicateFields ErrEvaluatorTimestampFormatPatternHourClockAmPmMismatch ErrEvaluatorUnterminatedTimestampFormatPatternToken ErrEvaluatorInvalidTimestampFormatPatternToken ErrEvaluatorInvalidTimestampFormatPatternSymbol ErrEvaluatorBindingDoesNotExist ErrMissingHeaders ErrInvalidColumnIndex ErrAdminConfigNotificationTargetsFailed ErrAdminProfilerNotEnabled ErrInvalidDecompressedSize ErrAddUserInvalidArgument ErrAdminAccountNotEligible ErrAccountNotEligible ErrAdminServiceAccountNotFound ErrPostPolicyConditionInvalidFormat )
Error codes, non exhaustive list - http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html
func (APIErrorCode) String ¶
func (i APIErrorCode) String() string
type APIErrorResponse ¶
type APIErrorResponse struct { XMLName xml.Name `xml:"Error" json:"-"` Code string Message string Key string `xml:"Key,omitempty" json:"Key,omitempty"` BucketName string `xml:"BucketName,omitempty" json:"BucketName,omitempty"` Resource string Region string `xml:"Region,omitempty" json:"Region,omitempty"` RequestID string `xml:"RequestId" json:"RequestId"` HostID string `xml:"HostId" json:"HostId"` }
APIErrorResponse - error response format
type AccElem ¶
AccElem holds information for calculating an average value
func (AccElem) MarshalMsg ¶
MarshalMsg implements msgp.Marshaler
type AdminError ¶
AdminError - is a generic error for all admin APIs.
func (AdminError) Error ¶
func (ae AdminError) Error() string
type AllAccessDisabled ¶
type AllAccessDisabled GenericError
AllAccessDisabled All access to this object has been disabled
func (AllAccessDisabled) Error ¶
func (e AllAccessDisabled) Error() string
Error returns string an error formatted as the given text.
type AssumeRoleResponse ¶
type AssumeRoleResponse struct { XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ AssumeRoleResponse" json:"-"` Result AssumeRoleResult `xml:"AssumeRoleResult"` ResponseMetadata struct { RequestID string `xml:"RequestId,omitempty"` } `xml:"ResponseMetadata,omitempty"` }
AssumeRoleResponse contains the result of successful AssumeRole request.
type AssumeRoleResult ¶
type AssumeRoleResult struct { // The identifiers for the temporary security credentials that the operation // returns. AssumedRoleUser AssumedRoleUser `xml:",omitempty"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security (or session) token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials auth.Credentials `xml:",omitempty"` // A percentage value that indicates the size of the policy in packed form. // The service rejects any policy with a packed size greater than 100 percent, // which means the policy exceeded the allowed space. PackedPolicySize int `xml:",omitempty"` }
AssumeRoleResult - Contains the response to a successful AssumeRole request, including temporary credentials that can be used to make MinIO API requests.
type AssumeRoleWithCertificateResponse ¶
type AssumeRoleWithCertificateResponse struct { XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ AssumeRoleWithCertificateResponse" json:"-"` Result struct { Credentials auth.Credentials `xml:"Credentials,omitempty"` } `xml:"AssumeRoleWithCertificateResult"` Metadata struct { RequestID string `xml:"RequestId,omitempty"` } `xml:"ResponseMetadata,omitempty"` }
AssumeRoleWithCertificateResponse contains the result of a successful AssumeRoleWithCertificate request.
type AssumeRoleWithClientGrantsResponse ¶
type AssumeRoleWithClientGrantsResponse struct { XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ AssumeRoleWithClientGrantsResponse" json:"-"` Result ClientGrantsResult `xml:"AssumeRoleWithClientGrantsResult"` ResponseMetadata struct { RequestID string `xml:"RequestId,omitempty"` } `xml:"ResponseMetadata,omitempty"` }
AssumeRoleWithClientGrantsResponse contains the result of successful AssumeRoleWithClientGrants request.
type AssumeRoleWithLDAPResponse ¶
type AssumeRoleWithLDAPResponse struct { XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ AssumeRoleWithLDAPIdentityResponse" json:"-"` Result LDAPIdentityResult `xml:"AssumeRoleWithLDAPIdentityResult"` ResponseMetadata struct { RequestID string `xml:"RequestId,omitempty"` } `xml:"ResponseMetadata,omitempty"` }
AssumeRoleWithLDAPResponse contains the result of successful AssumeRoleWithLDAPIdentity request
type AssumeRoleWithWebIdentityResponse ¶
type AssumeRoleWithWebIdentityResponse struct { XMLName xml.Name `xml:"https://sts.amazonaws.com/doc/2011-06-15/ AssumeRoleWithWebIdentityResponse" json:"-"` Result WebIdentityResult `xml:"AssumeRoleWithWebIdentityResult"` ResponseMetadata struct { RequestID string `xml:"RequestId,omitempty"` } `xml:"ResponseMetadata,omitempty"` }
AssumeRoleWithWebIdentityResponse contains the result of successful AssumeRoleWithWebIdentity request.
type AssumedRoleUser ¶
type AssumedRoleUser struct { // The ARN of the temporary security credentials that are returned from the // AssumeRole action. For more information about ARNs and how to use them in // policies, see IAM Identifiers (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) // in Using IAM. // // Arn is a required field Arn string // A unique identifier that contains the role ID and the role session name of // the role that is being assumed. The role ID is generated by AWS when the // role is created. // // AssumedRoleId is a required field AssumedRoleID string `xml:"AssumeRoleId"` }
AssumedRoleUser - The identifiers for the temporary security credentials that the operation returns. Please also see https://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/AssumedRoleUser
type AuditLogOptions ¶
AuditLogOptions takes options for audit logging subsystem activity
type BackendDown ¶
type BackendDown struct {
Err string
}
BackendDown is returned for network errors or if the gateway's backend is down.
func (BackendDown) Error ¶
func (e BackendDown) Error() string
type BackendMetrics ¶
type BackendMetrics struct {
// contains filtered or unexported fields
}
BackendMetrics - represents bytes served from backend
func NewMetrics ¶
func NewMetrics() *BackendMetrics
NewMetrics - Prepare new BackendMetrics structure
func (*BackendMetrics) GetBytesReceived ¶
func (s *BackendMetrics) GetBytesReceived() uint64
GetBytesReceived - Get total bytes received from gateway backend
func (*BackendMetrics) GetBytesSent ¶
func (s *BackendMetrics) GetBytesSent() uint64
GetBytesSent - Get total bytes received from gateway backend
func (*BackendMetrics) GetRequests ¶
func (s *BackendMetrics) GetRequests() RequestStats
GetRequests - Get total number of Get & Headrequests sent to gateway backend
func (*BackendMetrics) IncBytesReceived ¶
func (s *BackendMetrics) IncBytesReceived(n uint64)
IncBytesReceived - Increase total bytes received from gateway backend
func (*BackendMetrics) IncBytesSent ¶
func (s *BackendMetrics) IncBytesSent(n uint64)
IncBytesSent - Increase total bytes sent to gateway backend
func (*BackendMetrics) IncRequests ¶
func (s *BackendMetrics) IncRequests(method string)
IncRequests - Increase request count sent to gateway backend by 1
type BitrotAlgorithm ¶
type BitrotAlgorithm uint
BitrotAlgorithm specifies a algorithm used for bitrot protection.
const ( // SHA256 represents the SHA-256 hash function SHA256 BitrotAlgorithm = 1 + iota // HighwayHash256 represents the HighwayHash-256 hash function HighwayHash256 // HighwayHash256S represents the Streaming HighwayHash-256 hash function HighwayHash256S // BLAKE2b512 represents the BLAKE2b-512 hash function BLAKE2b512 )
func BitrotAlgorithmFromString ¶
func BitrotAlgorithmFromString(s string) (a BitrotAlgorithm)
BitrotAlgorithmFromString returns a bitrot algorithm from the given string representation. It returns 0 if the string representation does not match any supported algorithm. The zero value of a bitrot algorithm is never supported.
func (BitrotAlgorithm) Available ¶
func (a BitrotAlgorithm) Available() bool
Available reports whether the given algorithm is available.
func (*BitrotAlgorithm) DecodeMsg ¶
func (z *BitrotAlgorithm) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (BitrotAlgorithm) EncodeMsg ¶
func (z BitrotAlgorithm) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (BitrotAlgorithm) MarshalMsg ¶
func (z BitrotAlgorithm) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (BitrotAlgorithm) Msgsize ¶
func (z BitrotAlgorithm) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (BitrotAlgorithm) New ¶
func (a BitrotAlgorithm) New() hash.Hash
New returns a new hash.Hash calculating the given bitrot algorithm.
func (BitrotAlgorithm) String ¶
func (a BitrotAlgorithm) String() string
String returns the string identifier for a given bitrot algorithm. If the algorithm is not supported String panics.
func (*BitrotAlgorithm) UnmarshalMsg ¶
func (z *BitrotAlgorithm) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type BitrotVerifier ¶
type BitrotVerifier struct {
// contains filtered or unexported fields
}
BitrotVerifier can be used to verify protected data.
func NewBitrotVerifier ¶
func NewBitrotVerifier(algorithm BitrotAlgorithm, checksum []byte) *BitrotVerifier
NewBitrotVerifier returns a new BitrotVerifier implementing the given algorithm.
type Bucket ¶
type Bucket struct { Name string CreationDate string // time string of format "2006-01-02T15:04:05.000Z" }
Bucket container for bucket metadata
type BucketAccessPolicy ¶
type BucketAccessPolicy struct { Bucket string `json:"bucket"` Prefix string `json:"prefix"` Policy miniogopolicy.BucketPolicy `json:"policy"` }
BucketAccessPolicy - Collection of canned bucket policy at a given prefix.
type BucketAlreadyExists ¶
type BucketAlreadyExists GenericError
BucketAlreadyExists the requested bucket name is not available.
func (BucketAlreadyExists) Error ¶
func (e BucketAlreadyExists) Error() string
type BucketAlreadyOwnedByYou ¶
type BucketAlreadyOwnedByYou GenericError
BucketAlreadyOwnedByYou already owned by you.
func (BucketAlreadyOwnedByYou) Error ¶
func (e BucketAlreadyOwnedByYou) Error() string
type BucketExists ¶
type BucketExists GenericError
BucketExists bucket exists.
func (BucketExists) Error ¶
func (e BucketExists) Error() string
type BucketInfo ¶
type BucketInfo struct { // Name of the bucket. Name string // Date and time when the bucket was created. Created time.Time }
BucketInfo - represents bucket metadata.
type BucketLifecycleNotFound ¶
type BucketLifecycleNotFound GenericError
BucketLifecycleNotFound - no bucket lifecycle found.
func (BucketLifecycleNotFound) Error ¶
func (e BucketLifecycleNotFound) Error() string
type BucketMetadata ¶
type BucketMetadata struct { Name string Created time.Time LockEnabled bool // legacy not used anymore. PolicyConfigJSON []byte NotificationConfigXML []byte LifecycleConfigXML []byte ObjectLockConfigXML []byte VersioningConfigXML []byte EncryptionConfigXML []byte TaggingConfigXML []byte QuotaConfigJSON []byte ReplicationConfigXML []byte BucketTargetsConfigJSON []byte BucketTargetsConfigMetaJSON []byte // contains filtered or unexported fields }
BucketMetadata contains bucket metadata. When adding/removing fields, regenerate the marshal code using the go generate above. Only changing meaning of fields requires a version bump. bucketMetadataFormat refers to the format. bucketMetadataVersion can be used to track a rolling upgrade of a field.
func (*BucketMetadata) DecodeMsg ¶
func (z *BucketMetadata) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*BucketMetadata) EncodeMsg ¶
func (z *BucketMetadata) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*BucketMetadata) Load ¶
func (b *BucketMetadata) Load(ctx context.Context, api ObjectLayer, name string) error
Load - loads the metadata of bucket by name from ObjectLayer api. If an error is returned the returned metadata will be default initialized.
func (*BucketMetadata) MarshalMsg ¶
func (z *BucketMetadata) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*BucketMetadata) Msgsize ¶
func (z *BucketMetadata) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*BucketMetadata) Save ¶
func (b *BucketMetadata) Save(ctx context.Context, api ObjectLayer) error
Save config to supplied ObjectLayer api.
func (*BucketMetadata) UnmarshalMsg ¶
func (z *BucketMetadata) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type BucketMetadataSys ¶
BucketMetadataSys captures all bucket metadata for a given cluster.
func NewBucketMetadataSys ¶
func NewBucketMetadataSys() *BucketMetadataSys
NewBucketMetadataSys - creates new policy system.
func (*BucketMetadataSys) Get ¶
func (sys *BucketMetadataSys) Get(bucket string) (BucketMetadata, error)
Get metadata for a bucket. If no metadata exists errConfigNotFound is returned and a new metadata is returned. Only a shallow copy is returned, so referenced data should not be modified, but can be replaced atomically.
This function should only be used with - GetBucketInfo - ListBuckets For all other bucket specific metadata, use the relevant calls implemented specifically for each of those features.
func (*BucketMetadataSys) GetBucketTarget ¶
func (sys *BucketMetadataSys) GetBucketTarget(bucket string, arn string) (madmin.BucketTarget, error)
GetBucketTarget returns the target for the bucket and arn.
func (*BucketMetadataSys) GetBucketTargetsConfig ¶
func (sys *BucketMetadataSys) GetBucketTargetsConfig(bucket string) (*madmin.BucketTargets, error)
GetBucketTargetsConfig returns configured bucket targets for this bucket The returned object may not be modified.
func (*BucketMetadataSys) GetConfig ¶
func (sys *BucketMetadataSys) GetConfig(ctx context.Context, bucket string) (BucketMetadata, error)
GetConfig returns a specific configuration from the bucket metadata. The returned object may not be modified.
func (*BucketMetadataSys) GetLifecycleConfig ¶
func (sys *BucketMetadataSys) GetLifecycleConfig(bucket string) (*lifecycle.Lifecycle, error)
GetLifecycleConfig returns configured lifecycle config The returned object may not be modified.
func (*BucketMetadataSys) GetNotificationConfig ¶
func (sys *BucketMetadataSys) GetNotificationConfig(bucket string) (*event.Config, error)
GetNotificationConfig returns configured notification config The returned object may not be modified.
func (*BucketMetadataSys) GetObjectLockConfig ¶
func (sys *BucketMetadataSys) GetObjectLockConfig(bucket string) (*objectlock.Config, error)
GetObjectLockConfig returns configured object lock config The returned object may not be modified.
func (*BucketMetadataSys) GetPolicyConfig ¶
func (sys *BucketMetadataSys) GetPolicyConfig(bucket string) (*policy.Policy, error)
GetPolicyConfig returns configured bucket policy The returned object may not be modified.
func (*BucketMetadataSys) GetQuotaConfig ¶
func (sys *BucketMetadataSys) GetQuotaConfig(ctx context.Context, bucket string) (*madmin.BucketQuota, error)
GetQuotaConfig returns configured bucket quota The returned object may not be modified.
func (*BucketMetadataSys) GetReplicationConfig ¶
func (sys *BucketMetadataSys) GetReplicationConfig(ctx context.Context, bucket string) (*replication.Config, error)
GetReplicationConfig returns configured bucket replication config The returned object may not be modified.
func (*BucketMetadataSys) GetSSEConfig ¶
func (sys *BucketMetadataSys) GetSSEConfig(bucket string) (*bucketsse.BucketSSEConfig, error)
GetSSEConfig returns configured SSE config The returned object may not be modified.
func (*BucketMetadataSys) GetTaggingConfig ¶
func (sys *BucketMetadataSys) GetTaggingConfig(bucket string) (*tags.Tags, error)
GetTaggingConfig returns configured tagging config The returned object may not be modified.
func (*BucketMetadataSys) GetVersioningConfig ¶
func (sys *BucketMetadataSys) GetVersioningConfig(bucket string) (*versioning.Versioning, error)
GetVersioningConfig returns configured versioning config The returned object may not be modified.
func (*BucketMetadataSys) Init ¶
func (sys *BucketMetadataSys) Init(ctx context.Context, buckets []BucketInfo, objAPI ObjectLayer) error
Init - initializes bucket metadata system for all buckets.
func (*BucketMetadataSys) Remove ¶
func (sys *BucketMetadataSys) Remove(bucket string)
Remove bucket metadata from memory.
func (*BucketMetadataSys) Reset ¶
func (sys *BucketMetadataSys) Reset()
Reset the state of the BucketMetadataSys.
func (*BucketMetadataSys) Set ¶
func (sys *BucketMetadataSys) Set(bucket string, meta BucketMetadata)
Set - sets a new metadata in-memory. Only a shallow copy is saved and fields with references cannot be modified without causing a race condition, so they should be replaced atomically and not appended to, etc. Data is not persisted to disk.
type BucketNameInvalid ¶
type BucketNameInvalid GenericError
BucketNameInvalid - bucketname provided is invalid.
func (BucketNameInvalid) Error ¶
func (e BucketNameInvalid) Error() string
Error returns string an error formatted as the given text.
type BucketNotEmpty ¶
type BucketNotEmpty GenericError
BucketNotEmpty bucket is not empty.
func (BucketNotEmpty) Error ¶
func (e BucketNotEmpty) Error() string
type BucketNotFound ¶
type BucketNotFound GenericError
BucketNotFound bucket does not exist.
func (BucketNotFound) Error ¶
func (e BucketNotFound) Error() string
type BucketObjectLockConfigNotFound ¶
type BucketObjectLockConfigNotFound GenericError
BucketObjectLockConfigNotFound - no bucket object lock config found
func (BucketObjectLockConfigNotFound) Error ¶
func (e BucketObjectLockConfigNotFound) Error() string
type BucketObjectLockSys ¶
type BucketObjectLockSys struct{}
BucketObjectLockSys - map of bucket and retention configuration.
func NewBucketObjectLockSys ¶
func NewBucketObjectLockSys() *BucketObjectLockSys
NewBucketObjectLockSys returns initialized BucketObjectLockSys
func (*BucketObjectLockSys) Get ¶
func (sys *BucketObjectLockSys) Get(bucketName string) (r objectlock.Retention, err error)
Get - Get retention configuration.
type BucketOptions ¶
BucketOptions represents bucket options for ObjectLayer bucket operations
type BucketPolicyNotFound ¶
type BucketPolicyNotFound GenericError
BucketPolicyNotFound - no bucket policy found.
func (BucketPolicyNotFound) Error ¶
func (e BucketPolicyNotFound) Error() string
type BucketQuotaConfigNotFound ¶
type BucketQuotaConfigNotFound GenericError
BucketQuotaConfigNotFound - no bucket quota config found.
func (BucketQuotaConfigNotFound) Error ¶
func (e BucketQuotaConfigNotFound) Error() string
type BucketQuotaExceeded ¶
type BucketQuotaExceeded GenericError
BucketQuotaExceeded - bucket quota exceeded.
func (BucketQuotaExceeded) Error ¶
func (e BucketQuotaExceeded) Error() string
type BucketQuotaSys ¶
type BucketQuotaSys struct {
// contains filtered or unexported fields
}
BucketQuotaSys - map of bucket and quota configuration.
func NewBucketQuotaSys ¶
func NewBucketQuotaSys() *BucketQuotaSys
NewBucketQuotaSys returns initialized BucketQuotaSys
func (*BucketQuotaSys) Get ¶
func (sys *BucketQuotaSys) Get(ctx context.Context, bucketName string) (*madmin.BucketQuota, error)
Get - Get quota configuration.
func (*BucketQuotaSys) GetBucketUsageInfo ¶
func (sys *BucketQuotaSys) GetBucketUsageInfo(bucket string) (BucketUsageInfo, error)
GetBucketUsageInfo return bucket usage info for a given bucket
func (*BucketQuotaSys) Init ¶
func (sys *BucketQuotaSys) Init(objAPI ObjectLayer)
Init initialize bucket quota.
type BucketRemoteAlreadyExists ¶
type BucketRemoteAlreadyExists GenericError
BucketRemoteAlreadyExists remote already exists for this target type.
func (BucketRemoteAlreadyExists) Error ¶
func (e BucketRemoteAlreadyExists) Error() string
type BucketRemoteArnInvalid ¶
type BucketRemoteArnInvalid GenericError
BucketRemoteArnInvalid arn needs to be specified.
func (BucketRemoteArnInvalid) Error ¶
func (e BucketRemoteArnInvalid) Error() string
type BucketRemoteArnTypeInvalid ¶
type BucketRemoteArnTypeInvalid GenericError
BucketRemoteArnTypeInvalid arn type for remote is not valid.
func (BucketRemoteArnTypeInvalid) Error ¶
func (e BucketRemoteArnTypeInvalid) Error() string
type BucketRemoteConnectionErr ¶
type BucketRemoteConnectionErr GenericError
BucketRemoteConnectionErr remote target connection failure.
func (BucketRemoteConnectionErr) Error ¶
func (e BucketRemoteConnectionErr) Error() string
type BucketRemoteDestinationNotFound ¶
type BucketRemoteDestinationNotFound GenericError
BucketRemoteDestinationNotFound bucket does not exist.
func (BucketRemoteDestinationNotFound) Error ¶
func (e BucketRemoteDestinationNotFound) Error() string
type BucketRemoteLabelInUse ¶
type BucketRemoteLabelInUse GenericError
BucketRemoteLabelInUse remote already exists for this target label.
func (BucketRemoteLabelInUse) Error ¶
func (e BucketRemoteLabelInUse) Error() string
type BucketRemoteRemoveDisallowed ¶
type BucketRemoteRemoveDisallowed GenericError
BucketRemoteRemoveDisallowed when replication configuration exists
func (BucketRemoteRemoveDisallowed) Error ¶
func (e BucketRemoteRemoveDisallowed) Error() string
type BucketRemoteTargetNotFound ¶
type BucketRemoteTargetNotFound GenericError
BucketRemoteTargetNotFound remote target does not exist.
func (BucketRemoteTargetNotFound) Error ¶
func (e BucketRemoteTargetNotFound) Error() string
type BucketRemoteTargetNotVersioned ¶
type BucketRemoteTargetNotVersioned GenericError
BucketRemoteTargetNotVersioned remote target does not have versioning enabled.
func (BucketRemoteTargetNotVersioned) Error ¶
func (e BucketRemoteTargetNotVersioned) Error() string
type BucketReplicationConfigNotFound ¶
type BucketReplicationConfigNotFound GenericError
BucketReplicationConfigNotFound - no bucket replication config found
func (BucketReplicationConfigNotFound) Error ¶
func (e BucketReplicationConfigNotFound) Error() string
type BucketReplicationResyncStatus ¶
type BucketReplicationResyncStatus struct { Version int `json:"version" msg:"v"` // map of remote arn to their resync status for a bucket TargetsMap map[string]TargetReplicationResyncStatus `json:"resyncMap,omitempty" msg:"brs"` ID int `json:"id" msg:"id"` LastUpdate time.Time `json:"lastUpdate" msg:"lu"` }
BucketReplicationResyncStatus captures current replication resync status
func (*BucketReplicationResyncStatus) DecodeMsg ¶
func (z *BucketReplicationResyncStatus) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*BucketReplicationResyncStatus) EncodeMsg ¶
func (z *BucketReplicationResyncStatus) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*BucketReplicationResyncStatus) MarshalMsg ¶
func (z *BucketReplicationResyncStatus) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*BucketReplicationResyncStatus) Msgsize ¶
func (z *BucketReplicationResyncStatus) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*BucketReplicationResyncStatus) UnmarshalMsg ¶
func (z *BucketReplicationResyncStatus) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type BucketReplicationSourceNotVersioned ¶
type BucketReplicationSourceNotVersioned GenericError
BucketReplicationSourceNotVersioned replication source does not have versioning enabled.
func (BucketReplicationSourceNotVersioned) Error ¶
func (e BucketReplicationSourceNotVersioned) Error() string
type BucketReplicationStat ¶
type BucketReplicationStat struct { // Pending size in bytes PendingSize int64 `json:"pendingReplicationSize"` // Completed size in bytes ReplicatedSize int64 `json:"completedReplicationSize"` // Total Replica size in bytes ReplicaSize int64 `json:"replicaSize"` // Failed size in bytes FailedSize int64 `json:"failedReplicationSize"` // Total number of pending operations including metadata updates PendingCount int64 `json:"pendingReplicationCount"` // Total number of failed operations including metadata updates FailedCount int64 `json:"failedReplicationCount"` // Replication latency information Latency ReplicationLatency `json:"replicationLatency"` }
BucketReplicationStat represents inline replication statistics such as pending, failed and completed bytes in total for a bucket remote target
func (*BucketReplicationStat) DecodeMsg ¶
func (z *BucketReplicationStat) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*BucketReplicationStat) EncodeMsg ¶
func (z *BucketReplicationStat) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*BucketReplicationStat) MarshalMsg ¶
func (z *BucketReplicationStat) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*BucketReplicationStat) Msgsize ¶
func (z *BucketReplicationStat) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*BucketReplicationStat) UnmarshalMsg ¶
func (z *BucketReplicationStat) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type BucketReplicationStats ¶
type BucketReplicationStats struct { Stats map[string]*BucketReplicationStat // Pending size in bytes PendingSize int64 `json:"pendingReplicationSize"` // Completed size in bytes ReplicatedSize int64 `json:"completedReplicationSize"` // Total Replica size in bytes ReplicaSize int64 `json:"replicaSize"` // Failed size in bytes FailedSize int64 `json:"failedReplicationSize"` // Total number of pending operations including metadata updates PendingCount int64 `json:"pendingReplicationCount"` // Total number of failed operations including metadata updates FailedCount int64 `json:"failedReplicationCount"` }
BucketReplicationStats represents inline replication statistics such as pending, failed and completed bytes in total for a bucket
func (BucketReplicationStats) Clone ¶
func (brs BucketReplicationStats) Clone() (c BucketReplicationStats)
Clone creates a new BucketReplicationStats copy
func (*BucketReplicationStats) DecodeMsg ¶
func (z *BucketReplicationStats) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*BucketReplicationStats) Empty ¶
func (brs *BucketReplicationStats) Empty() bool
Empty returns true if there are no target stats
func (*BucketReplicationStats) EncodeMsg ¶
func (z *BucketReplicationStats) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*BucketReplicationStats) MarshalMsg ¶
func (z *BucketReplicationStats) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*BucketReplicationStats) Msgsize ¶
func (z *BucketReplicationStats) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*BucketReplicationStats) UnmarshalMsg ¶
func (z *BucketReplicationStats) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type BucketSSEConfigNotFound ¶
type BucketSSEConfigNotFound GenericError
BucketSSEConfigNotFound - no bucket encryption found
func (BucketSSEConfigNotFound) Error ¶
func (e BucketSSEConfigNotFound) Error() string
type BucketSSEConfigSys ¶
type BucketSSEConfigSys struct{}
BucketSSEConfigSys - in-memory cache of bucket encryption config
func NewBucketSSEConfigSys ¶
func NewBucketSSEConfigSys() *BucketSSEConfigSys
NewBucketSSEConfigSys - Creates an empty in-memory bucket encryption configuration cache
func (*BucketSSEConfigSys) Get ¶
func (sys *BucketSSEConfigSys) Get(bucket string) (*sse.BucketSSEConfig, error)
Get - gets bucket encryption config for the given bucket.
type BucketStats ¶
type BucketStats struct {
ReplicationStats BucketReplicationStats
}
BucketStats bucket statistics
func (*BucketStats) DecodeMsg ¶
func (z *BucketStats) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*BucketStats) EncodeMsg ¶
func (z *BucketStats) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*BucketStats) MarshalMsg ¶
func (z *BucketStats) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*BucketStats) Msgsize ¶
func (z *BucketStats) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*BucketStats) UnmarshalMsg ¶
func (z *BucketStats) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type BucketTaggingNotFound ¶
type BucketTaggingNotFound GenericError
BucketTaggingNotFound - no bucket tags found
func (BucketTaggingNotFound) Error ¶
func (e BucketTaggingNotFound) Error() string
type BucketTargetSys ¶
BucketTargetSys represents bucket targets subsystem
func NewBucketTargetSys ¶
func NewBucketTargetSys() *BucketTargetSys
NewBucketTargetSys - creates new replication system.
func (*BucketTargetSys) Delete ¶
func (sys *BucketTargetSys) Delete(bucket string)
Delete clears targets present for a bucket
func (*BucketTargetSys) GetRemoteBucketTargetByArn ¶
func (sys *BucketTargetSys) GetRemoteBucketTargetByArn(ctx context.Context, bucket, arn string) madmin.BucketTarget
GetRemoteBucketTargetByArn returns BucketTarget for a ARN
func (*BucketTargetSys) GetRemoteTargetClient ¶
func (sys *BucketTargetSys) GetRemoteTargetClient(ctx context.Context, arn string) *TargetClient
GetRemoteTargetClient returns minio-go client for replication target instance
func (*BucketTargetSys) ListBucketTargets ¶
func (sys *BucketTargetSys) ListBucketTargets(ctx context.Context, bucket string) (*madmin.BucketTargets, error)
ListBucketTargets - gets list of bucket targets for this bucket.
func (*BucketTargetSys) ListTargets ¶
func (sys *BucketTargetSys) ListTargets(ctx context.Context, bucket, arnType string) (targets []madmin.BucketTarget)
ListTargets lists bucket targets across tenant or for individual bucket, and returns results filtered by arnType
func (*BucketTargetSys) RemoveTarget ¶
func (sys *BucketTargetSys) RemoveTarget(ctx context.Context, bucket, arnStr string) error
RemoveTarget - removes a remote bucket target for this source bucket.
func (*BucketTargetSys) SetTarget ¶
func (sys *BucketTargetSys) SetTarget(ctx context.Context, bucket string, tgt *madmin.BucketTarget, update bool) error
SetTarget - sets a new minio-go client target for this bucket.
func (*BucketTargetSys) UpdateAllTargets ¶
func (sys *BucketTargetSys) UpdateAllTargets(bucket string, tgts *madmin.BucketTargets)
UpdateAllTargets updates target to reflect metadata updates
type BucketTargetUsageInfo ¶
type BucketTargetUsageInfo struct { ReplicationPendingSize uint64 `json:"objectsPendingReplicationTotalSize"` ReplicationFailedSize uint64 `json:"objectsFailedReplicationTotalSize"` ReplicatedSize uint64 `json:"objectsReplicatedTotalSize"` ReplicaSize uint64 `json:"objectReplicaTotalSize"` ReplicationPendingCount uint64 `json:"objectsPendingReplicationCount"` ReplicationFailedCount uint64 `json:"objectsFailedReplicationCount"` }
BucketTargetUsageInfo - bucket target usage info provides - replicated size for all objects sent to this target - replica size for all objects received from this target - replication pending size for all objects pending replication to this target - replication failed size for all objects failed replication to this target - replica pending count - replica failed count
type BucketUsageInfo ¶
type BucketUsageInfo struct { Size uint64 `json:"size"` // Following five fields suffixed with V1 are here for backward compatibility // Total Size for objects that have not yet been replicated ReplicationPendingSizeV1 uint64 `json:"objectsPendingReplicationTotalSize"` // Total size for objects that have witness one or more failures and will be retried ReplicationFailedSizeV1 uint64 `json:"objectsFailedReplicationTotalSize"` // Total size for objects that have been replicated to destination ReplicatedSizeV1 uint64 `json:"objectsReplicatedTotalSize"` // Total number of objects pending replication ReplicationPendingCountV1 uint64 `json:"objectsPendingReplicationCount"` // Total number of objects that failed replication ReplicationFailedCountV1 uint64 `json:"objectsFailedReplicationCount"` ObjectsCount uint64 `json:"objectsCount"` ObjectSizesHistogram map[string]uint64 `json:"objectsSizesHistogram"` ReplicaSize uint64 `json:"objectReplicaTotalSize"` ReplicationInfo map[string]BucketTargetUsageInfo `json:"objectsReplicationInfo"` }
BucketUsageInfo - bucket usage info provides - total size of the bucket - total objects in a bucket - object size histogram per bucket
type BucketVersioningSys ¶
type BucketVersioningSys struct{}
BucketVersioningSys - policy subsystem.
func NewBucketVersioningSys ¶
func NewBucketVersioningSys() *BucketVersioningSys
NewBucketVersioningSys - creates new versioning system.
func (*BucketVersioningSys) Enabled ¶
func (sys *BucketVersioningSys) Enabled(bucket string) bool
Enabled enabled versioning?
func (*BucketVersioningSys) Get ¶
func (sys *BucketVersioningSys) Get(bucket string) (*versioning.Versioning, error)
Get returns stored bucket policy
func (*BucketVersioningSys) Reset ¶
func (sys *BucketVersioningSys) Reset()
Reset BucketVersioningSys to initial state.
func (*BucketVersioningSys) Suspended ¶
func (sys *BucketVersioningSys) Suspended(bucket string) bool
Suspended suspended versioning?
type CacheChecksumInfoV1 ¶
type CacheChecksumInfoV1 struct { Algorithm string `json:"algorithm"` Blocksize int64 `json:"blocksize"` }
CacheChecksumInfoV1 - carries checksums of individual blocks on disk.
type CacheDiskStats ¶
type CacheDiskStats struct { // used cache size UsageSize uint64 // total cache disk capacity TotalCapacity uint64 // indicates if usage is high or low, if high value is '1', if low its '0' UsageState int32 // indicates the current usage percentage of this cache disk UsagePercent uint64 Dir string }
CacheDiskStats represents cache disk statistics such as current disk usage and available.
func (*CacheDiskStats) GetUsageLevelString ¶
func (c *CacheDiskStats) GetUsageLevelString() (u string)
GetUsageLevelString gets the string representation for the usage level.
type CacheObjectLayer ¶
type CacheObjectLayer interface { // Object operations. GetObjectNInfo(ctx context.Context, bucket, object string, rs *HTTPRangeSpec, h http.Header, lockType LockType, opts ObjectOptions) (gr *GetObjectReader, err error) GetObjectInfo(ctx context.Context, bucket, object string, opts ObjectOptions) (objInfo ObjectInfo, err error) DeleteObject(ctx context.Context, bucket, object string, opts ObjectOptions) (ObjectInfo, error) DeleteObjects(ctx context.Context, bucket string, objects []ObjectToDelete, opts ObjectOptions) ([]DeletedObject, []error) PutObject(ctx context.Context, bucket, object string, data *PutObjReader, opts ObjectOptions) (objInfo ObjectInfo, err error) CopyObject(ctx context.Context, srcBucket, srcObject, destBucket, destObject string, srcInfo ObjectInfo, srcOpts, dstOpts ObjectOptions) (objInfo ObjectInfo, err error) // Multipart operations. NewMultipartUpload(ctx context.Context, bucket, object string, opts ObjectOptions) (uploadID string, err error) PutObjectPart(ctx context.Context, bucket, object, uploadID string, partID int, data *PutObjReader, opts ObjectOptions) (info PartInfo, err error) AbortMultipartUpload(ctx context.Context, bucket, object, uploadID string, opts ObjectOptions) error CompleteMultipartUpload(ctx context.Context, bucket, object, uploadID string, uploadedParts []CompletePart, opts ObjectOptions) (objInfo ObjectInfo, err error) CopyObjectPart(ctx context.Context, srcBucket, srcObject, dstBucket, dstObject, uploadID string, partID int, startOffset int64, length int64, srcInfo ObjectInfo, srcOpts, dstOpts ObjectOptions) (pi PartInfo, e error) // Storage operations. StorageInfo(ctx context.Context) CacheStorageInfo CacheStats() *CacheStats }
CacheObjectLayer implements primitives for cache object API layer.
type CacheStats ¶
type CacheStats struct { BytesServed uint64 Hits uint64 Misses uint64 GetDiskStats func() []CacheDiskStats }
CacheStats - represents bytes served from cache, cache hits and cache misses.
type CacheStatusType ¶
type CacheStatusType string
CacheStatusType - whether the request was served from cache.
const ( // CacheHit - whether object was served from cache. CacheHit CacheStatusType = "HIT" // CacheMiss - object served from backend. CacheMiss CacheStatusType = "MISS" )
func (CacheStatusType) String ¶
func (c CacheStatusType) String() string
type CacheStorageInfo ¶
type CacheStorageInfo struct { Total uint64 // Total cache disk space. Free uint64 // Free cache available space. }
CacheStorageInfo - represents total, free capacity of underlying cache storage.
type CheckPreconditionFn ¶
type CheckPreconditionFn func(o ObjectInfo) bool
CheckPreconditionFn returns true if precondition check failed.
type ChecksumAlgo ¶
type ChecksumAlgo uint8
ChecksumAlgo defines common type of different checksum algorithms
const (
HighwayHash ChecksumAlgo = 1
)
List of currently supported checksum algorithms
func (*ChecksumAlgo) DecodeMsg ¶
func (z *ChecksumAlgo) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (ChecksumAlgo) EncodeMsg ¶
func (z ChecksumAlgo) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (ChecksumAlgo) MarshalMsg ¶
func (z ChecksumAlgo) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (ChecksumAlgo) Msgsize ¶
func (z ChecksumAlgo) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*ChecksumAlgo) UnmarshalMsg ¶
func (z *ChecksumAlgo) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type ChecksumInfo ¶
type ChecksumInfo struct { PartNumber int Algorithm BitrotAlgorithm Hash []byte }
ChecksumInfo - carries checksums of individual scattered parts per disk.
func (*ChecksumInfo) DecodeMsg ¶
func (z *ChecksumInfo) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*ChecksumInfo) EncodeMsg ¶
func (z *ChecksumInfo) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (ChecksumInfo) MarshalJSON ¶
func (c ChecksumInfo) MarshalJSON() ([]byte, error)
MarshalJSON marshals the ChecksumInfo struct
func (*ChecksumInfo) MarshalMsg ¶
func (z *ChecksumInfo) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*ChecksumInfo) Msgsize ¶
func (z *ChecksumInfo) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*ChecksumInfo) UnmarshalJSON ¶
func (c *ChecksumInfo) UnmarshalJSON(data []byte) error
UnmarshalJSON - custom checksum info unmarshaller
func (*ChecksumInfo) UnmarshalMsg ¶
func (z *ChecksumInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type ClientGrantsResult ¶
type ClientGrantsResult struct { // The identifiers for the temporary security credentials that the operation // returns. AssumedRoleUser AssumedRoleUser `xml:",omitempty"` // The intended audience (also known as client ID) of the web identity token. // This is traditionally the client identifier issued to the application that // requested the client grants. Audience string `xml:",omitempty"` // The temporary security credentials, which include an access key ID, a secret // access key, and a security (or session) token. // // Note: The size of the security token that STS APIs return is not fixed. We // strongly recommend that you make no assumptions about the maximum size. As // of this writing, the typical size is less than 4096 bytes, but that can vary. // Also, future updates to AWS might require larger sizes. Credentials auth.Credentials `xml:",omitempty"` // A percentage value that indicates the size of the policy in packed form. // The service rejects any policy with a packed size greater than 100 percent, // which means the policy exceeded the allowed space. PackedPolicySize int `xml:",omitempty"` // The issuing authority of the web identity token presented. For OpenID Connect // ID tokens, this contains the value of the iss field. For OAuth 2.0 id_tokens, // this contains the value of the ProviderId parameter that was passed in the // AssumeRoleWithClientGrants request. Provider string `xml:",omitempty"` // The unique user identifier that is returned by the identity provider. // This identifier is associated with the Token that was submitted // with the AssumeRoleWithClientGrants call. The identifier is typically unique to // the user and the application that acquired the ClientGrantsToken (pairwise identifier). // For OpenID Connect ID tokens, this field contains the value returned by the identity // provider as the token's sub (Subject) claim. SubjectFromToken string `xml:",omitempty"` }
ClientGrantsResult - Contains the response to a successful AssumeRoleWithClientGrants request, including temporary credentials that can be used to make MinIO API requests.
type CommonPrefix ¶
type CommonPrefix struct {
Prefix string
}
CommonPrefix container for prefix response in ListObjectsResponse
type CompleteMultipartUpload ¶
type CompleteMultipartUpload struct {
Parts []CompletePart `xml:"Part"`
}
CompleteMultipartUpload - represents list of parts which are completed, this is sent by the client during CompleteMultipartUpload request.
type CompleteMultipartUploadResponse ¶
type CompleteMultipartUploadResponse struct { XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ CompleteMultipartUploadResult" json:"-"` Location string Bucket string Key string ETag string }
CompleteMultipartUploadResponse container for completed multipart upload response
type CompletePart ¶
type CompletePart struct { // Part number identifying the part. This is a positive integer between 1 and // 10,000 PartNumber int // Entity tag returned when the part was uploaded. ETag string }
CompletePart - represents the part that was completed, this is sent by the client during CompleteMultipartUpload request.
type CompletedParts ¶
type CompletedParts []CompletePart
CompletedParts - is a collection satisfying sort.Interface.
func (CompletedParts) Len ¶
func (a CompletedParts) Len() int
func (CompletedParts) Less ¶
func (a CompletedParts) Less(i, j int) bool
func (CompletedParts) Swap ¶
func (a CompletedParts) Swap(i, j int)
type ConfigDir ¶
type ConfigDir struct {
// contains filtered or unexported fields
}
ConfigDir - points to a user set directory.
type ConfigSys ¶
type ConfigSys struct{}
ConfigSys - config system.
func (*ConfigSys) Init ¶
func (sys *ConfigSys) Init(objAPI ObjectLayer) error
Init - initializes config system from config.json.
type ConnStats ¶
type ConnStats struct {
// contains filtered or unexported fields
}
ConnStats - Network statistics Count total input/output transferred bytes during the server's life.
type ConsoleLogger ¶
type ConsoleLogger struct {
Enable bool `json:"enable"`
}
ConsoleLogger is introduced to workaround the dependency about logrus
type CopyObjectPartResponse ¶
type CopyObjectPartResponse struct { XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ CopyPartResult" json:"-"` LastModified string // time string of format "2006-01-02T15:04:05.000Z" ETag string // md5sum of the copied object part. }
CopyObjectPartResponse container returns ETag and LastModified of the successfully copied object
type CopyObjectResponse ¶
type CopyObjectResponse struct { XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ CopyObjectResult" json:"-"` LastModified string // time string of format "2006-01-02T15:04:05.000Z" ETag string // md5sum of the copied object. }
CopyObjectResponse container returns ETag and LastModified of the successfully copied object
type DataUsageInfo ¶
type DataUsageInfo struct { // LastUpdate is the timestamp of when the data usage info was last updated. // This does not indicate a full scan. LastUpdate time.Time `json:"lastUpdate"` // Objects total count across all buckets ObjectsTotalCount uint64 `json:"objectsCount"` // Objects total size across all buckets ObjectsTotalSize uint64 `json:"objectsTotalSize"` ReplicationInfo map[string]BucketTargetUsageInfo `json:"objectsReplicationInfo"` // Total number of buckets in this cluster BucketsCount uint64 `json:"bucketsCount"` // Buckets usage info provides following information across all buckets // - total size of the bucket // - total objects in a bucket // - object size histogram per bucket BucketsUsage map[string]BucketUsageInfo `json:"bucketsUsageInfo"` // Deprecated kept here for backward compatibility reasons. BucketSizes map[string]uint64 `json:"bucketsSizes"` // TierStats contains per-tier stats of all configured remote tiers TierStats *allTierStats `json:"tierStats,omitempty"` }
DataUsageInfo represents data usage stats of the underlying Object API
type DecryptBlocksReader ¶
type DecryptBlocksReader struct {
// contains filtered or unexported fields
}
DecryptBlocksReader - decrypts multipart parts, while implementing a io.Reader compatible interface.
type DeleteBucketOptions ¶
type DeleteBucketOptions struct { Force bool // Force deletion NoRecreate bool // Do not recreate on delete failures }
DeleteBucketOptions provides options for DeleteBucket calls.
type DeleteError ¶
type DeleteError struct { Code string Message string Key string VersionID string `xml:"VersionId"` }
DeleteError structure.
type DeleteMarkerMTime ¶
DeleteMarkerMTime is an embedded type containing time.Time for XML marshal
func (DeleteMarkerMTime) MarshalXML ¶
func (t DeleteMarkerMTime) MarshalXML(e *xml.Encoder, startElement xml.StartElement) error
MarshalXML encodes expiration date if it is non-zero and encodes empty string otherwise
type DeleteObjectsRequest ¶
type DeleteObjectsRequest struct { // Element to enable quiet mode for the request Quiet bool // List of objects to be deleted Objects []ObjectToDelete `xml:"Object"` }
DeleteObjectsRequest - xml carrying the object key names which needs to be deleted.
type DeleteObjectsResponse ¶
type DeleteObjectsResponse struct { XMLName xml.Name `xml:"http://s3.amazonaws.com/doc/2006-03-01/ DeleteResult" json:"-"` // Collection of all deleted objects DeletedObjects []DeletedObject `xml:"Deleted,omitempty"` // Collection of errors deleting certain objects. Errors []DeleteError `xml:"Error,omitempty"` }
DeleteObjectsResponse container for multiple object deletes.
type DeleteVersionsErrsResp ¶
type DeleteVersionsErrsResp struct {
Errs []error
}
DeleteVersionsErrsResp - collection of delete errors for bulk version deletes
type DeletedObject ¶
type DeletedObject struct { DeleteMarker bool `xml:"DeleteMarker,omitempty"` DeleteMarkerVersionID string `xml:"DeleteMarkerVersionId,omitempty"` ObjectName string `xml:"Key,omitempty"` VersionID string `xml:"VersionId,omitempty"` // MTime of DeleteMarker on source that needs to be propagated to replica DeleteMarkerMTime DeleteMarkerMTime `xml:"-"` // MinIO extensions to support delete marker replication ReplicationState ReplicationState `xml:"-"` }
DeletedObject objects deleted
func (*DeletedObject) DeleteMarkerReplicationStatus ¶
func (d *DeletedObject) DeleteMarkerReplicationStatus() replication.StatusType
DeleteMarkerReplicationStatus return composite replication status of delete marker across targets
func (*DeletedObject) VersionPurgeStatus ¶
func (d *DeletedObject) VersionPurgeStatus() VersionPurgeStatusType
VersionPurgeStatus returns a composite version purge status across targets
type DeletedObjectInfo ¶
type DeletedObjectInfo struct { // Name of the bucket. Bucket string // Name of the object. Name string // Date and time when the object was last modified. ModTime time.Time // Version ID of this object. VersionID string // Indicates the deleted marker is latest IsLatest bool }
DeletedObjectInfo - container for list objects versions deleted objects.
type DeletedObjectReplicationInfo ¶
type DeletedObjectReplicationInfo struct { DeletedObject Bucket string OpType replication.Type ResetID string TargetArn string }
DeletedObjectReplicationInfo has info on deleted object
type DiskInfo ¶
type DiskInfo struct { Total uint64 Free uint64 Used uint64 UsedInodes uint64 FreeInodes uint64 FSType string RootDisk bool Healing bool Endpoint string MountPath string ID string Metrics DiskMetrics Error string // carries the error over the network }
DiskInfo is an extended type which returns current disk usage per path. The above means that any added/deleted fields are incompatible.
func (*DiskInfo) MarshalMsg ¶
MarshalMsg implements msgp.Marshaler
type DiskMetrics ¶
type DiskMetrics struct { APILatencies map[string]uint64 `json:"apiLatencies,omitempty"` APICalls map[string]uint64 `json:"apiCalls,omitempty"` }
DiskMetrics has the information about XL Storage APIs the number of calls of each API and the moving average of the duration of each API.
func (*DiskMetrics) DecodeMsg ¶
func (z *DiskMetrics) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*DiskMetrics) EncodeMsg ¶
func (z *DiskMetrics) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*DiskMetrics) MarshalMsg ¶
func (z *DiskMetrics) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*DiskMetrics) Msgsize ¶
func (z *DiskMetrics) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (*DiskMetrics) UnmarshalMsg ¶
func (z *DiskMetrics) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type Encryption ¶
type Encryption struct { EncryptionType sse.Algorithm `xml:"EncryptionType"` KMSContext string `xml:"KMSContext,omitempty"` KMSKeyID string `xml:"KMSKeyId,omitempty"` }
Encryption specifies encryption setting on restored bucket
type Endpoint ¶
Endpoint - any type of endpoint.
func NewEndpoint ¶
NewEndpoint - returns new endpoint based on given arguments.
func (Endpoint) Type ¶
func (endpoint Endpoint) Type() EndpointType
Type - returns type of endpoint.
func (*Endpoint) UpdateIsLocal ¶
UpdateIsLocal - resolves the host and updates if it is local or not.
type EndpointServerPools ¶
type EndpointServerPools []PoolEndpoints
EndpointServerPools - list of list of endpoints
func (*EndpointServerPools) Add ¶
func (l *EndpointServerPools) Add(zeps PoolEndpoints) error
Add add pool endpoints
func (EndpointServerPools) FirstLocal ¶
func (l EndpointServerPools) FirstLocal() bool
FirstLocal returns true if the first endpoint is local.
func (EndpointServerPools) GetLocalPoolIdx ¶
func (l EndpointServerPools) GetLocalPoolIdx(ep Endpoint) int
GetLocalPoolIdx returns the pool which endpoint belongs to locally. if ep is remote this code will return -1 poolIndex
func (EndpointServerPools) GetPoolIdx ¶
func (l EndpointServerPools) GetPoolIdx(pool string) int
GetPoolIdx return pool index
func (EndpointServerPools) HTTPS ¶
func (l EndpointServerPools) HTTPS() bool
HTTPS - returns true if secure for URLEndpointType.
func (EndpointServerPools) Hostnames ¶
func (l EndpointServerPools) Hostnames() []string
Hostnames - returns list of unique hostnames
func (EndpointServerPools) Legacy ¶
func (l EndpointServerPools) Legacy() bool
Legacy returns 'true' if the MinIO server commandline was provided with no ellipses pattern, those are considered legacy deployments.
func (EndpointServerPools) LocalDisksPaths ¶
func (l EndpointServerPools) LocalDisksPaths() []string
LocalDisksPaths returns the disk paths of the local disks
func (EndpointServerPools) Localhost ¶
func (l EndpointServerPools) Localhost() string
Localhost - returns the local hostname from list of endpoints
func (EndpointServerPools) NEndpoints ¶
func (l EndpointServerPools) NEndpoints() (count int)
NEndpoints - returns all nodes count
type EndpointType ¶
type EndpointType int
EndpointType - enum for endpoint type.
const ( // PathEndpointType - path style endpoint type enum. PathEndpointType EndpointType = iota + 1 // URLEndpointType - URL style endpoint type enum. URLEndpointType )
type Endpoints ¶
type Endpoints []Endpoint
Endpoints - list of same type of endpoint.
func NewEndpoints ¶
NewEndpoints - returns new endpoint list based on input args.
func (Endpoints) GetAllStrings ¶
GetAllStrings - returns allstring of all endpoints
func (Endpoints) GetString ¶
GetString - returns endpoint string of i-th endpoint (0-based), and empty string for invalid indexes.
func (Endpoints) UpdateIsLocal ¶
UpdateIsLocal - resolves the host and discovers the local host.
type Erasure ¶
type Erasure struct {
// contains filtered or unexported fields
}
Erasure - erasure encoding details.
func NewErasure ¶
func NewErasure(ctx context.Context, dataBlocks, parityBlocks int, blockSize int64) (e Erasure, err error)
NewErasure creates a new ErasureStorage.
func (Erasure) Decode ¶
func (e Erasure) Decode(ctx context.Context, writer io.Writer, readers []io.ReaderAt, offset, length, totalLength int64, prefer []bool) (written int64, derr error)
Decode reads from readers, reconstructs data if needed and writes the data to the writer. A set of preferred drives can be supplied. In that case they will be used and the data reconstructed.
func (*Erasure) DecodeDataAndParityBlocks ¶
DecodeDataAndParityBlocks decodes the given erasure-coded data and verifies it. It returns an error if the decoding failed.
func (*Erasure) DecodeDataBlocks ¶
DecodeDataBlocks decodes the given erasure-coded data. It only decodes the data blocks but does not verify them. It returns an error if the decoding failed.
func (*Erasure) Encode ¶
func (e *Erasure) Encode(ctx context.Context, src io.Reader, writers []io.Writer, buf []byte, quorum int) (total int64, err error)
Encode reads from the reader, erasure-encodes the data and writes to the writers.
func (*Erasure) EncodeData ¶
EncodeData encodes the given data and returns the erasure-coded data. It returns an error if the erasure coding failed.
func (Erasure) Heal ¶
func (e Erasure) Heal(ctx context.Context, writers []io.Writer, readers []io.ReaderAt, totalLength int64) (derr error)
Heal reads from readers, reconstruct shards and writes the data to the writers.
func (*Erasure) ShardFileOffset ¶
ShardFileOffset - returns the effective offset where erasure reading begins.
func (*Erasure) ShardFileSize ¶
ShardFileSize - returns final erasure size from original size.
type ErasureAlgo ¶
type ErasureAlgo uint8
ErasureAlgo defines common type of different erasure algorithms
const (
ReedSolomon ErasureAlgo = 1
)
List of currently supported erasure coding algorithms
func (*ErasureAlgo) DecodeMsg ¶
func (z *ErasureAlgo) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (ErasureAlgo) EncodeMsg ¶
func (z ErasureAlgo) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (ErasureAlgo) MarshalMsg ¶
func (z ErasureAlgo) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (ErasureAlgo) Msgsize ¶
func (z ErasureAlgo) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (ErasureAlgo) String ¶
func (i ErasureAlgo) String() string
func (*ErasureAlgo) UnmarshalMsg ¶
func (z *ErasureAlgo) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type ErasureInfo ¶
type ErasureInfo struct { // Algorithm is the string representation of erasure-coding-algorithm Algorithm string `json:"algorithm"` // DataBlocks is the number of data blocks for erasure-coding DataBlocks int `json:"data"` // ParityBlocks is the number of parity blocks for erasure-coding ParityBlocks int `json:"parity"` // BlockSize is the size of one erasure-coded block BlockSize int64 `json:"blockSize"` // Index is the index of the current disk Index int `json:"index"` // Distribution is the distribution of the data and parity blocks Distribution []int `json:"distribution"` // Checksums holds all bitrot checksums of all erasure encoded blocks Checksums []ChecksumInfo `json:"checksum,omitempty"` }
ErasureInfo holds erasure coding and bitrot related information.
func (*ErasureInfo) AddChecksumInfo ¶
func (e *ErasureInfo) AddChecksumInfo(ckSumInfo ChecksumInfo)
AddChecksumInfo adds a checksum of a part.
func (*ErasureInfo) DecodeMsg ¶
func (z *ErasureInfo) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*ErasureInfo) EncodeMsg ¶
func (z *ErasureInfo) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (ErasureInfo) GetChecksumInfo ¶
func (e ErasureInfo) GetChecksumInfo(partNumber int) (ckSum ChecksumInfo)
GetChecksumInfo - get checksum of a part.
func (*ErasureInfo) MarshalMsg ¶
func (z *ErasureInfo) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*ErasureInfo) Msgsize ¶
func (z *ErasureInfo) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (ErasureInfo) ShardFileSize ¶
func (e ErasureInfo) ShardFileSize(totalLength int64) int64
ShardFileSize - returns final erasure size from original size.
func (ErasureInfo) ShardSize ¶
func (e ErasureInfo) ShardSize() int64
ShardSize - returns actual shared size from erasure blockSize.
func (*ErasureInfo) UnmarshalMsg ¶
func (z *ErasureInfo) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type EvalMetadataFn ¶
type EvalMetadataFn func(o ObjectInfo) error
EvalMetadataFn validates input objInfo and returns an updated metadata
type ExpirationOptions ¶
type ExpirationOptions struct {
Expire bool
}
ExpirationOptions represents object options for object expiration at objectLayer.
type FSChecksumInfoV1 ¶
FSChecksumInfoV1 - carries checksums of individual blocks on disk.
func (FSChecksumInfoV1) MarshalJSON ¶
func (c FSChecksumInfoV1) MarshalJSON() ([]byte, error)
MarshalJSON marshals the FSChecksumInfoV1 struct
func (*FSChecksumInfoV1) UnmarshalJSON ¶
func (c *FSChecksumInfoV1) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals the the given data into the FSChecksumInfoV1 struct
type FSObjects ¶
type FSObjects struct { GatewayUnsupported // contains filtered or unexported fields }
FSObjects - Implements fs object layer.
func (*FSObjects) AbortMultipartUpload ¶
func (fs *FSObjects) AbortMultipartUpload(ctx context.Context, bucket, object, uploadID string, opts ObjectOptions) error
AbortMultipartUpload - aborts an ongoing multipart operation signified by the input uploadID. This is an atomic operation doesn't require clients to initiate multiple such requests.
All parts are purged from all disks and reference to the uploadID would be removed from the system, rollback is not possible on this operation.
Implements S3 compatible Abort multipart API, slight difference is that this is an atomic idempotent operation. Subsequent calls have no affect and further requests to the same uploadID would not be honored.
func (*FSObjects) BackendInfo ¶
func (fs *FSObjects) BackendInfo() madmin.BackendInfo
BackendInfo - returns backend information
func (*FSObjects) CompleteMultipartUpload ¶
func (fs *FSObjects) CompleteMultipartUpload(ctx context.Context, bucket string, object string, uploadID string, parts []CompletePart, opts ObjectOptions) (oi ObjectInfo, e error)
CompleteMultipartUpload - completes an ongoing multipart transaction after receiving all the parts indicated by the client. Returns an md5sum calculated by concatenating all the individual md5sums of all the parts.
Implements S3 compatible Complete multipart API.
func (*FSObjects) CopyObject ¶
func (fs *FSObjects) CopyObject(ctx context.Context, srcBucket, srcObject, dstBucket, dstObject string, srcInfo ObjectInfo, srcOpts, dstOpts ObjectOptions) (oi ObjectInfo, err error)
CopyObject - copy object source object to destination object. if source object and destination object are same we only update metadata.
func (*FSObjects) CopyObjectPart ¶
func (fs *FSObjects) CopyObjectPart(ctx context.Context, srcBucket, srcObject, dstBucket, dstObject, uploadID string, partID int, startOffset int64, length int64, srcInfo ObjectInfo, srcOpts, dstOpts ObjectOptions) (pi PartInfo, e error, )
CopyObjectPart - similar to PutObjectPart but reads data from an existing object. Internally incoming data is written to '.minio.sys/tmp' location and safely renamed to '.minio.sys/multipart' for reach parts.
func (*FSObjects) DeleteBucket ¶
func (fs *FSObjects) DeleteBucket(ctx context.Context, bucket string, opts DeleteBucketOptions) error
DeleteBucket - delete a bucket and all the metadata associated with the bucket including pending multipart, object metadata.
func (*FSObjects) DeleteBucketPolicy ¶
DeleteBucketPolicy - only needed for FS in NAS mode
func (*FSObjects) DeleteObject ¶
func (fs *FSObjects) DeleteObject(ctx context.Context, bucket, object string, opts ObjectOptions) (objInfo ObjectInfo, err error)
DeleteObject - deletes an object from a bucket, this operation is destructive and there are no rollbacks supported.
func (*FSObjects) DeleteObjectTags ¶
func (fs *FSObjects) DeleteObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (ObjectInfo, error)
DeleteObjectTags - delete object tags from an existing object
func (*FSObjects) DeleteObjects ¶
func (fs *FSObjects) DeleteObjects(ctx context.Context, bucket string, objects []ObjectToDelete, opts ObjectOptions) ([]DeletedObject, []error)
DeleteObjects - deletes an object from a bucket, this operation is destructive and there are no rollbacks supported.
func (*FSObjects) GetBucketInfo ¶
GetBucketInfo - fetch bucket metadata info.
func (*FSObjects) GetBucketPolicy ¶
GetBucketPolicy - only needed for FS in NAS mode
func (*FSObjects) GetMetrics ¶
func (fs *FSObjects) GetMetrics(ctx context.Context) (*BackendMetrics, error)
GetMetrics - no op
func (*FSObjects) GetMultipartInfo ¶
func (fs *FSObjects) GetMultipartInfo(ctx context.Context, bucket, object, uploadID string, opts ObjectOptions) (MultipartInfo, error)
GetMultipartInfo returns multipart metadata uploaded during newMultipartUpload, used by callers to verify object states - encrypted - compressed
func (*FSObjects) GetObjectInfo ¶
func (fs *FSObjects) GetObjectInfo(ctx context.Context, bucket, object string, opts ObjectOptions) (oi ObjectInfo, e error)
GetObjectInfo - reads object metadata and replies back ObjectInfo.
func (*FSObjects) GetObjectNInfo ¶
func (fs *FSObjects) GetObjectNInfo(ctx context.Context, bucket, object string, rs *HTTPRangeSpec, h http.Header, lockType LockType, opts ObjectOptions) (gr *GetObjectReader, err error)
GetObjectNInfo - returns object info and a reader for object content.
func (*FSObjects) GetObjectTags ¶
func (fs *FSObjects) GetObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (*tags.Tags, error)
GetObjectTags - get object tags from an existing object
func (*FSObjects) GetRawData ¶
func (fs *FSObjects) GetRawData(ctx context.Context, volume, file string, fn func(r io.Reader, host string, disk string, filename string, size int64, modtime time.Time, isDir bool) error) error
GetRawData returns raw file data to the callback. Errors are ignored, only errors from the callback are returned. For now only direct file paths are supported.
func (*FSObjects) HealBucket ¶
func (fs *FSObjects) HealBucket(ctx context.Context, bucket string, opts madmin.HealOpts) (madmin.HealResultItem, error)
HealBucket - no-op for fs, Valid only for Erasure.
func (*FSObjects) HealFormat ¶
HealFormat - no-op for fs, Valid only for Erasure.
func (*FSObjects) HealObject ¶
func (fs *FSObjects) HealObject(ctx context.Context, bucket, object, versionID string, opts madmin.HealOpts) ( res madmin.HealResultItem, err error)
HealObject - no-op for fs. Valid only for Erasure.
func (*FSObjects) HealObjects ¶
func (fs *FSObjects) HealObjects(ctx context.Context, bucket, prefix string, opts madmin.HealOpts, fn HealObjectFn) (e error)
HealObjects - no-op for fs. Valid only for Erasure.
func (*FSObjects) Health ¶
func (fs *FSObjects) Health(ctx context.Context, opts HealthOptions) HealthResult
Health returns health of the object layer
func (*FSObjects) IsCompressionSupported ¶
IsCompressionSupported returns whether compression is applicable for this layer.
func (*FSObjects) IsEncryptionSupported ¶
IsEncryptionSupported returns whether server side encryption is implemented for this layer.
func (*FSObjects) IsListenSupported ¶
IsListenSupported returns whether listen bucket notification is applicable for this layer.
func (*FSObjects) IsNotificationSupported ¶
IsNotificationSupported returns whether bucket notification is applicable for this layer.
func (*FSObjects) IsTaggingSupported ¶
IsTaggingSupported returns true, object tagging is supported in fs object layer.
func (*FSObjects) ListBuckets ¶
func (fs *FSObjects) ListBuckets(ctx context.Context) ([]BucketInfo, error)
ListBuckets - list all s3 compatible buckets (directories) at fsPath.
func (*FSObjects) ListMultipartUploads ¶
func (fs *FSObjects) ListMultipartUploads(ctx context.Context, bucket, object, keyMarker, uploadIDMarker, delimiter string, maxUploads int) (result ListMultipartsInfo, e error)
ListMultipartUploads - lists all the uploadIDs for the specified object. We do not support prefix based listing.
func (*FSObjects) ListObjectParts ¶
func (fs *FSObjects) ListObjectParts(ctx context.Context, bucket, object, uploadID string, partNumberMarker, maxParts int, opts ObjectOptions) (result ListPartsInfo, e error)
ListObjectParts - lists all previously uploaded parts for a given object and uploadID. Takes additional input of part-number-marker to indicate where the listing should begin from.
Implements S3 compatible ListObjectParts API. The resulting ListPartsInfo structure is unmarshalled directly into XML and replied back to the client.
func (*FSObjects) ListObjectVersions ¶
func (fs *FSObjects) ListObjectVersions(ctx context.Context, bucket, prefix, marker, versionMarker, delimiter string, maxKeys int) (loi ListObjectVersionsInfo, e error)
ListObjectVersions not implemented for FS mode.
func (*FSObjects) ListObjects ¶
func (fs *FSObjects) ListObjects(ctx context.Context, bucket, prefix, marker, delimiter string, maxKeys int) (loi ListObjectsInfo, err error)
ListObjects - list all objects at prefix upto maxKeys., optionally delimited by '/'. Maintains the list pool state for future re-entrant list requests.
func (*FSObjects) ListObjectsV2 ¶
func (fs *FSObjects) ListObjectsV2(ctx context.Context, bucket, prefix, continuationToken, delimiter string, maxKeys int, fetchOwner bool, startAfter string) (result ListObjectsV2Info, err error)
ListObjectsV2 lists all blobs in bucket filtered by prefix
func (*FSObjects) LocalStorageInfo ¶
func (fs *FSObjects) LocalStorageInfo(ctx context.Context) (StorageInfo, []error)
LocalStorageInfo - returns underlying storage statistics.
func (*FSObjects) MakeBucketWithLocation ¶
func (fs *FSObjects) MakeBucketWithLocation(ctx context.Context, bucket string, opts BucketOptions) error
MakeBucketWithLocation - create a new bucket, returns if it already exists.
func (*FSObjects) NSScanner ¶
func (fs *FSObjects) NSScanner(ctx context.Context, bf *bloomFilter, updates chan<- DataUsageInfo, wantCycle uint32) error
NSScanner returns data usage stats of the current FS deployment
func (*FSObjects) NewMultipartUpload ¶
func (fs *FSObjects) NewMultipartUpload(ctx context.Context, bucket, object string, opts ObjectOptions) (string, error)
NewMultipartUpload - initialize a new multipart upload, returns a unique id. The unique id returned here is of UUID form, for each subsequent request each UUID is unique.
Implements S3 compatible initiate multipart API.
func (*FSObjects) PutObject ¶
func (fs *FSObjects) PutObject(ctx context.Context, bucket string, object string, r *PutObjReader, opts ObjectOptions) (objInfo ObjectInfo, err error)
PutObject - creates an object upon reading from the input stream until EOF, writes data directly to configured filesystem path. Additionally writes `fs.json` which carries the necessary metadata for future object operations.
func (*FSObjects) PutObjectPart ¶
func (fs *FSObjects) PutObjectPart(ctx context.Context, bucket, object, uploadID string, partID int, r *PutObjReader, opts ObjectOptions) (pi PartInfo, e error)
PutObjectPart - reads incoming data until EOF for the part file on an ongoing multipart transaction. Internally incoming data is written to '.minio.sys/tmp' location and safely renamed to '.minio.sys/multipart' for reach parts.
func (*FSObjects) PutObjectTags ¶
func (fs *FSObjects) PutObjectTags(ctx context.Context, bucket, object string, tags string, opts ObjectOptions) (ObjectInfo, error)
PutObjectTags - replace or add tags to an existing object
func (*FSObjects) ReadHealth ¶
ReadHealth returns "read" health of the object layer
func (*FSObjects) RestoreTransitionedObject ¶
func (fs *FSObjects) RestoreTransitionedObject(ctx context.Context, bucket, object string, opts ObjectOptions) error
RestoreTransitionedObject - restore transitioned object content locally on this cluster.
func (*FSObjects) SetBucketPolicy ¶
SetBucketPolicy - only needed for FS in NAS mode
func (*FSObjects) StorageInfo ¶
func (fs *FSObjects) StorageInfo(ctx context.Context) (StorageInfo, []error)
StorageInfo - returns underlying storage statistics.
func (*FSObjects) TransitionObject ¶
func (fs *FSObjects) TransitionObject(ctx context.Context, bucket, object string, opts ObjectOptions) error
TransitionObject - transition object content to target tier.
func (*FSObjects) Walk ¶
func (fs *FSObjects) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo, opts ObjectOptions) error
Walk a bucket, optionally prefix recursively, until we have returned all the content to objectInfo channel, it is callers responsibility to allocate a receive channel for ObjectInfo, upon any unhandled error walker returns error. Optionally if context.Done() is received then Walk() stops the walker.
type FileInfo ¶
type FileInfo struct { // Name of the volume. Volume string `msg:"v,omitempty"` // Name of the file. Name string `msg:"n,omitempty"` // Version of the file. VersionID string `msg:"vid,omitempty"` // Indicates if the version is the latest IsLatest bool `msg:"is"` // Deleted is set when this FileInfo represents // a deleted marker for a versioned bucket. Deleted bool `msg:"del"` // TransitionStatus is set to Pending/Complete for transitioned // entries based on state of transition TransitionStatus string `msg:"ts"` // TransitionedObjName is the object name on the remote tier corresponding // to object (version) on the source tier. TransitionedObjName string `msg:"to"` // TransitionTier is the storage class label assigned to remote tier. TransitionTier string `msg:"tt"` // TransitionVersionID stores a version ID of the object associate // with the remote tier. TransitionVersionID string `msg:"tv"` // ExpireRestored indicates that the restored object is to be expired. ExpireRestored bool `msg:"exp"` // DataDir of the file DataDir string `msg:"dd"` // Indicates if this object is still in V1 format. XLV1 bool `msg:"v1"` // Date and time when the file was last modified, if Deleted // is 'true' this value represents when while was deleted. ModTime time.Time `msg:"mt"` // Total file size. Size int64 `msg:"sz"` // File mode bits. Mode uint32 `msg:"m"` // File metadata Metadata map[string]string `msg:"meta"` // All the parts per object. Parts []ObjectPartInfo `msg:"parts"` // Erasure info for all objects. Erasure ErasureInfo `msg:"ei"` MarkDeleted bool `msg:"md"` // mark this version as deleted ReplicationState ReplicationState `msg:"rs"` // Internal replication state to be passed back in ObjectInfo Data []byte `msg:"d,allownil"` // optionally carries object data NumVersions int `msg:"nv"` SuccessorModTime time.Time `msg:"smt"` Fresh bool `msg:"fr"` // indicates this is a first time call to write FileInfo. // Position of this version or object in a multi-object delete call, // no other caller must set this value other than multi-object delete call. // usage in other calls in undefined please avoid. Idx int `msg:"i"` // DiskMTime indicates the mtime of the xl.meta on disk // This is mainly used for detecting a particular issue // reported in https://github.com/memoio/minio/pull/13803 DiskMTime time.Time `msg:"dmt"` }
FileInfo - represents file stat information. The above means that any added/deleted fields are incompatible.
func (FileInfo) AcceptableDelta ¶
AcceptableDelta returns 'true' if the fi.DiskMTime is under acceptable delta of "delta" duration with maxTime.
This code is primarily used for heuristic detection of incorrect shards, as per https://github.com/memoio/minio/pull/13803
This check only is active if we could find maximally occurring disk mtimes that are somewhat same across the quorum. Allowing to skip those shards which we might think are wrong.
func (*FileInfo) AddObjectPart ¶
func (fi *FileInfo) AddObjectPart(partNumber int, partETag string, partSize int64, actualSize int64)
AddObjectPart - add a new object part in order.
func (FileInfo) DataShardFixed ¶
DataShardFixed - data shard fixed?
func (*FileInfo) DeleteMarkerReplicationStatus ¶
func (fi *FileInfo) DeleteMarkerReplicationStatus() replication.StatusType
DeleteMarkerReplicationStatus returns overall replication status for this delete marker version across targets
func (FileInfo) GetDataDir ¶
GetDataDir returns an expected dataDir given FileInfo
- deleteMarker returns "delete-marker"
- returns "legacy" if FileInfo is XLV1 and DataDir is empty, returns DataDir otherwise
- returns "dataDir"
func (FileInfo) InlineData ¶
InlineData returns true if object contents are inlined alongside its metadata.
func (FileInfo) IsRemote ¶
IsRemote returns true if this object version's contents are in its remote tier.
func (*FileInfo) IsRestoreObjReq ¶
IsRestoreObjReq returns true if fi corresponds to a RestoreObject request.
func (*FileInfo) MarshalMsg ¶
MarshalMsg implements msgp.Marshaler
func (FileInfo) MetadataEquals ¶
MetadataEquals returns true if FileInfos Metadata maps are equal, false otherwise.
func (*FileInfo) Msgsize ¶
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (FileInfo) ObjectToPartOffset ¶
func (fi FileInfo) ObjectToPartOffset(ctx context.Context, offset int64) (partIndex int, partOffset int64, err error)
ObjectToPartOffset - translate offset of an object to offset of its individual part.
func (FileInfo) ReplicationInfoEquals ¶
ReplicationInfoEquals returns true if server-side replication related fields are equal, false otherwise.
func (*FileInfo) SetInlineData ¶
func (fi *FileInfo) SetInlineData()
SetInlineData marks object (version) as inline.
func (*FileInfo) SetTierFreeVersion ¶
func (fi *FileInfo) SetTierFreeVersion()
SetTierFreeVersion sets fi as a free-version. This method is used by lower layers to indicate a free-version.
func (*FileInfo) SetTierFreeVersionID ¶
SetTierFreeVersionID sets free-version's versionID. This method is used by object layer to pass down a versionID to set for a free-version that may be created.
func (*FileInfo) TierFreeVersion ¶
TierFreeVersion returns true if version is a free-version.
func (*FileInfo) TierFreeVersionID ¶
TierFreeVersionID returns the free-version's version id.
func (FileInfo) ToObjectInfo ¶
func (fi FileInfo) ToObjectInfo(bucket, object string) ObjectInfo
ToObjectInfo - Converts metadata to object info.
func (FileInfo) TransitionInfoEquals ¶
TransitionInfoEquals returns true if transition related information are equal, false otherwise.
func (*FileInfo) UnmarshalMsg ¶
UnmarshalMsg implements msgp.Unmarshaler
func (*FileInfo) VersionPurgeStatus ¶
func (fi *FileInfo) VersionPurgeStatus() VersionPurgeStatusType
VersionPurgeStatus returns overall version purge status for this object version across targets
type FileInfoVersions ¶
type FileInfoVersions struct { // Name of the volume. Volume string `msg:"v,omitempty"` // Name of the file. Name string `msg:"n,omitempty"` // Represents the latest mod time of the // latest version. LatestModTime time.Time `msg:"lm"` Versions []FileInfo `msg:"vs"` FreeVersions []FileInfo `msg:"fvs"` }
FileInfoVersions represent a list of versions for a given file. The above means that any added/deleted fields are incompatible.
func (*FileInfoVersions) DecodeMsg ¶
func (z *FileInfoVersions) DecodeMsg(dc *msgp.Reader) (err error)
DecodeMsg implements msgp.Decodable
func (*FileInfoVersions) EncodeMsg ¶
func (z *FileInfoVersions) EncodeMsg(en *msgp.Writer) (err error)
EncodeMsg implements msgp.Encodable
func (*FileInfoVersions) MarshalMsg ¶
func (z *FileInfoVersions) MarshalMsg(b []byte) (o []byte, err error)
MarshalMsg implements msgp.Marshaler
func (*FileInfoVersions) Msgsize ¶
func (z *FileInfoVersions) Msgsize() (s int)
Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message
func (FileInfoVersions) Size ¶
func (f FileInfoVersions) Size() (size int64)
Size returns size of all versions for the object 'Name'
func (*FileInfoVersions) UnmarshalMsg ¶
func (z *FileInfoVersions) UnmarshalMsg(bts []byte) (o []byte, err error)
UnmarshalMsg implements msgp.Unmarshaler
type FileLogger ¶
FileLogger is introduced to workaround the dependency about logrus
type FilesInfo ¶
FilesInfo represent a list of files, additionally indicates if the list is last.
func (*FilesInfo) MarshalMsg ¶
MarshalMsg implements msgp.Marshaler
type Gateway ¶
type Gateway interface { // Name returns the unique name of the gateway. Name() string // NewGatewayLayer returns a new ObjectLayer. NewGatewayLayer(creds madmin.Credentials) (ObjectLayer, error) }
Gateway represents a gateway backend.
type GatewayLocker ¶
type GatewayLocker struct { ObjectLayer // contains filtered or unexported fields }
GatewayLocker implements custom NewNSLock implementation
func (*GatewayLocker) NewNSLock ¶
func (l *GatewayLocker) NewNSLock(bucket string, objects ...string) RWLocker
NewNSLock - implements gateway level locker
func (*GatewayLocker) Walk ¶
func (l *GatewayLocker) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo, opts ObjectOptions) error
Walk - implements common gateway level Walker, to walk on all objects recursively at a prefix
type GatewayUnsupported ¶
type GatewayUnsupported struct{}
GatewayUnsupported list of unsupported call stubs for gateway.
func (GatewayUnsupported) AbortMultipartUpload ¶
func (a GatewayUnsupported) AbortMultipartUpload(ctx context.Context, bucket string, object string, uploadID string, opts ObjectOptions) error
AbortMultipartUpload aborts a ongoing multipart upload
func (GatewayUnsupported) BackendInfo ¶
func (a GatewayUnsupported) BackendInfo() madmin.BackendInfo
BackendInfo returns the underlying backend information
func (GatewayUnsupported) CompleteMultipartUpload ¶
func (a GatewayUnsupported) CompleteMultipartUpload(ctx context.Context, bucket string, object string, uploadID string, uploadedParts []CompletePart, opts ObjectOptions) (oi ObjectInfo, err error)
CompleteMultipartUpload completes ongoing multipart upload and finalizes object
func (GatewayUnsupported) CopyObject ¶
func (a GatewayUnsupported) CopyObject(ctx context.Context, srcBucket string, srcObject string, destBucket string, destObject string, srcInfo ObjectInfo, srcOpts, dstOpts ObjectOptions) (objInfo ObjectInfo, err error)
CopyObject copies a blob from source container to destination container.
func (GatewayUnsupported) CopyObjectPart ¶
func (a GatewayUnsupported) CopyObjectPart(ctx context.Context, srcBucket, srcObject, destBucket, destObject, uploadID string, partID int, startOffset, length int64, srcInfo ObjectInfo, srcOpts, dstOpts ObjectOptions) (pi PartInfo, err error)
CopyObjectPart copy part of object to uploadID for another object
func (GatewayUnsupported) DeleteBucketLifecycle ¶
func (a GatewayUnsupported) DeleteBucketLifecycle(ctx context.Context, bucket string) error
DeleteBucketLifecycle deletes all lifecycle policies on a bucket
func (GatewayUnsupported) DeleteBucketPolicy ¶
func (a GatewayUnsupported) DeleteBucketPolicy(ctx context.Context, bucket string) error
DeleteBucketPolicy deletes all policies on bucket
func (GatewayUnsupported) DeleteBucketSSEConfig ¶
func (a GatewayUnsupported) DeleteBucketSSEConfig(ctx context.Context, bucket string) error
DeleteBucketSSEConfig deletes bucket encryption config on a bucket
func (GatewayUnsupported) DeleteObjectTags ¶
func (a GatewayUnsupported) DeleteObjectTags(ctx context.Context, bucket, object string, opts ObjectOptions) (ObjectInfo, error)
DeleteObjectTags - not implemented.
func (GatewayUnsupported) GetBucketLifecycle ¶
func (a GatewayUnsupported) GetBucketLifecycle(ctx context.Context, bucket string) (*lifecycle.Lifecycle, error)
GetBucketLifecycle retrieves lifecycle configuration of a bucket.
func (GatewayUnsupported) GetBucketPolicy ¶
func (a GatewayUnsupported) GetBucketPolicy(ctx context.Context, bucket string) (bucketPolicy *policy.Policy, err error)
GetBucketPolicy will get policy on bucket
func (GatewayUnsupported) GetBucketSSEConfig ¶
func (a GatewayUnsupported) GetBucketSSEConfig(ctx context.Context, bucket string) (*bucketsse.BucketSSEConfig, error)
GetBucketSSEConfig returns bucket encryption config on a bucket
func (GatewayUnsupported) GetBucketVersioning ¶
func (a GatewayUnsupported) GetBucketVersioning(ctx context.Context, bucket string) (*versioning.Versioning, error)
GetBucketVersioning retrieves versioning configuration of a bucket.
func (GatewayUnsupported) GetMetrics ¶
func (a GatewayUnsupported) GetMetrics(ctx context.Context) (*BackendMetrics, error)
GetMetrics - no op
func (GatewayUnsupported) GetMultipartInfo ¶
func (a GatewayUnsupported) GetMultipartInfo(ctx context.Context, bucket string, object string, uploadID string, opts ObjectOptions) (MultipartInfo,