uplink-c  v1.8.0
Functions
uplink.h File Reference
#include <stddef.h>
#include "uplink_definitions.h"

Go to the source code of this file.

Functions

UplinkAccessResult uplink_parse_access (uplink_const_char *accessString)
 
UplinkAccessResult uplink_request_access_with_passphrase (uplink_const_char *satellite_address, uplink_const_char *api_key, uplink_const_char *passphrase)
 
UplinkStringResult uplink_access_satellite_address (UplinkAccess *access)
 
UplinkStringResult uplink_access_serialize (UplinkAccess *access)
 
UplinkAccessResult uplink_access_share (UplinkAccess *access, UplinkPermission permission, UplinkSharePrefix *prefixes, GoInt prefixes_count)
 
UplinkErroruplink_access_override_encryption_key (UplinkAccess *access, uplink_const_char *bucket, uplink_const_char *prefix, UplinkEncryptionKey *encryptionKey)
 
void uplink_free_string_result (UplinkStringResult result)
 
void uplink_free_access_result (UplinkAccessResult result)
 
UplinkBucketResult uplink_stat_bucket (UplinkProject *project, uplink_const_char *bucket_name)
 
UplinkBucketResult uplink_create_bucket (UplinkProject *project, uplink_const_char *bucket_name)
 
UplinkBucketResult uplink_ensure_bucket (UplinkProject *project, uplink_const_char *bucket_name)
 
UplinkBucketResult uplink_delete_bucket (UplinkProject *project, uplink_const_char *bucket_name)
 
UplinkBucketResult uplink_delete_bucket_with_objects (UplinkProject *project, uplink_const_char *bucket_name)
 
void uplink_free_bucket_result (UplinkBucketResult result)
 
void uplink_free_bucket (UplinkBucket *bucket)
 
UplinkBucketIteratoruplink_list_buckets (UplinkProject *project, UplinkListBucketsOptions *options)
 
_Bool uplink_bucket_iterator_next (UplinkBucketIterator *iterator)
 
UplinkErroruplink_bucket_iterator_err (UplinkBucketIterator *iterator)
 
UplinkBucketuplink_bucket_iterator_item (UplinkBucketIterator *iterator)
 
void uplink_free_bucket_iterator (UplinkBucketIterator *iterator)
 
UplinkAccessResult uplink_config_request_access_with_passphrase (UplinkConfig config, uplink_const_char *satellite_address, uplink_const_char *api_key, uplink_const_char *passphrase)
 
UplinkProjectResult uplink_config_open_project (UplinkConfig config, UplinkAccess *access)
 
UplinkObjectResult uplink_copy_object (UplinkProject *project, uplink_const_char *old_bucket_name, uplink_const_char *old_object_key, uplink_const_char *new_bucket_name, uplink_const_char *new_object_key, UplinkCopyObjectOptions *options)
 
UplinkDownloadResult uplink_download_object (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, UplinkDownloadOptions *options)
 
UplinkReadResult uplink_download_read (UplinkDownload *download, void *bytes, size_t length)
 
UplinkObjectResult uplink_download_info (UplinkDownload *download)
 
void uplink_free_read_result (UplinkReadResult result)
 
UplinkErroruplink_close_download (UplinkDownload *download)
 
void uplink_free_download_result (UplinkDownloadResult result)
 
EdgeCredentialsResult edge_register_access (EdgeConfig config, UplinkAccess *access, EdgeRegisterAccessOptions *options)
 
void edge_free_credentials_result (EdgeCredentialsResult result)
 
void edge_free_credentials (EdgeCredentials *credentials)
 
UplinkStringResult edge_join_share_url (uplink_const_char *baseURL, uplink_const_char *accessKeyID, uplink_const_char *bucket, uplink_const_char *key, EdgeShareURLOptions *options)
 
UplinkEncryptionKeyResult uplink_derive_encryption_key (uplink_const_char *passphrase, void *salt, size_t length)
 
void uplink_free_encryption_key_result (UplinkEncryptionKeyResult result)
 
void uplink_free_error (UplinkError *err)
 
GoUint8 uplink_internal_UniverseIsEmpty ()
 
UplinkErroruplink_move_object (UplinkProject *project, uplink_const_char *old_bucket_name, uplink_const_char *old_object_key, uplink_const_char *new_bucket_name, uplink_const_char *new_object_key, UplinkMoveObjectOptions *options)
 
UplinkUploadInfoResult uplink_begin_upload (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, UplinkUploadOptions *options)
 
