Jeff Wendling
e22c0bff94
lib/uplinkc: fix flaky download test ( #2791 )
...
The download driver code loops through the downloaded_data buffer
but doesn't ensure that it always passes a valid pointer to the
Go side. In particular, if the malloc'd memory ends against an
unmapped page, and the test passes a pointer one past the end
of the memory region, and since the Go side always dereferences
the pointer when creating a slice, it will attempt to read
unmapped memory, causing a segfault.
This bug doesn't always present. Indeed, it depends on the details
of your system's memory allocator. I validated that this could be
a cause of observed crashes on OS X by using mmap and mprotect
to do the allocations ensuring that the page directly after the
memory we use was unmapped/protected. The crash happened exactly
as seen, and was fixed by changing this condition in the while
loop.
Change-Id: I685dac07ff9b904097375dbf850f387450858753
2019-08-15 11:32:29 +03:00
Bryan White
8e60ba269f
libuplink upload/download err handling improvements ( #2725 )
2019-08-07 16:28:27 +02:00
Bryan White
e5379d4f67
libuplink: Add size to ObjectInfo
( #2714 )
2019-08-06 11:36:35 +02:00
Egon Elbre
4cc6972396
lib/uplinkc: avoid allocating too much on stack and nicer names ( #2659 )
2019-07-30 19:51:37 +03:00
Bryan White
6b40866ed8
Re-implement libstorj API (V2) using libuplink (V3) ( #2573 )
2019-07-30 13:40:05 +02: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
Jennifer Li Johnson
e285fe1997
Don't require encryption keys for project or bucket management ( #2291 )
2019-06-23 22:06:14 -04:00
Bryan White
9304817927
Uplink C bindings part 4 ( #2260 )
2019-06-21 20:44:00 +02:00
Bryan White
5f47b7028d
Uplink C bindings part 3 ( #2258 )
...
* add object upload and download
2019-06-21 08:24:06 -04:00