/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

/**
 * nsICMSMessageErrors
 *  Scriptable error constants for nsICMSMessage
 */
[scriptable,uuid(f2aec680-60a0-49f0-afe5-6cf1d3f15e0d)]
interface nsICMSMessageErrors : nsISupports
{
  const long SUCCESS = 0;
  const long GENERAL_ERROR = 1;
  const long VERIFY_NOT_SIGNED = 1024;
  const long VERIFY_NO_CONTENT_INFO = 1025;
  const long VERIFY_BAD_DIGEST = 1026;
  const long VERIFY_NOCERT = 1028;
  const long VERIFY_UNTRUSTED = 1029;
  const long VERIFY_ERROR_UNVERIFIED = 1031;
  const long VERIFY_ERROR_PROCESSING = 1032;
  const long VERIFY_BAD_SIGNATURE = 1033;
  const long VERIFY_DIGEST_MISMATCH = 1034;
  const long VERIFY_UNKNOWN_ALGO = 1035;
  const long VERIFY_UNSUPPORTED_ALGO = 1036;
  const long VERIFY_MALFORMED_SIGNATURE = 1037;
  const long VERIFY_HEADER_MISMATCH = 1038;
  const long VERIFY_NOT_YET_ATTEMPTED = 1039;
  const long VERIFY_CERT_WITHOUT_ADDRESS = 1040;

  const long ENCRYPT_NO_BULK_ALG = 1056;
  const long ENCRYPT_INCOMPLETE = 1057;
};