void uplink_free_upload_info_result (UplinkUploadInfoResult result)
 
void uplink_free_upload_info (UplinkUploadInfo *info)
 
UplinkCommitUploadResult uplink_commit_upload (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, uplink_const_char *upload_id, UplinkCommitUploadOptions *options)
 
void uplink_free_commit_upload_result (UplinkCommitUploadResult result)
 
UplinkErroruplink_abort_upload (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, uplink_const_char *upload_id)
 
UplinkPartUploadResult uplink_upload_part (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, uplink_const_char *upload_id, uint32_t part_number)
 
UplinkWriteResult uplink_part_upload_write (UplinkPartUpload *upload, void *bytes, size_t length)
 
UplinkErroruplink_part_upload_commit (UplinkPartUpload *upload)
 
UplinkErroruplink_part_upload_abort (UplinkPartUpload *upload)
 
UplinkErroruplink_part_upload_set_etag (UplinkPartUpload *upload, uplink_const_char *etag)
 
UplinkPartResult uplink_part_upload_info (UplinkPartUpload *upload)
 
void uplink_free_part_result (UplinkPartResult result)
 
void uplink_free_part_upload_result (UplinkPartUploadResult result)
 
void uplink_free_part (UplinkPart *part)
 
UplinkUploadIteratoruplink_list_uploads (UplinkProject *project, uplink_const_char *bucket_name, UplinkListUploadsOptions *options)
 
_Bool uplink_upload_iterator_next (UplinkUploadIterator *iterator)
 
UplinkErroruplink_upload_iterator_err (UplinkUploadIterator *iterator)
 
UplinkUploadInfouplink_upload_iterator_item (UplinkUploadIterator *iterator)
 
void uplink_free_upload_iterator (UplinkUploadIterator *iterator)
 
UplinkPartIteratoruplink_list_upload_parts (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, uplink_const_char *upload_id, UplinkListUploadPartsOptions *options)
 
_Bool uplink_part_iterator_next (UplinkPartIterator *iterator)
 
UplinkErroruplink_part_iterator_err (UplinkPartIterator *iterator)
 
UplinkPartuplink_part_iterator_item (UplinkPartIterator *iterator)
 
void uplink_free_part_iterator (UplinkPartIterator *iterator)
 
UplinkObjectResult uplink_stat_object (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key)
 
UplinkObjectResult uplink_delete_object (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key)
 
void uplink_free_object_result (UplinkObjectResult obj)
 
void uplink_free_object (UplinkObject *obj)
 
UplinkErroruplink_update_object_metadata (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, UplinkCustomMetadata new_metadata, UplinkUploadObjectMetadataOptions *options)
 
UplinkObjectIteratoruplink_list_objects (UplinkProject *project, uplink_const_char *bucket_name, UplinkListObjectsOptions *options)
 
_Bool uplink_object_iterator_next (UplinkObjectIterator *iterator)
 
UplinkErroruplink_object_iterator_err (UplinkObjectIterator *iterator)
 
UplinkObjectuplink_object_iterator_item (UplinkObjectIterator *iterator)
 
void uplink_free_object_iterator (UplinkObjectIterator *iterator)
 
UplinkProjectResult uplink_open_project (UplinkAccess *access)
 
UplinkErroruplink_close_project (UplinkProject *project)
 
UplinkErroruplink_revoke_access (UplinkProject *project, UplinkAccess *access)
 
void uplink_free_project_result (UplinkProjectResult result)
 
UplinkUploadResult uplink_upload_object (UplinkProject *project, uplink_const_char *bucket_name, uplink_const_char *object_key, UplinkUploadOptions *options)
 
UplinkWriteResult uplink_upload_write (UplinkUpload *upload, void *bytes, size_t length)
 
UplinkErroruplink_upload_commit (UplinkUpload *upload)
 
UplinkErroruplink_upload_abort (UplinkUpload *upload)
 
UplinkObjectResult uplink_upload_info (UplinkUpload *upload)
 
UplinkErroruplink_upload_set_custom_metadata (UplinkUpload *upload, UplinkCustomMetadata custom)
 
void uplink_free_write_result (UplinkWriteResult result)
 
void uplink_free_upload_result (UplinkUploadResult result)
 

Function Documentation

◆ edge_free_credentials()

void edge_free_credentials ( EdgeCredentials credentials)

◆ edge_free_credentials_result()

void edge_free_credentials_result ( EdgeCredentialsResult  result)

◆ edge_join_share_url()

