diff --git a/mollom.admin.inc b/mollom.admin.inc
index 742a1a3..2fd3f65 100644
--- a/mollom.admin.inc
+++ b/mollom.admin.inc
@@ -296,8 +296,9 @@ function mollom_admin_configure_form($form, &$form_state, $mollom_form = NULL) {
         '#type' => 'radios',
         '#title' => t('When text analysis is unsure'),
         '#default_value' => $mollom_form['unsure'],
-        // @todo Add 'accept' and 'discard' actions for unsure posts.
+        // @todo Add 'discard' action for unsure posts.
         '#options' => array(
+          'accept' => t('Accept the post without further validation'),
           'captcha' => t('Show a CAPTCHA'),
           'moderate' => t('Retain the post for manual moderation'),
         ),
diff --git a/mollom.module b/mollom.module
index 87e8e63..036d2eb 100644
--- a/mollom.module
+++ b/mollom.module
@@ -1784,7 +1784,12 @@ function mollom_validate_analysis(&$form, &$form_state) {
           'arguments' => array('%teaser' => $teaser),
         ), WATCHDOG_INFO);
 
-        if ($form_state['mollom']['unsure'] == 'moderate') {
+        if ($form_state['mollom']['unsure'] == 'accept') {
+          // Accept the unsure post without further validation.
+          $form_state['mollom']['require_captcha'] = FALSE;
+          $form_state['mollom']['require_moderation'] = FALSE;
+        }
+        else if ($form_state['mollom']['unsure'] == 'moderate') {
           $form_state['mollom']['require_moderation'] = TRUE;
         }
         else {
diff --git a/tests/mollom.test b/tests/mollom.test
index 1538c2d..e32d5df 100644
--- a/tests/mollom.test
+++ b/tests/mollom.test
@@ -3720,6 +3720,53 @@ class MollomAnalysisTestCase extends MollomWebTestCase {
   }
 
   /**
+   * Tests accepting unsure posts without further validation.
+   */
+  function testAllowUnsure() {
+    $this->drupalLogin($this->admin_user);
+    // Verify that mollom_basic_elements_test_form cannot be configured to put
+    // posts into moderation queue.
+    $this->setProtection('mollom_basic_elements_test_form');
+    $this->drupalGet('admin/config/content/mollom/manage/mollom_basic_elements_test_form');
+    $this->assertNoFieldByName('mollom[unsure]');
+
+    // Configure mollom_test_form to allow unsure posts.
+    $this->setProtection('mollom_test_form', MOLLOM_MODE_ANALYSIS, NULL, array(
+      'mollom[unsure]' => 'accept',
+    ));
+    $this->drupalLogout();
+
+    // Verify that an unsure post gets published.
+    $edit = array(
+      'title' => $this->randomString(),
+      'body' => 'unsure',
+    );
+    $this->drupalPost('mollom-test/form', $edit, 'Submit');
+    $mid = $this->assertTestSubmitData();
+    $data = $this->assertMollomData('mollom_test', $mid);
+    $record = mollom_test_load($mid);
+    $this->assertEqual($record->status, 1, t('Published test post found.'));
+    $this->assertSame('spamScore', $data->spamScore, 0.5);
+    $this->assertSame('spamClassification', $data->spamClassification, 'unsure');
+    $this->assertSame('moderate', $data->moderate, 0);
+
+    // Verify that editing the post does neither change the session data, nor
+    // the publishing status.
+    $edit = array(
+      'title' => $this->randomString(),
+      'body' => 'unsure unsure',
+    );
+    $this->drupalPost(NULL, $edit, 'Submit');
+    $mid = $this->assertTestSubmitData($mid);
+    $data = $this->assertMollomData('mollom_test', $mid);
+    $record = mollom_test_load($mid);
+    $this->assertEqual($record->status, 1, t('Published test post found.'));
+    $this->assertSame('spamScore', $data->spamScore, 0.5);
+    $this->assertSame('spamClassification', $data->spamClassification, 'unsure');
+    $this->assertSame('moderate', $data->moderate, 0);
+  }
+
+  /**
    * Tests retaining unsure posts and moderating them.
    */
   function testRetainUnsure() {
