Use constant time comparison when evaluating tempURL to avoid timing attacks (CVE-2014-0006). This is the havana backport of the master patch. Fixes bug 1265665 Change-Id: I11e4ad83cc4077e52adf54a0bd0f9749294b2a48
|7 years ago|
|bin||8 years ago|
|doc||8 years ago|
|etc||8 years ago|
|examples||8 years ago|
|locale||9 years ago|
|swift||7 years ago|
|test||8 years ago|
|.coveragerc||9 years ago|
|.functests||9 years ago|
|.gitignore||8 years ago|
|.gitreview||10 years ago|
|.mailmap||8 years ago|
|.probetests||9 years ago|
|.unittests||8 years ago|
|AUTHORS||8 years ago|
|CHANGELOG||8 years ago|
|CONTRIBUTING.md||9 years ago|
|LICENSE||9 years ago|
|MANIFEST.in||8 years ago|
|README.md||8 years ago|
|babel.cfg||10 years ago|
|requirements.txt||8 years ago|
|setup.cfg||8 years ago|
|setup.py||8 years ago|
|test-requirements.txt||8 years ago|
|tox.ini||8 years ago|
A distributed object storage system designed to scale from a single machine to thousands of servers. Swift is optimized for multi-tenancy and high concurrency. Swift is ideal for backups, web and mobile content, and any other unstructured data that can grow without bound.
Swift provides a simple, REST-based API fully documented at http://docs.openstack.org/.
Swift was originally developed as the basis for Rackspace's Cloud Files and was open-sourced in 2010 as part of the OpenStack project. It has since grown to include contributions from many companies and has spawned a thriving ecosystem of 3rd party tools. Swift's contributors are listed in the AUTHORS file.
To build documentation install sphinx (
pip install sphinx), run
python setup.py build_sphinx, and then browse to /doc/build/html/index.html.
These docs are auto-generated after every commit and available online at
The best place to get started is the "SAIO - Swift All In One". This document will walk you through setting up a development cluster of Swift in a VM. The SAIO environment is ideal for running small-scale tests against swift and trying out new features and bug fixes.
You can run unit tests with
.unittests and functional tests with
Swift is a WSGI application and uses eventlet's WSGI server. After the
processes are running, the entry point for new requests is the
swift/proxy/server.py. From there, a controller is chosen, and the
request is processed. The proxy may choose to forward the request to a back-
end server. For example, the entry point for requests to the object server is
ObjectController class in
Deployer docs are also available at http://docs.openstack.org/developer/swift/. A good starting point is at http://docs.openstack.org/developer/swift/deployment_guide.html
You can run functional tests against a swift cluster with
functional tests require
/etc/swift/test.conf to run. A sample config file
can be found in this source tree in
For client applications, official Python language bindings are provided at http://github.com/openstack/python-swiftclient.
Complete API documentation at http://docs.openstack.org/api/openstack-object-storage/1.0/content/
For more information come hang out in #openstack-swift on freenode.
The Swift Development Team