UplinkStringResult edge_join_share_url ( uplink_const_char baseURL,
uplink_const_char accessKeyID,
uplink_const_char bucket,
uplink_const_char key,
EdgeShareURLOptions options 
)

edge_join_share_url concats a linkshare URL Example result: https:///link.us1.storjshare.io/s/l5pucy3dmvzxgs3fpfewix27l5pq/mybucket/myprefix/myobject The existence or accessibility of the object is not checked, the object might not exist or be inaccessible.

baseURL: linkshare service, e.g. https:///link.us1.storjshare.io accessKeyId: as returned from RegisterAccess. Must be associated with public visibility. bucket: optional bucket, if empty shares the entire project. key: optional object key or prefix, if empty shares the entire bucket. A prefix must end with "/".

◆ edge_register_access()

EdgeCredentialsResult edge_register_access ( EdgeConfig  config,
UplinkAccess access,
EdgeRegisterAccessOptions options 
)

edge_register_access gets credentials for the Storj-hosted Gateway-mt and linkshare service. All files uploaded under the Access are then accessible via those services.

◆ uplink_abort_upload()

UplinkError* uplink_abort_upload ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
uplink_const_char upload_id 
)

uplink_abort_upload aborts a multipart upload started with uplink_begin_upload.

◆ uplink_access_override_encryption_key()

UplinkError* uplink_access_override_encryption_key ( UplinkAccess access,
uplink_const_char bucket,
uplink_const_char prefix,
UplinkEncryptionKey encryptionKey 
)

uplink_access_override_encryption_key overrides the root encryption key for the prefix in bucket with encryptionKey.

This function is useful for overriding the encryption key in user-specific access grants when implementing multitenancy in a single app bucket.

◆ uplink_access_satellite_address()

UplinkStringResult uplink_access_satellite_address ( UplinkAccess access)

uplink_access_satellite_address returns the satellite node URL for this access grant.

◆ uplink_access_serialize()

UplinkStringResult uplink_access_serialize ( UplinkAccess access)

uplink_access_serialize serializes access grant into a string.

◆ uplink_access_share()

UplinkAccessResult uplink_access_share ( UplinkAccess access,
UplinkPermission  permission,
UplinkSharePrefix prefixes,
GoInt  prefixes_count 
)

uplink_access_share creates new access grant with specific permission. Permission will be applied to prefixes when defined.

◆ uplink_begin_upload()

UplinkUploadInfoResult uplink_begin_upload ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
UplinkUploadOptions options 
)

uplink_begin_upload begins a new multipart upload to bucket and key.

◆ uplink_bucket_iterator_err()

UplinkError* uplink_bucket_iterator_err ( UplinkBucketIterator iterator)

uplink_bucket_iterator_err returns error, if one happened during iteration.

◆ uplink_bucket_iterator_item()

UplinkBucket* uplink_bucket_iterator_item ( UplinkBucketIterator iterator)

uplink_bucket_iterator_item returns the current bucket in the iterator.

◆ uplink_bucket_iterator_next()

_Bool uplink_bucket_iterator_next ( UplinkBucketIterator iterator)

uplink_bucket_iterator_next prepares next Bucket for reading.

It returns false if the end of the iteration is reached and there are no more buckets, or if there is an error.

◆ uplink_close_download()

UplinkError* uplink_close_download ( UplinkDownload download)

uplink_close_download closes the download.

◆ uplink_close_project()

UplinkError* uplink_close_project ( UplinkProject project)

uplink_close_project closes the project.

◆ uplink_commit_upload()

UplinkCommitUploadResult uplink_commit_upload ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
uplink_const_char upload_id,
UplinkCommitUploadOptions options 
)

uplink_commit_upload commits a multipart upload to bucket and key started with uplink_begin_upload.

◆ uplink_config_open_project()

UplinkProjectResult uplink_config_open_project ( UplinkConfig  config,
UplinkAccess access 
)

uplink_config_open_project opens project using access grant.

◆ uplink_config_request_access_with_passphrase()

UplinkAccessResult uplink_config_request_access_with_passphrase ( UplinkConfig  config,
uplink_const_char satellite_address,
uplink_const_char api_key,
uplink_const_char passphrase 
)

uplink_config_request_access_with_passphrase requests satellite for a new access grant using a passhprase.

◆ uplink_copy_object()

UplinkObjectResult uplink_copy_object ( UplinkProject project,
uplink_const_char old_bucket_name,
uplink_const_char old_object_key,
uplink_const_char new_bucket_name,
uplink_const_char new_object_key,
UplinkCopyObjectOptions options 
)

