Jeff Wendling
a35eb8027e
lib/uplinkc: do some checks around conversions and allocations
...
ensure that every integer conversion fits into the destination
type, and for any unchecked ones, annotate why they are safe.
additionally, any integers we pass into slice headers need to
check that they are not negative.
all of our allocations should check for allocation failure and
return an error if there was a problem. even though an allocation
just failed, we don't pre-allocate the failure because we don't
want the callers to free it like they have to with the other
errors we return. maybe we should just panic.
Change-Id: Id4dfad802d312d35e565041efc9872453c90d793
2020-01-01 17:36:34 +00:00
Egon Elbre
6615ecc9b6
common: separate repository
...
Change-Id: Ibb89c42060450e3839481a7e495bbe3ad940610a
2019-12-27 14:11:15 +02:00
Egon Elbre
fdd86d17ac
lib/uplinkc: use SliceHeader instead of [1<<30]
...
Conversions such as will be invalid with Go 1.14
(*[1<<30]byte)(unsafe.Pointer(data))
The recommended way is to use:
*(*[]byte)(unsafe.Pointer(
&reflect.SliceHeader{
Data: uintptr(unsafe.Pointer(data)),
Len: int(length),
Cap: int(length),
},
))
Also fixed a memory leak.
Change-Id: I1768b7b85505e6b57b49deb62a510474f1bf84c1
2019-12-13 16:49:41 +00:00
Egon Elbre
d5667fbe35
lib/uplinkc: ensure it compiles on 32bit arch ( #2835 )
2019-08-26 16:12:26 +03:00
Bryan White
6b40866ed8
Re-implement libstorj API (V2) using libuplink (V3) ( #2573 )
2019-07-30 13:40:05 +02:00
Jess G
f11bf46a11
Jg/1967 mv bucket metadata uplink ( #2505 )
...
* add bucketstore, add init uplink bucket
* update uplink to use bucket rpc
* fix tests
* wrap metainfo client errors
* add allowedBucket struct, fix tests
* update comment
* add paging
* updates per CR
* add test for pagination
* fix lint
* fix uplink test so its easier tyo understand
* fix gateway pagination bug
* changes per cr
* fix bug w/allowedBuckets, add test to catch
2019-07-12 08:57:02 -04:00
Jeff Wendling
1a65e42d33
rename EncryptionCtx back to EncryptionAccess ( #2368 )
...
* rename EncryptionCtx back to EncryptionAccess
Change-Id: I5e58915a59979ad6f2e83d36e191b2bbf3ba2ba2
* missed some stuff
Change-Id: Ib65fb186d7f854c0406e5fd7d11498e8941da59e
* oops protolock
Change-Id: I85a5ab4bafb9dd6a804d3dcd17a70811702f07e4
* retrigger
Change-Id: I2d0e3f02b4dbae0299b090e9617662b4437980b0
2019-06-27 23:18:24 -06:00
Jeff Wendling
efcdaa43a3
lib/uplink: encryption context ( #2349 )
...
* lib/uplink: encryption context
Change-Id: I5c23dca3286a46b713b30c4997e9ae6e630b2280
* lib/uplink: bucket operation examples
Change-Id: Ia0f6e69f365dcff0cf11c731f51b30842bce053b
* lib/uplink: encryption key sharing test cases
Change-Id: I3a172d565f33f4e591402cdcb9460664a7cc7fbe
* fix encrypted path prefix restriction issue
Change-Id: I8f3921f9d52aaf4b84039de608b8cbbc88769554
* implement panics in libuplink encryption code
todo on cipher suite selection as well as an api concern
Change-Id: Ifa39eb3cc4b3443f7d96f9304df9b2ac4ec4085d
* implement GetProjectInfo api call to get salt
Change-Id: Ic5f6b3be9ea35df48c1aa214ab5d355fb328e2cf
* some fixes and accessors for encryption store
Change-Id: I3bb61f6712a037900e2a96e72ad4029ec1d3f718
* general fixes to builds/tests/etc
Change-Id: I9930fa96acb3b221d9a001f8e274af5729cc8a47
* java bindings changes
Change-Id: Ia2bd4c9c69739c8d3154d79616cff1f36fb403b6
* get libuplink examples passing
Change-Id: I828f09a144160e0a5dd932324f78491ae2ec8a07
* fix proto.lock file
Change-Id: I2fbbf4d0976a7d0473c2645e6dcb21aaa3be7651
* fix proto.lock again
Change-Id: I92702cf49e1a340eef6379c2be4f7c4a268112a9
* fix golint issues
Change-Id: I631ff9f43307a58e3b25a58cbb4a4cc2495f5eb6
* more linting fixes
Change-Id: I51f8f30b367b5bca14c94b15417b9a4c9e7aa0ce
* bug fixed by structs bump
Change-Id: Ibb03c691fce7606c35c08721b3ef0781ab48a38a
* retrigger
Change-Id: Ieee0470b6a2d07168a1578552e8e7f271ae93a13
* retrigger
Change-Id: I753d63853171e6a436c104ce176048892eb974c5
* semantic merge conflict
Change-Id: I9419448496de90340569047a6a16a1b858a7978a
* update total to match prod defaults
Change-Id: I693d55c1ebb28b5803ee1d26e9e198decf82308b
* retrigger
Change-Id: I28b74d5d6202f61aa3866fe407d423f6a0a14b9e
* retrigger
Change-Id: I6fd054885c715f602e2cef623fd464c42e88742c
* retrigger
Change-Id: I6a01bae88c72406d4ed5a8f13bf8a2b3c650bd2d
2019-06-27 17:36:51 +00:00
Bryan White
5f47b7028d
Uplink C bindings part 3 ( #2258 )
...
* add object upload and download
2019-06-21 08:24:06 -04:00
Bryan White
76061c50c5
Uplink C bindings part 2 ( #2209 )
2019-06-15 13:23:12 +02:00