diff --git a/amazons3.module b/amazons3.module
index 3245d6f..d336684 100644
--- a/amazons3.module
+++ b/amazons3.module
@@ -78,6 +78,14 @@ function amazons3_admin() {
     '#required' => TRUE,
   );
 
+  $form['amazons3_curl_timeout'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Default cURL Timeout'),
+    '#default_value' => variable_get('amazons3_curl_timeout', 15),
+    '#description' => t('In seconds. Limits the time cURL will spend waiting for a response from S3.'),
+    '#required' => FALSE,
+  );
+
   $form['amazons3_cache'] = array(
     '#type' => 'checkbox',
     '#title' => t('Enable database caching'),
@@ -228,6 +236,7 @@ function _amazons3_validate_bucket($bucket) {
       $s3 = new AmazonS3();
       $response = $s3->list_objects($bucket, array(
           'max-keys' => 1,
+          'curlopts' => array(CURLOPT_TIMEOUT => variable_get('amazons3_curl_timeout', 15)),
         ));
       if (!$s3->if_bucket_exists($bucket) || !$response->isOK()) {
         $error = t('The S3 access credentials are invalid or the bucket does not exist');