uplink_copy_object copies object to a same/different bucket and key.

◆ uplink_create_bucket()

UplinkBucketResult uplink_create_bucket ( UplinkProject project,
uplink_const_char bucket_name 
)

uplink_create_bucket creates a new bucket.

When bucket already exists it returns a valid Bucket and ErrBucketExists.

◆ uplink_delete_bucket()

UplinkBucketResult uplink_delete_bucket ( UplinkProject project,
uplink_const_char bucket_name 
)

uplink_delete_bucket deletes a bucket.

When bucket is not empty it returns ErrBucketNotEmpty.

◆ uplink_delete_bucket_with_objects()

UplinkBucketResult uplink_delete_bucket_with_objects ( UplinkProject project,
uplink_const_char bucket_name 
)

uplink_delete_bucket_with_objects deletes a bucket and all objects within that bucket.

When there are concurrent writes to the bucket it returns ErrBucketNotEmpty.

◆ uplink_delete_object()

UplinkObjectResult uplink_delete_object ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key 
)

uplink_delete_object deletes an object.

◆ uplink_derive_encryption_key()

UplinkEncryptionKeyResult uplink_derive_encryption_key ( uplink_const_char passphrase,
void *  salt,
size_t  length 
)

uplink_derive_encryption_key derives a salted encryption key for passphrase using the salt.

This function is useful for deriving a salted encryption key for users when implementing multitenancy in a single app bucket.

◆ uplink_download_info()

UplinkObjectResult uplink_download_info ( UplinkDownload download)

uplink_download_info returns information about the downloaded object.

◆ uplink_download_object()

UplinkDownloadResult uplink_download_object ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
UplinkDownloadOptions options 
)

uplink_download_object starts download to the specified key.

◆ uplink_download_read()

UplinkReadResult uplink_download_read ( UplinkDownload download,
void *  bytes,
size_t  length 
)

uplink_download_read downloads from object's data stream into bytes up to length amount. It returns the number of bytes read (0 <= bytes_read <= length) and any error encountered that caused the read to stop early.

◆ uplink_ensure_bucket()

UplinkBucketResult uplink_ensure_bucket ( UplinkProject project,
uplink_const_char bucket_name 
)

uplink_ensure_bucket creates a new bucket and ignores the error when it already exists.

When bucket already exists it returns a valid Bucket and ErrBucketExists.

◆ uplink_free_access_result()

void uplink_free_access_result ( UplinkAccessResult  result)

uplink_free_access_result frees the resources associated with access grant.

◆ uplink_free_bucket()

void uplink_free_bucket ( UplinkBucket bucket)

uplink_free_bucket frees memory associated with the bucket.

◆ uplink_free_bucket_iterator()

void uplink_free_bucket_iterator ( UplinkBucketIterator iterator)

uplink_free_bucket_iterator frees memory associated with the BucketIterator.

◆ uplink_free_bucket_result()

void uplink_free_bucket_result ( UplinkBucketResult  result)

uplink_free_bucket_result frees memory associated with the BucketResult.

◆ uplink_free_commit_upload_result()

void uplink_free_commit_upload_result ( UplinkCommitUploadResult  result)

uplink_free_commit_upload_result frees any resources associated with commit upload result.

◆ uplink_free_download_result()

void uplink_free_download_result ( UplinkDownloadResult  result)

uplink_free_download_result frees any associated resources.

◆ uplink_free_encryption_key_result()

void uplink_free_encryption_key_result ( UplinkEncryptionKeyResult  result)

uplink_free_encryption_key_result frees the resources associated with encryption key.

◆ uplink_free_error()

void uplink_free_error ( UplinkError err)

uplink_free_error frees error data.

◆ uplink_free_object()

void uplink_free_object ( UplinkObject obj)

uplink_free_object frees memory associated with the Object.

◆ uplink_free_object_iterator()

void uplink_free_object_iterator ( UplinkObjectIterator iterator)

uplink_free_object_iterator frees memory associated with the ObjectIterator.

◆ uplink_free_object_result()

void uplink_free_object_result ( UplinkObjectResult  obj)

uplink_free_object_result frees memory associated with the ObjectResult.

◆ uplink_free_part()

void uplink_free_part ( UplinkPart part)

uplink_free_part frees memory associated with the Part.

◆ uplink_free_part_iterator()

void uplink_free_part_iterator ( UplinkPartIterator iterator)

uplink_free_part_iterator frees memory associated with the UplinkPartIterator.

◆ uplink_free_part_result()

