Versions in this module Expand all Collapse all v1 v1.5.1 Jan 20, 2020 Changes in this version + type Wildcard struct + func NewWildcard(domain string) (*Wildcard, error) + func (w *Wildcard) Parse(host string) (bucket string, is bool) + type Wildcards []*Wildcard + func NewWildcards(domains []string) (Wildcards, error) + func (ws Wildcards) Parse(host string) (bucket string, is bool) v1.5.0 Jan 8, 2020 Changes in this version + const AMZTimeFormat + const AbortMultipartUploadAction + const ArnEquals + const ArnLike + const ArnNotEquals + const ArnNotLike + const ArnSplitToken + const AuthenticatedReadACL + const AwsCurrentTime + const AwsEpochTime + const AwsExecReadACL + const AwsMultiFactorAuthPresent + const AwsPrincipalAccount + const AwsPrincipalArn + const AwsPrincipalOrgID + const AwsPrincipalTag + const AwsPrincipalType + const AwsReferer + const AwsRequestRegion + const AwsRequestTagKey + const AwsResourceTagKey + const AwsSecureTransport + const AwsSourceAccout + const AwsSourceArn + const AwsSourceIp + const AwsSourceVpc + const AwsSourceVpce + const AwsTagKeys + const AwsTokenIssueTime + const AwsUserAgent + const AwsUserId + const AwsUserName + const AwsVpcSourceIp + const Bool + const BucketOwnerFullControlACL + const BucketOwnerReadACL + const BucketPolicyLimitSize + const CreateBucketAction + const DEF_GRANTEE_TYPE + const DateEquals + const DateFormatISO8601 + const DateGreaterThan + const DateGreaterThanEquals + const DateLessThan + const DateLessThanEquals + const DateNotEquals + const DeleteBucketPolicyAction + const DeleteObjectAction + const EmptyContentMD5String + const FullControlPermission + const GetBucketAclAction + const GetBucketLocationAction + const GetBucketPolicyAction + const GetObjectAclAction + const GetObjectAction + const GetObjectTorrentAction + const GetObjectVersionAclAction + const GetObjectVersionAction + const HeadObjectAction + const HeaderNameAcceptRange + const HeaderNameAuthorization + const HeaderNameContentEnc + const HeaderNameContentHash + const HeaderNameContentLength + const HeaderNameContentMD5 + const HeaderNameContentRange + const HeaderNameContentType + const HeaderNameCopyMatch + const HeaderNameCopyModified + const HeaderNameCopyNoneMatch + const HeaderNameCopySource + const HeaderNameCopyUnModified + const HeaderNameDate + const HeaderNameDecodeContentLength + const HeaderNameETag + const HeaderNameHost + const HeaderNameLastModified + const HeaderNameRange + const HeaderNameRequestId + const HeaderNameServer + const HeaderNameStartDate + const HeaderValueAcceptRange + const HeaderValueContentTypeXML + const HeaderValueServer + const HeaderValueTypeStream + const IpAddress + const ListBucketAction + const ListBucketMultipartUploadsAction + const ListBucketVersionsAction + const ListMultipartUploadPartsAction + const LogDeliveryRole + const LogDeliveryWriteACL + const META_OSS_VOLUME + const MaxKeys + const MaxParts + const MaxPresignedExpires + const MaxSkewTime + const MaxUploads + const NotIpAddress + const NumericEquals + const NumericGreaterThan + const NumericGreaterThanEquals + const NumericLessThan + const NumericLessThanEquals + const NumericNotEquals + const OSSMetaUpdateDuration + const OSS_ACL_KEY + const ParamContToken + const ParamFetchOwner + const ParamKeyMarker + const ParamMarker + const ParamMaxKeys + const ParamMaxParts + const ParamPartDelimiter + const ParamPartMaxUploads + const ParamPartNoMarker + const ParamPartNumber + const ParamPrefix + const ParamStartAfter + const ParamUploadId + const ParamUploadIdMarker + const PolicyDefaultVersion + const PresignedV2 + const PresignedV4 + const PresignedV4QueryAuth + const PrivateACL + const PublicReadACL + const PubliceReadWriteACL + const PutBucketAclAction + const PutBucketPolicyAction + const PutObjectAclAction + const PutObjectAction + const PutObjectTorrentAction + const PutObjectVersionAclAction + const PutObjectVersionAction + const ReadACPPermission + const ReadPermission + const RequestHeaderV2Authorization + const RequestHeaderV2AuthorizationScheme + const RequestHeaderV2XAmzDate + const Running + const Shutdown + const SignatrueV2 + const SignatrueV4 + const SignatureV4Algorithm + const SignatureV4Request + const SignedHeaderHost + const Standby + const Start + const Stopped + const StorageClassStandard + const StringEquals + const StringLike + const StringNotEquals + const StringNotLike + const SubMultipartUpload + const SubObjectDelete + const UnsignedPayload + const WriteACPPermission + const WritePermission + const XAmzAlgorithm + const XAmzContentSha256 + const XAmzCredential + const XAmzDate + const XAmzExpires + const XAmzSignature + const XAmzSignedHeaders + const XAttrKeyOSSETag + const XAttrKeyOSSPolicy + const XAttrKeyOSSTagging + const XMLNS + const XMLXSI + var ALGORITHM = "HMAC-SHA256" + var AccessDenied = ErrorCode + var ArnFuncs = []ConditionFunc + var ArnType = ConditionTypeSet + var AuthSignatureV4Headers = []string + var BadDigest = ErrorCode + var BoolFuncs = []ConditionFunc + var BoolType = ConditionTypeSet + var BucketNotEmpty = ErrorCode + var BucketNotExisted = ErrorCode + var BucketNotExistedForHead = ErrorCode + var BucketNotOwnedByYou = ErrorCode + var ConditionFuncMap = map[ConditionType]ConditionFunc + var ConditionKeyType = map[ConditionKey]ConditionTypeSet + var DateFuncs = []ConditionFunc + var DateType = ConditionTypeSet + var EntityTooLarge = ErrorCode + var EntityTooSmall = ErrorCode + var ErrUnexpectedChunkEnd = errors.New("unexpected chunk end") + var ErrUnexpectedChunkSize = errors.New("unexpected chunk size") + var IncorrectNumberOfFilesInPostRequest = ErrorCode + var InternalError = ErrorCode + var InvalidArgument = ErrorCode + var InvalidBucketName = ErrorCode + var InvalidKey = ErrorCode + var InvalidParamError = errors.New("invalid param") + var InvalidRange = ErrorCode + var IpAddressFuncs = []ConditionFunc + var IpAddressType = ConditionTypeSet + var KeyTooLongError = ErrorCode + var MaxContentLength = ErrorCode + var MaxExpiresError = errors.New("max expires value") + var MissingContentLength = ErrorCode + var NoSuchBucket = ErrorCode + var NoSuchKey = ErrorCode + var NumericFuncs = []ConditionFunc + var NumericType = ConditionTypeSet + var PreconditionFailed = ErrorCode + var PresignedSignatureV2Queries = []string + var PresignedSignatureV4Queries = []string + var SCHEME = "AWS4" + var SERVICE = "s3" + var SignatureV2WhiteQueries = map[string]struct + var StringFuncs = []ConditionFunc + var StringType = ConditionTypeSet + var TERMINATOR = "aws4_request" + var UnsupportedOperation = ErrorCode + func ArnEqualsFunc(p *RequestParam, value ConditionValues) bool + func ArnLikeFunc(p *RequestParam, value ConditionValues) bool + func ArnNotEqualsFunc(p *RequestParam, value ConditionValues) bool + func ArnNotLikeFunc(p *RequestParam, value ConditionValues) bool + func BoolFunc(p *RequestParam, policyCondtion ConditionValues) bool + func DateEqualsFunc(p *RequestParam, policyVals ConditionValues) bool + func DateGreaterThanEqualsFunc(p *RequestParam, value ConditionValues) bool + func DateGreaterThanFunc(p *RequestParam, value ConditionValues) bool + func DateLessThanEqualsFunc(p *RequestParam, value ConditionValues) bool + func DateLessThanFunc(p *RequestParam, value ConditionValues) bool + func DateNotEqualsFunc(p *RequestParam, value ConditionValues) bool + func IpAddressFunc(p *RequestParam, value ConditionValues) bool + func IsIntersectionActions(actions1, actions2 []Action) bool + func MarshalXMLEntity(entity interface{}) ([]byte, error) + func NewChunkedReader(reader io.ReadCloser) io.ReadCloser + func NotIpAddressFunc(p *RequestParam, values ConditionValues) bool + func NumericEqualsFunc(p *RequestParam, value ConditionValues) bool + func NumericGreaterThanEqualsFunc(p *RequestParam, value ConditionValues) bool + func NumericGreaterThanFunc(p *RequestParam, value ConditionValues) bool + func NumericLessThanEqualsFunc(p *RequestParam, value ConditionValues) bool + func NumericLessThanFunc(p *RequestParam, value ConditionValues) bool + func NumericNotEqualsFunc(p *RequestParam, value ConditionValues) bool + func RequestIDFromRequest(r *http.Request) (id string) + func ServeInternalStaticErrorResponse(w http.ResponseWriter, r *http.Request) + func StringEqualsFunc(reqParam *RequestParam, storeCondVals ConditionValues) bool + func StringLikeFunc(reqParam *RequestParam, storeCondVals ConditionValues) bool + func StringNotEqualsFunc(p *RequestParam, values ConditionValues) bool + func StringNotLikeFunc(p *RequestParam, values ConditionValues) bool + func TrimAwsPrefixKey(key string) string + func UnmarshalXMLEntity(bytes []byte, data interface{}) error + type AccessControlList struct + Grants []Grant + type AccessControlPolicy struct + Acl AccessControlList + Owner Owner + Xmlns string + func ParseACL(bytes []byte, bucket string) (*AccessControlPolicy, error) + func (acl *AccessControlPolicy) Marshal() ([]byte, error) + func (acp *AccessControlPolicy) IsAllowed(param *RequestParam) bool + func (acp *AccessControlPolicy) SetBucketGrantACL(param *RequestParam, permission Permission) + func (acp *AccessControlPolicy) SetBucketStandardACL(param *RequestParam, acl string) + func (acp *AccessControlPolicy) Validate(bucket string) (bool, error) + type AclRole = string + type Action string + type Arn struct + type AuthType string + type BucketOwner struct + DisplayName string + ID string + XMLName xml.Name + func NewBucketOwner(accessKey string) *BucketOwner + type CheckFuncs func(p *RequestParam) bool + type CommonPrefix struct + Prefix string + XMLName xml.Name + type CompleteMultipartResult struct + Bucket string + ETag string + Key string + Location string + XMLName xml.Name + type Condition map[ConditionType]ConditionValues + type ConditionFunc func(p *RequestParam, values ConditionValues) bool + type ConditionKey string + type ConditionType string + type ConditionTypeSet map[ConditionType]null + type ConditionValues map[string]StringSet + type Content struct + ETag string + Key string + LastModified string + Owner *BucketOwner + Size int + StorageClass string + type CopyObjectResult struct + ETag string + LastModified string + XMLName xml.Name + type CopyResult struct + ETag string + LastModified string + XMLName xml.Name + type DeleteRequest struct + Objects []Object + XMLName xml.Name + type DeleteResult struct + Deleted []Deleted + Error []Error + XMLName xml.Name + type Deleted struct + DeleteMarker string + DeleteMarkerVersionId string + Key string + VersionId string + XMLName xml.Name + type DeletesResult struct + DeletedErrors []Error + DeletedObjects []Deleted + XMLName xml.Name + type Effect string + const Allow + const Deny + type Error struct + Code string + Key string + Message string + VersionId string + XMLName xml.Name + type ErrorCode struct + ErrorCode string + ErrorMessage string + StatusCode int + func (code ErrorCode) ServeResponse(w http.ResponseWriter, r *http.Request) error + type FSFileInfo struct + ETag string + Inode uint64 + Mode os.FileMode + ModifyTime time.Time + Path string + Size int64 + type FSPart struct + ETag string + LastModified string + PartNumber int + Size int + type FSUpload struct + Initiated string + Key string + StorageClass string + UploadId string + type GetBucketLocationOutput struct + LocationConstraint string + XMLName xml.Name + type Grant struct + Grantee Grantee + Permission Permission + func (g *Grant) IsAllowed(param *RequestParam) bool + func (g Grant) Validate() bool + type Grantee struct + DisplayName string + EmailAddress string + Id string + Type string + URI string + Xmlns string + Xmlsi string + type InitMultipartResult struct + Bucket string + Key string + UploadId string + XMLName xml.Name + type ListBucketRequestV1 struct + type ListBucketRequestV2 struct + type ListBucketResult struct + Bucket string + CommonPrefixes []*CommonPrefix + Contents []*Content + Delimiter string + IsTruncated bool + Marker string + MaxKeys int + NextMarker string + Prefix string + XMLName xml.Name + type ListBucketResultV2 struct + CommonPrefixes []*CommonPrefix + Contents []*Content + Delimiter string + IsTruncated bool + KeyCount uint64 + MaxKeys uint64 + Name string + NextToken string + Prefix string + Token string + XMLName xml.Name + type ListPartsResult struct + Bucket string + IsTruncated bool + Key string + MaxParts int + NextMarker int + Owner *BucketOwner + PartNumberMarker int + Parts []*Part + StorageClass string + UploadId string + XMLName xml.Name + type ListUploadsResult struct + Bucket string + CommonPrefixes []*CommonPrefix + Delimiter string + IsTruncated bool + KeyMarker string + MaxUploads int + NextKeyMarker string + NextUploadIdMarker string + Prefix string + UploadIdMarker string + Uploads []*Upload + XMLName xml.Name + type ListXAttrsResult struct + XAttrs []*XAttr + XMLName xml.Name + type MetaStore interface + type OSSMeta struct + type OSSOperation string + type Object struct + Key string + VersionId string + type ObjectNode struct + func NewServer() *ObjectNode + func (o *ObjectNode) Shutdown() + func (o *ObjectNode) Start(cfg *config.Config) (err error) + func (o *ObjectNode) Sync() + type Owner struct + DispalyName string + Id string + type Part struct + ETag string + LastModified string + PartNumber int + Size int + XMLName xml.Name + func NewParts(fsParts []*FSPart) []*Part + type Permission string + type Policy struct + Id string + Statements []Statement + Version string + func ParsePolicy(r io.Reader, bucket string) (*Policy, error) + func (p *Policy) IsAllowed(params *RequestParam) bool + func (p Policy) Validate(bucket string) (bool, error) + type PrefixMap map[string]struct + func (m PrefixMap) AddPrefix(prefix string) + func (m PrefixMap) Prefixes() Prefixes + type Prefixes []string + type Principal map[string]StringSet + type PutXAttrRequest struct + XAttr *XAttr + XMLName xml.Name + type RequestAuthInfo struct + type RequestParam struct + type Resource string + type ResourceType string + type StandardACL string + type Statement struct + Actions StringSet + Condition Condition + Effect Effect + NotActions StringSet + NotResources StringSet + Principal Principal + Resources StringSet + Sid string + func (s *Statement) Validate(bucket string) (bool, error) + func (s Statement) IsAllowed(p *RequestParam) bool + type Store interface + Delete func(ns, obj, key string) error + Get func(ns, obj, key string) (data []byte, err error) + Init func(vm *volumeManager) + List func(ns, obj string) (data [][]byte, err error) + Put func(ns, obj, key string, data []byte) error + type StringSet struct + func (ss *StringSet) Contains(val string) bool + func (ss *StringSet) ContainsRegex(val string) bool + func (ss *StringSet) ContainsWild(val string) bool + func (ss *StringSet) ContainsWithAny(val string) bool + func (ss *StringSet) Empty() bool + func (ss *StringSet) Intersection(set *StringSet) bool + func (ss *StringSet) UnmarshalJSON(b []byte) error + func (ss StringSet) MarshalJSON() ([]byte, error) + func (ss StringSet) String() string + type Tag struct + Key string + Value string + type Tagging struct + TagSet []*Tag + XMLName xml.Name + type Upload struct + Initiated string + Key string + Owner *BucketOwner + StorageClass string + UploadId string + XMLName xml.Name + func NewUploads(fsUploads []*FSUpload, accessKey string) []*Upload + type Volume interface + AbortMultipart func(path, multipartID string) error + Close func() error + CompleteMultipart func(path, multipartID string) (*FSFileInfo, error) + CopyFile func(path, sourcePath string) (*FSFileInfo, error) + DeleteFile func(path string) error + DeleteXAttr func(path string, key string) error + FileInfo func(path string) (*FSFileInfo, error) + GetXAttr func(path string, key string) (*proto.XAttrInfo, error) + InitMultipart func(path string) (multipartID string, err error) + ListFilesV1 func(request *ListBucketRequestV1) ([]*FSFileInfo, string, bool, []string, error) + ListFilesV2 func(request *ListBucketRequestV2) ([]*FSFileInfo, uint64, string, bool, []string, error) + ListMultipartUploads func(prefix, delimiter, keyMarker, uploadIdMarker string, maxUploads uint64) ([]*FSUpload, string, string, bool, []string, error) + ListParts func(path, multipartID string, maxParts, partNumberMarker uint64) ([]*FSPart, uint64, bool, error) + OSSMeta func() *OSSMeta + OSSSecure func() (accessKey, secretKey string) + ReadFile func(path string, writer io.Writer, offset, size uint64) error + SetXAttr func(path string, key string, data []byte) error + WriteFile func(path string, reader io.Reader) (*FSFileInfo, error) + WritePart func(path, multipartID string, partId uint16, reader io.Reader) (*FSFileInfo, error) + type VolumeManager interface + Close func() + GetStore func() (Store, error) + InitStore func(s Store) + Release func(volName string) + Volume func(volName string) (Volume, error) + func NewVolumeManager(masters []string) VolumeManager + type XAttr struct + Key string + Value string Incompatible versions in this module v2.3.0-rc.2+incompatible Feb 9, 2021 v2.3.0-rc.1+incompatible Jan 28, 2021 v2.2.2+incompatible Sep 23, 2020 v2.2.1+incompatible Sep 7, 2020 v2.2.0+incompatible Sep 4, 2020 v2.1.0+incompatible Jul 10, 2020 v2.1.0-rc.1+incompatible Jun 13, 2020 v2.0.0+incompatible Apr 10, 2020 v2.0.0-rc.1+incompatible Apr 9, 2020