andreimarcu
81a1513809
Add newline for PUT response
8 years ago
andreimarcu
1e1f28658d
Remove spaces in mime mapping and ensure no spaces in filenames
8 years ago
mutantmonkey
fcd18eceec
use abstracted storage for flexibility
I moved the storage functionality into the StorageBackend interface,
which is currently only implemented by LocalfsBackend.
9 years ago
mutantmonkey
47670af185
Infer site URL from host and headers
We can use the Host property of the request and the X-Forwarded-Proto to
infer the site URL. To reduce complexity, the path is not inferred, and
it is assumed that linx-server is running at /. If this is not the case,
the site URL must be manually configured; this is no different than it
was before.
9 years ago
mutantmonkey
b0d2f2a142
support .tar.gz-style extensions
Some extensions actually consist of multiple parts, like .tar.gz, so we
should handle this properly instead of merging part of the extension
with the bare name. Right now only tar is allowed, but others can be
added easily.
Fixes #74 .
9 years ago
andreimarcu
4856ab0750
Allow for non-/ deployments. Fixes #61
9 years ago
andreimarcu
9b1df43ef2
Trim "-" in filenames
9 years ago
andreimarcu
c8fc62398a
Enable randomize in remote uploads
9 years ago
andreimarcu
9847beeff5
Cleanup
9 years ago
andreimarcu
3c659601e2
Make it an option for post uploads
9 years ago
andreimarcu
68653372ff
Rename auth header to Linx-Api-Key and remove
b64encoding requirement for uploading with keys
9 years ago
mutantmonkey
a7ae455ac1
strict referrer check improvements
* Always check Origin if it is present, regardless of headers sent
* Whitelist X-Requested-With header
9 years ago
mutantmonkey
dd4ac3a7ed
add support remote auth keys
These are taken as a parameter to the remote upload page. Note that all
keys will be logged since this is a GET request.
9 years ago
mutantmonkey
52ec9f8e2d
use 303 redirects instead of 301s
HTTP status code 301 is for a permanent redirect, which these are not.
Although 302 would work here in most browsers, it would not follow the
HTTP spec, so instead we use 303 which has a clearly and consistently
defined behavior in response to a POST or PUT request.
9 years ago
mutantmonkey
874c23087d
add crossdomain.xml to file blacklist
9 years ago
mutantmonkey
6ff181facb
add strict referrer check for POST uploads
This should protect against cross-site request forgery without the need
for cookies. It continues to allow requests with Linx-Delete-Key,
Linx-Expiry, or Linx-Randomize headers as these will not be set in the
case of cross-site requests.
9 years ago
andreimarcu
e9132a1193
File overwriting support. Fixes #8
9 years ago
andreimarcu
639d519712
Configurable maximum upload file size. Fixes #35
9 years ago
andreimarcu
6e33fe6ac8
Metadata holds mimetype, sha256sum, archiveFiles
9 years ago
andreimarcu
9640e2c7ce
Tests + fixes
9 years ago
andreimarcu
11039d57f1
Fix dyreshark breakages + fix small file with no extension bug
9 years ago
Matt Hazinski
875ebd6db2
Add support for deletion key and expiry in remote upload
9 years ago
George Burgess IV
1e421e07cd
swap to using time types instead of ints
9 years ago
andreimarcu
c5250e529e
Headers are now Linx-.. instead of X-...
9 years ago
mutantmonkey
ad9d712a3a
add a file blacklist and add robots.txt
Fixes #26
9 years ago
andreimarcu
3e2537ca68
Get rid of ace editor
9 years ago
andreimarcu
d40803f165
More verbose errors
9 years ago
mutantmonkey
98106ec74f
use better random for URLs and delete keys
Using a PRNG seeded based on only the time for these is a bad idea as
the output is predictable. Instead, use a package that generates random
strings using go's crypo/rand package to provide cryptographically
secure random URLs and delete keys.
9 years ago
andreimarcu
8f7b47f572
Support remote uploads
9 years ago
andreimarcu
9cd20c81fc
This is not the commit you are looking for
9 years ago
andreimarcu
61e1661dde
Fix small file uploads
9 years ago
andreimarcu
31359499ac
Switch to dropzonejs. Fixes #18
9 years ago
Jacob Melton
c22e314d80
Add a check to see if we already hit EOF on Read
9 years ago
andreimarcu
8a1b688b3c
Remove error
9 years ago
andreimarcu
2f5bf2cd65
Added pasteHandler and paste upload
9 years ago
Jacob Melton
2ef8546864
Add basic MIME detection support
9 years ago
andreimarcu
02f86da3c7
Display expiry and size info
9 years ago
andreimarcu
f0b1a8e47b
Cleanup artifacts
9 years ago
andreimarcu
5f78fe6619
Added tests for uploads
9 years ago
andreimarcu
8c50d4322f
Added support for testing, removed uuid requirement
9 years ago
andreimarcu
c32a698cbc
upload expiry/barename respect, random fixes
9 years ago
Matt Hazinski
a10b838f4d
Add preliminary metadata support
9 years ago
andreimarcu
6ca4579e34
Switch to new uuid repo
9 years ago
andreimarcu
9b0385bf6f
Check if file exists and increment filename
9 years ago
andreimarcu
d98b63e8bd
Performance improvements, custom 404+500, -nologs, PUT uploads fix
9 years ago
andreimarcu
9d6dcdcbba
Follow some dyretips
9 years ago
andreimarcu
8caae56b39
json response + imported old drag and drop uploader
9 years ago
andreimarcu
d869599da7
Bare /static support, some css/templates import
9 years ago
andreimarcu
d130cfe8e1
Some cleanup
9 years ago
andreimarcu
2dbe318b18
Initial commit
9 years ago