void uplink_free_part_result ( UplinkPartResult  result)

uplink_free_part_result frees memory associated with the part result.

◆ uplink_free_part_upload_result()

void uplink_free_part_upload_result ( UplinkPartUploadResult  result)

uplink_free_part_upload_result frees memory associated with the part upload result.

◆ uplink_free_project_result()

void uplink_free_project_result ( UplinkProjectResult  result)

uplink_free_project_result frees any associated resources.

◆ uplink_free_read_result()

void uplink_free_read_result ( UplinkReadResult  result)

uplink_free_read_result frees any resources associated with read result.

◆ uplink_free_string_result()

void uplink_free_string_result ( UplinkStringResult  result)

uplink_free_string_result frees the resources associated with string result.

◆ uplink_free_upload_info()

void uplink_free_upload_info ( UplinkUploadInfo info)

uplink_free_upload_info frees memory associated with upload info.

◆ uplink_free_upload_info_result()

void uplink_free_upload_info_result ( UplinkUploadInfoResult  result)

uplink_free_upload_info_result frees any resources associated with upload info result.

◆ uplink_free_upload_iterator()

void uplink_free_upload_iterator ( UplinkUploadIterator iterator)

uplink_free_upload_iterator frees memory associated with the UploadIterator.

◆ uplink_free_upload_result()

void uplink_free_upload_result ( UplinkUploadResult  result)

uplink_free_upload_result closes the upload and frees any associated resources.

◆ uplink_free_write_result()

void uplink_free_write_result ( UplinkWriteResult  result)

uplink_free_write_result frees any resources associated with write result.

◆ uplink_internal_UniverseIsEmpty()

GoUint8 uplink_internal_UniverseIsEmpty ( )

uplink_internal_UniverseIsEmpty returns true if nothing is stored in the global map.

◆ uplink_list_buckets()

UplinkBucketIterator* uplink_list_buckets ( UplinkProject project,
UplinkListBucketsOptions options 
)

uplink_list_buckets lists buckets.

◆ uplink_list_objects()

UplinkObjectIterator* uplink_list_objects ( UplinkProject project,
uplink_const_char bucket_name,
UplinkListObjectsOptions options 
)

uplink_list_objects lists objects.

◆ uplink_list_upload_parts()

UplinkPartIterator* uplink_list_upload_parts ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
uplink_const_char upload_id,
UplinkListUploadPartsOptions options 
)

uplink_list_upload_parts lists uploaded parts.

◆ uplink_list_uploads()

UplinkUploadIterator* uplink_list_uploads ( UplinkProject project,
uplink_const_char bucket_name,
UplinkListUploadsOptions options 
)

uplink_list_uploads lists uploads.

◆ uplink_move_object()

UplinkError* uplink_move_object ( UplinkProject project,
uplink_const_char old_bucket_name,
uplink_const_char old_object_key,
uplink_const_char new_bucket_name,
uplink_const_char new_object_key,
UplinkMoveObjectOptions options 
)

uplink_move_object moves object to a different bucket or/and key.

◆ uplink_object_iterator_err()

UplinkError* uplink_object_iterator_err ( UplinkObjectIterator iterator)

uplink_object_iterator_err returns error, if one happened during iteration.

◆ uplink_object_iterator_item()

UplinkObject* uplink_object_iterator_item ( UplinkObjectIterator iterator)

uplink_object_iterator_item returns the current object in the iterator.

◆ uplink_object_iterator_next()

_Bool uplink_object_iterator_next ( UplinkObjectIterator iterator)

uplink_object_iterator_next prepares next Object for reading.

It returns false if the end of the iteration is reached and there are no more objects, or if there is an error.

◆ uplink_open_project()

UplinkProjectResult uplink_open_project ( UplinkAccess access)

uplink_open_project opens project using access grant.

◆ uplink_parse_access()

UplinkAccessResult uplink_parse_access ( uplink_const_char accessString)

uplink_parse_access parses serialized access grant string.

◆ uplink_part_iterator_err()

UplinkError* uplink_part_iterator_err ( UplinkPartIterator iterator)

uplink_part_iterator_err returns error, if one happened during iteration.

◆ uplink_part_iterator_item()

UplinkPart* uplink_part_iterator_item ( UplinkPartIterator iterator)

uplink_part_iterator_item returns the current entry in the iterator.

◆ uplink_part_iterator_next()

_Bool uplink_part_iterator_next ( UplinkPartIterator iterator)

uplink_part_iterator_next prepares next entry for reading.

It returns false if the end of the iteration is reached and there are no more parts, or if there is an error.

◆ uplink_part_upload_abort()

UplinkError* uplink_part_upload_abort ( UplinkPartUpload upload)

uplink_part_upload_abort aborts a part upload.

◆ uplink_part_upload_commit()

UplinkError* uplink_part_upload_commit ( UplinkPartUpload upload)

uplink_part_upload_commit commits the uploaded part data.

◆ uplink_part_upload_info()

UplinkPartResult uplink_part_upload_info ( UplinkPartUpload upload)

uplink_part_upload_info returns the last information about the uploaded part.

◆ uplink_part_upload_set_etag()

UplinkError* uplink_part_upload_set_etag ( UplinkPartUpload upload,
uplink_const_char etag 
)

uplink_part_upload_set_etag sets part ETag.

◆ uplink_part_upload_write()

UplinkWriteResult uplink_part_upload_write ( UplinkPartUpload upload,
void *  bytes,
size_t  length 
)

uplink_part_upload_write uploads len(p) bytes from p to the object's data stream. It returns the number of bytes written from p (0 <= n <= len(p)) and any error encountered that caused the write to stop early.

◆ uplink_request_access_with_passphrase()

UplinkAccessResult uplink_request_access_with_passphrase ( uplink_const_char satellite_address,
uplink_const_char api_key,
uplink_const_char passphrase 
)

uplink_request_access_with_passphrase requests satellite for a new access grant using a passhprase.

◆ uplink_revoke_access()

UplinkError* uplink_revoke_access ( UplinkProject project,
UplinkAccess access 
)

uplink_revoke_access revokes the API key embedded in the provided access grant.

◆ uplink_stat_bucket()

UplinkBucketResult uplink_stat_bucket ( UplinkProject project,
uplink_const_char bucket_name 
)

uplink_stat_bucket returns information about a bucket.

◆ uplink_stat_object()

UplinkObjectResult uplink_stat_object ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key 
)

uplink_stat_object returns information about an object at the specific key.

◆ uplink_update_object_metadata()

UplinkError* uplink_update_object_metadata ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
UplinkCustomMetadata  new_metadata,
UplinkUploadObjectMetadataOptions options 
)

uplink_update_object_metadata replaces the custom metadata for the object at the specific key with new_metadata. Any existing custom metadata will be deleted.

◆ uplink_upload_abort()

UplinkError* uplink_upload_abort ( UplinkUpload upload)

uplink_upload_abort aborts an upload.

◆ uplink_upload_commit()

UplinkError* uplink_upload_commit ( UplinkUpload upload)

uplink_upload_commit commits the uploaded data.

◆ uplink_upload_info()

UplinkObjectResult uplink_upload_info ( UplinkUpload upload)

uplink_upload_info returns the last information about the uploaded object.

◆ uplink_upload_iterator_err()

UplinkError* uplink_upload_iterator_err ( UplinkUploadIterator iterator)

uplink_upload_iterator_err returns error, if one happened during iteration.

◆ uplink_upload_iterator_item()

UplinkUploadInfo* uplink_upload_iterator_item ( UplinkUploadIterator iterator)

uplink_upload_iterator_item returns the current entry in the iterator.

◆ uplink_upload_iterator_next()

_Bool uplink_upload_iterator_next ( UplinkUploadIterator iterator)

uplink_upload_iterator_next prepares next entry for reading.

It returns false if the end of the iteration is reached and there are no more uploads, or if there is an error.

◆ uplink_upload_object()

UplinkUploadResult uplink_upload_object ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
UplinkUploadOptions options 
)

uplink_upload_object starts an upload to the specified key.

◆ uplink_upload_part()

UplinkPartUploadResult uplink_upload_part ( UplinkProject project,
uplink_const_char bucket_name,
uplink_const_char object_key,
uplink_const_char upload_id,
uint32_t  part_number 
)

uplink_upload_part starts an part upload to the specified key nad part number.

◆ uplink_upload_set_custom_metadata()

UplinkError* uplink_upload_set_custom_metadata ( UplinkUpload upload,
UplinkCustomMetadata  custom 
)

uplink_upload_set_custom_metadata returns the last information about the uploaded object.

◆ uplink_upload_write()

UplinkWriteResult uplink_upload_write ( UplinkUpload upload,
void *  bytes,
size_t  length 
)

uplink_upload_write uploads len(p) bytes from p to the object's data stream. It returns the number of bytes written from p (0 <= n <= len(p)) and any error encountered that caused the write to stop early.