Merge branch 'master' into v2.2

This commit is contained in:
rn10950 2019-02-22 20:10:24 -05:00 committed by GitHub
commit 868653eeb7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
630 changed files with 18365 additions and 9594 deletions

View File

@ -1,12 +1,12 @@
# gmake
# This file is automatically generated for client.mk.
# Do not edit. Edit /c/projects/moz95/mozilla/mozconfig instead.
# Do not edit. Edit /c/projects/moz95/RetroZilla/mozconfig instead.
# To create a new .mozconfig file, you can visit,
# http://webtools.mozilla.org/build/config.cgi
# PATH=/local/bin:/c/mozilla-build//wget:/c/mozilla-build//7zip:/c/mozilla-build//blat261/full:/c/mozilla-build//python25:/c/mozilla-build//svn-win32-1.4.2/bin:/c/mozilla-build//upx203w:/c/mozilla-build//xemacs/XEmacs-21.4.19/i586-pc-win32:/c/mozilla-build//info-zip:/c/mozilla-build//nsis-2.22:/c/mozilla-build//nsis-2.33u:.:/usr/local/bin:/mingw/bin:/bin:/c/PROGRA~1/MICROS~3/Common/msdev98/BIN:/c/PROGRA~1/MICROS~3/VC98/BIN:/c/PROGRA~1/MICROS~3/Common/TOOLS/WINNT:/c/PROGRA~1/MICROS~3/Common/TOOLS:/c/WINNT/System32:/c/WINNT:/c/WINNT/System32/Wbem:/c/mozilla-build/moztools-180compat/bin
# PATH=/local/bin:/c/mozilla-build//wget:/c/mozilla-build//7zip:/c/mozilla-build//blat261/full:/c/mozilla-build//python25:/c/mozilla-build//svn-win32-1.4.2/bin:/c/mozilla-build//upx203w:/c/mozilla-build//xemacs/XEmacs-21.4.19/i586-pc-win32:/c/mozilla-build//info-zip:/c/mozilla-build//nsis-2.22:/c/mozilla-build//nsis-2.33u:.:/usr/local/bin:/mingw/bin:/bin:/c/PROGRA~1/MICROS~2/Common/msdev98/BIN:/c/PROGRA~1/MICROS~2/VC98/BIN:/c/PROGRA~1/MICROS~2/Common/TOOLS/WINNT:/c/PROGRA~1/MICROS~2/Common/TOOLS:/c/WINDOWS/System32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/mozilla-build/moztools-180compat/bin
MOZ_MAKE_FLAGS=-j4
MOZ_OBJDIR=/c/projects/moz95/obj-sm95-release
MOZ_OBJDIR=/c/projects/moz95/obj-sm95-release/
# --target=i586-pc-msvc is used by configure (not client.mk)
# --enable-application=suite is used by configure (not client.mk)
# --enable-optimize is used by configure (not client.mk)

View File

@ -51,7 +51,7 @@ static const nsXREAppData kAppData = {
NS_STRINGIFY(APP_VERSION),
NS_STRINGIFY(BUILD_ID),
"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}",
"Copyright (c) 1998 - 2007 mozilla.org",
"Copyright (c) 1998 - 2019 RetroZilla",
NS_XRE_ENABLE_PROFILE_MIGRATOR |
NS_XRE_ENABLE_EXTENSION_MANAGER
};

View File

@ -308,10 +308,12 @@ var gMainPane = {
*/
_folderToIndex: function (aFolder)
{
try {
if (!aFolder || aFolder.equals(this._getDownloadsFolder("Desktop")))
return 0;
else if (aFolder.equals(this._getDownloadsFolder("Downloads")))
return 1;
} catch(e) {}
return 2;
},
@ -327,8 +329,13 @@ var gMainPane = {
{
var fileLocator = Components.classes["@mozilla.org/file/directory_service;1"]
.getService(Components.interfaces.nsIProperties);
var dir = fileLocator.get(this._getSpecialFolderKey(aFolder),
var dir;
try {
dir = fileLocator.get(this._getSpecialFolderKey(aFolder),
Components.interfaces.nsILocalFile);
} catch(e) {
dir = aFolder;
}
if (aFolder != "Desktop")
dir.append("My Downloads"); // XXX l12y!

View File

@ -112,7 +112,7 @@ if (!defined($official)) {$official="";}
if (!defined($milestone)) {$milestone="";}
if (!defined($module)) {$module="";}
if (!defined($binary)) {$binary="";}
if (!defined($displayname)) {$displayname="Mozilla";}
if (!defined($displayname)) {$displayname="RetroZilla";}
if (!defined($depth)) {$depth=".";}
if (!defined($rcinclude)) {$rcinclude="";}
if (!defined($objdir)) {$objdir=".";}
@ -257,8 +257,8 @@ if ($official eq "1") {
}
my $copyright = "License: MPL 1.1/GPL 2.0/LGPL 2.1";
my $company = "Mozilla Foundation";
my $trademarks = "Mozilla";
my $company = "RetroZilla";
my $trademarks = "RetroZilla";
my $productname = $displayname;

View File

@ -841,7 +841,10 @@ TARGET_MD_ARCH=unix
DIRENT_INO=d_ino
CYGWIN_WRAPPER=
WIN_TOP_SRC=
MOZ_USER_DIR=".mozilla"
:i
MOZ_USER_DIR=".retrozilla"
HOST_AR='$(AR)'
HOST_AR_FLAGS='$(AR_FLAGS)'
@ -1497,7 +1500,7 @@ case "$target" in
_WARNINGS_CXXFLAGS="${_WARNINGS_CXXFLAGS} -Wno-multichar"
_MOZ_USE_RTTI=1
USE_DEPENDENT_LIBS=
MOZ_USER_DIR="Mozilla"
MOZ_USER_DIR="RetroZilla"
;;
*-bsdi*)
@ -1751,7 +1754,7 @@ case "$target" in
USE_SHORT_LIBNAME=1
MOZ_ENABLE_COREXFONTS=
MOZ_ENABLE_POSTSCRIPT=
MOZ_USER_DIR="Mozilla"
MOZ_USER_DIR="RetroZilla"
;;
@ -1842,7 +1845,7 @@ case "$target" in
BIN_SUFFIX='.exe'
USE_SHORT_LIBNAME=1
MOZ_ENABLE_POSTSCRIPT=
MOZ_USER_DIR="Mozilla"
MOZ_USER_DIR="RetroZilla"
dnl Hardcode to win95 for now - cls
TARGET_NSPR_MDCPUCFG='\"md/_win95.cfg\"'
@ -2077,7 +2080,7 @@ case "$target" in
MOZ_ENABLE_POSTSCRIPT=
RC=rc.exe
RCFLAGS='-n'
MOZ_USER_DIR="Mozilla"
MOZ_USER_DIR="RetroZilla"
if test "$MOZTOOLS"; then
MOZ_TOOLS_DIR=`echo $MOZTOOLS | sed -e 's|\\\\|/|g'`
@ -4037,7 +4040,7 @@ mac|cocoa)
TK_CFLAGS="-I${MACOS_SDK_DIR}/Developer/Headers/FlatCarbon"
CFLAGS="$CFLAGS $TK_CFLAGS"
CXXFLAGS="$CXXFLAGS $TK_CFLAGS"
MOZ_USER_DIR="Mozilla"
MOZ_USER_DIR="RetroZilla"
AC_DEFINE(XP_MACOSX)
AC_DEFINE(TARGET_CARBON)
AC_DEFINE(TARGET_API_MAC_CARBON)
@ -4450,8 +4453,8 @@ xulrunner)
;;
macbrowser)
MOZ_APP_NAME=mozilla
MOZ_APP_DISPLAYNAME=Mozilla
MOZ_APP_NAME=retrozilla
MOZ_APP_DISPLAYNAME=RetroZilla
MOZ_APP_VERSION=$MOZILLA_VERSION
MOZ_STORAGE=1
MOZ_EXTENSIONS_DEFAULT=" cookie xmlextras universalchardet typeaheadfind transformiix permissions spellcheck auth"
@ -4459,8 +4462,8 @@ macbrowser)
;;
standalone)
MOZ_APP_NAME=mozilla
MOZ_APP_DISPLAYNAME=Mozilla
MOZ_APP_NAME=retrozilla
MOZ_APP_DISPLAYNAME=RetroZilla
MOZ_APP_VERSION=$MOZILLA_VERSION
;;

View File

@ -340,7 +340,7 @@ nsresult nsCopySupport::IsPlainTextContext(nsISelection *aSel, nsIDocument *aDoc
nsCOMPtr<nsIDOMElement> bodyElem = do_QueryInterface(selContent);
nsAutoString wsVal;
rv = bodyElem->GetAttribute(NS_LITERAL_STRING("style"), wsVal);
if (NS_SUCCEEDED(rv) && (kNotFound != wsVal.Find(NS_LITERAL_STRING("-moz-pre-wrap"))))
if (NS_SUCCEEDED(rv) && (kNotFound != wsVal.Find(NS_LITERAL_STRING("pre-wrap"))))
{
*aIsPlainTextContext = PR_TRUE;
break;

View File

@ -1149,7 +1149,7 @@ nsHTMLCopyEncoder::SetSelection(nsISelection* aSelection)
nsCOMPtr<nsIDOMElement> bodyElem = do_QueryInterface(selContent);
nsAutoString wsVal;
rv = bodyElem->GetAttribute(NS_LITERAL_STRING("style"), wsVal);
if (NS_SUCCEEDED(rv) && (kNotFound != wsVal.Find(NS_LITERAL_STRING("-moz-pre-wrap"))))
if (NS_SUCCEEDED(rv) && (kNotFound != wsVal.Find(NS_LITERAL_STRING("pre-wrap"))))
{
mIsTextWidget = PR_TRUE;
break;

View File

@ -677,7 +677,7 @@ nsPlainTextSerializer::DoOpenContainer(const nsIParserNode* aNode, PRInt32 aTag)
if(NS_SUCCEEDED(GetAttributeValue(aNode, nsHTMLAtoms::style, style)) &&
(kNotFound != (whitespace = style.Find("white-space:")))) {
if (kNotFound != style.Find("-moz-pre-wrap", PR_TRUE, whitespace)) {
if (kNotFound != style.Find("pre-wrap", PR_TRUE, whitespace)) {
#ifdef DEBUG_preformatted
printf("Set mPreFormatted based on style moz-pre-wrap\n");
#endif

View File

@ -150,7 +150,7 @@ MapAttributesIntoRule(const nsMappedAttributes* aAttributes,
if (aData->mTextData->mWhiteSpace.GetUnit() == eCSSUnit_Null) {
// wrap: empty
if (aAttributes->GetAttr(nsHTMLAtoms::wrap))
aData->mTextData->mWhiteSpace.SetIntValue(NS_STYLE_WHITESPACE_MOZ_PRE_WRAP, eCSSUnit_Enumerated);
aData->mTextData->mWhiteSpace.SetIntValue(NS_STYLE_WHITESPACE_PRE_WRAP, eCSSUnit_Enumerated);
// width: int (html4 attribute == nav4 cols)
const nsAttrValue* value = aAttributes->GetAttr(nsHTMLAtoms::width);
@ -162,7 +162,7 @@ MapAttributesIntoRule(const nsMappedAttributes* aAttributes,
if (value && value->Type() == nsAttrValue::eInteger) {
// Force wrap property on since we want to wrap at a width
// boundary not just a newline.
aData->mTextData->mWhiteSpace.SetIntValue(NS_STYLE_WHITESPACE_MOZ_PRE_WRAP, eCSSUnit_Enumerated);
aData->mTextData->mWhiteSpace.SetIntValue(NS_STYLE_WHITESPACE_PRE_WRAP, eCSSUnit_Enumerated);
}
}
}

View File

@ -4434,8 +4434,7 @@ nsEditor::IsPreformatted(nsIDOMNode *aNode, PRBool *aResult)
const nsStyleText* styleText = frame->GetStyleText();
*aResult = NS_STYLE_WHITESPACE_PRE == styleText->mWhiteSpace ||
NS_STYLE_WHITESPACE_MOZ_PRE_WRAP == styleText->mWhiteSpace;
*aResult = styleText->WhiteSpaceIsSignificant();
return NS_OK;
}

View File

@ -1002,12 +1002,12 @@ nsPlaintextEditor::SetWrapWidth(PRInt32 aWrapColumn)
// and now we're ready to set the new whitespace/wrapping style.
if (aWrapColumn > 0 && !mWrapToWindow) // Wrap to a fixed column
{
styleValue.AppendLiteral("white-space: -moz-pre-wrap; width: ");
styleValue.AppendLiteral("white-space: pre-wrap; width: ");
styleValue.AppendInt(aWrapColumn);
styleValue.AppendLiteral("ch;");
}
else if (mWrapToWindow || aWrapColumn == 0)
styleValue.AppendLiteral("white-space: -moz-pre-wrap;");
styleValue.AppendLiteral("white-space: pre-wrap;");
else
styleValue.AppendLiteral("white-space: pre;");

View File

@ -236,7 +236,7 @@ get_sof (j_decompress_ptr cinfo, boolean is_prog, boolean is_arith)
/* Process a SOFn marker */
{
INT32 length;
int c, ci;
int c, ci, i;
jpeg_component_info * compptr;
INPUT_VARS(cinfo);
@ -273,11 +273,27 @@ get_sof (j_decompress_ptr cinfo, boolean is_prog, boolean is_arith)
cinfo->comp_info = (jpeg_component_info *) (*cinfo->mem->alloc_small)
((j_common_ptr) cinfo, JPOOL_IMAGE,
cinfo->num_components * SIZEOF(jpeg_component_info));
for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
ci++, compptr++) {
for (ci = 0; ci < cinfo->num_components; ci++) {
INPUT_BYTE(cinfo, c, return FALSE);
/* Check to see whether component id has already been seen */
/* (in violation of the spec, but unfortunately seen in some */
/* files). If so, create "fake" component id equal to the */
/* max id seen so far + 1. */
for (i = 0, compptr = cinfo->comp_info; i < ci; i++, compptr++) {
if (c == compptr->component_id) {
compptr = cinfo->comp_info;
c = compptr->component_id;
compptr++;
for (i = 1; i < ci; i++, compptr++) {
if (compptr->component_id > c) c = compptr->component_id;
}
c++;
break;
}
}
compptr->component_id = c;
compptr->component_index = ci;
INPUT_BYTE(cinfo, compptr->component_id, return FALSE);
INPUT_BYTE(cinfo, c, return FALSE);
compptr->h_samp_factor = (c >> 4) & 15;
compptr->v_samp_factor = (c ) & 15;
@ -300,7 +316,7 @@ get_sos (j_decompress_ptr cinfo)
/* Process a SOS marker */
{
INT32 length;
int i, ci, n, c, cc;
int c, ci, i, n;
jpeg_component_info * compptr;
INPUT_VARS(cinfo);
@ -321,24 +337,38 @@ get_sos (j_decompress_ptr cinfo)
/* Collect the component-spec parameters */
for (i = 0; i < n; i++) {
INPUT_BYTE(cinfo, cc, return FALSE);
INPUT_BYTE(cinfo, c, return FALSE);
/* Detect the case where component id's are not unique, and, if so, */
/* create a fake component id using the same logic as in get_sof. */
for (ci = 0; ci < i; ci++) {
if (c == cinfo->cur_comp_info[ci]->component_id) {
c = cinfo->cur_comp_info[0]->component_id;
for (ci = 1; ci < i; ci++) {
compptr = cinfo->cur_comp_info[ci];
if (compptr->component_id > c) c = compptr->component_id;
}
c++;
break;
}
}
for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
ci++, compptr++) {
if (cc == compptr->component_id)
if (c == compptr->component_id)
goto id_found;
}
ERREXIT1(cinfo, JERR_BAD_COMPONENT_ID, cc);
ERREXIT1(cinfo, JERR_BAD_COMPONENT_ID, c);
id_found:
cinfo->cur_comp_info[i] = compptr;
INPUT_BYTE(cinfo, c, return FALSE);
compptr->dc_tbl_no = (c >> 4) & 15;
compptr->ac_tbl_no = (c ) & 15;
TRACEMS3(cinfo, 1, JTRC_SOS_COMPONENT, cc,
TRACEMS3(cinfo, 1, JTRC_SOS_COMPONENT, compptr->component_id,
compptr->dc_tbl_no, compptr->ac_tbl_no);
}
@ -454,6 +484,8 @@ get_dht (j_decompress_ptr cinfo)
if (count > 256 || ((INT32) count) > length)
ERREXIT(cinfo, JERR_BAD_HUFF_TABLE);
MEMZERO(huffval, SIZEOF(huffval)); /* pre-zero array for later copy */
for (i = 0; i < count; i++)
INPUT_BYTE(cinfo, huffval[i], return FALSE);

View File

@ -569,7 +569,7 @@
#define NS_STYLE_WHITESPACE_NORMAL 0
#define NS_STYLE_WHITESPACE_PRE 1
#define NS_STYLE_WHITESPACE_NOWRAP 2
#define NS_STYLE_WHITESPACE_MOZ_PRE_WRAP 3
#define NS_STYLE_WHITESPACE_PRE_WRAP 3
// See nsStyleText
#define NS_STYLE_UNICODE_BIDI_NORMAL 0

View File

@ -1927,8 +1927,7 @@ nsLineLayout::VerticalAlignFrames(PerSpanData* psd)
nsCOMPtr<nsIFontMetrics> fm;
rc->GetFontMetrics(*getter_AddRefs(fm));
PRBool preMode = (mStyleText->mWhiteSpace == NS_STYLE_WHITESPACE_PRE) ||
(mStyleText->mWhiteSpace == NS_STYLE_WHITESPACE_MOZ_PRE_WRAP);
PRBool preMode = mStyleText->WhiteSpaceIsSignificant();
// See if the span is an empty continuation. It's an empty continuation iff:
// - it has a prev-in-flow

View File

@ -631,7 +631,7 @@ public:
mNumJustifiableCharacterReceivingExtraJot = 0;
mExtraSpacePerJustifiableCharacter = 0;
mPreformatted = (NS_STYLE_WHITESPACE_PRE == mText->mWhiteSpace) ||
(NS_STYLE_WHITESPACE_MOZ_PRE_WRAP == mText->mWhiteSpace);
(NS_STYLE_WHITESPACE_PRE_WRAP == mText->mWhiteSpace);
mJustifying = (NS_STYLE_TEXT_ALIGN_JUSTIFY == mText->mTextAlign) &&
!mPreformatted;
@ -5907,7 +5907,7 @@ nsTextFrame::Reflow(nsPresContext* aPresContext,
}
PRBool wrapping = (NS_STYLE_WHITESPACE_NORMAL == ts.mText->mWhiteSpace) ||
(NS_STYLE_WHITESPACE_MOZ_PRE_WRAP == ts.mText->mWhiteSpace);
(NS_STYLE_WHITESPACE_PRE_WRAP == ts.mText->mWhiteSpace);
// Set whitespace skip flag
PRBool skipWhitespace = PR_FALSE;
@ -6179,7 +6179,7 @@ nsTextFrame::TrimTrailingWhiteSpace(nsPresContext* aPresContext,
const nsStyleText* textStyle = GetStyleText();
if (mContentLength &&
(NS_STYLE_WHITESPACE_PRE != textStyle->mWhiteSpace) &&
(NS_STYLE_WHITESPACE_MOZ_PRE_WRAP != textStyle->mWhiteSpace)) {
(NS_STYLE_WHITESPACE_PRE_WRAP != textStyle->mWhiteSpace)) {
// Get the text fragments that make up our content
nsCOMPtr<nsITextContent> tc = do_QueryInterface(mContent);

View File

@ -260,7 +260,7 @@ nsTextTransformer::Init(nsIFrame* aFrame,
if (NS_STYLE_WHITESPACE_PRE == styleText->mWhiteSpace) {
mMode = ePreformatted;
}
else if (NS_STYLE_WHITESPACE_MOZ_PRE_WRAP == styleText->mWhiteSpace) {
else if (NS_STYLE_WHITESPACE_PRE_WRAP == styleText->mWhiteSpace) {
mMode = ePreWrap;
}
mTextTransform = styleText->mTextTransform;
@ -1569,7 +1569,7 @@ struct SelfTestData {
static PRUint8 preModeValue[NUM_MODES] = {
NS_STYLE_WHITESPACE_NORMAL,
NS_STYLE_WHITESPACE_PRE,
NS_STYLE_WHITESPACE_MOZ_PRE_WRAP
NS_STYLE_WHITESPACE_PRE_WRAP
};
static PRUnichar test1text[] = {
@ -1812,7 +1812,7 @@ nsTextTransformer::Init2(const nsTextFragment* aFrag,
if (NS_STYLE_WHITESPACE_PRE == aWhiteSpace) {
mMode = ePreformatted;
}
else if (NS_STYLE_WHITESPACE_MOZ_PRE_WRAP == aWhiteSpace) {
else if (NS_STYLE_WHITESPACE_PRE_WRAP == aWhiteSpace) {
mMode = ePreWrap;
}
mTextTransform = aTextTransform;

View File

@ -108,8 +108,7 @@ inDOMUtils::IsIgnorableWhitespace(nsIDOMCharacterData *aDataNode,
presShell->GetPrimaryFrameFor(content, &frame);
if (frame) {
const nsStyleText* text = frame->GetStyleText();
*aReturn = text->mWhiteSpace != NS_STYLE_WHITESPACE_PRE &&
text->mWhiteSpace != NS_STYLE_WHITESPACE_MOZ_PRE_WRAP;
*aReturn = !text->WhiteSpaceIsSignificant();
}
else {
// empty inter-tag text node without frame, e.g., in between <table>\n<tr>

View File

@ -355,6 +355,7 @@ CSS_KEY(physical, physical)
CSS_KEY(pointer, pointer)
CSS_KEY(portrait, portrait)
CSS_KEY(pre, pre)
CSS_KEY(pre-wrap, pre_wrap)
CSS_KEY(progress, progress)
CSS_KEY(pt, pt)
CSS_KEY(px, px)

View File

@ -928,7 +928,8 @@ const PRInt32 nsCSSProps::kVolumeKTable[] = {
const PRInt32 nsCSSProps::kWhitespaceKTable[] = {
eCSSKeyword_pre, NS_STYLE_WHITESPACE_PRE,
eCSSKeyword_nowrap, NS_STYLE_WHITESPACE_NOWRAP,
eCSSKeyword__moz_pre_wrap, NS_STYLE_WHITESPACE_MOZ_PRE_WRAP,
eCSSKeyword_pre_wrap, NS_STYLE_WHITESPACE_PRE_WRAP,
eCSSKeyword__moz_pre_wrap, NS_STYLE_WHITESPACE_PRE_WRAP,
eCSSKeyword_UNKNOWN,-1
};

View File

@ -740,7 +740,7 @@ struct nsStyleText : public nsStyleStruct {
PRBool WhiteSpaceIsSignificant() const {
return mWhiteSpace == NS_STYLE_WHITESPACE_PRE ||
mWhiteSpace == NS_STYLE_WHITESPACE_MOZ_PRE_WRAP;
mWhiteSpace == NS_STYLE_WHITESPACE_PRE_WRAP;
}
};

View File

@ -71,6 +71,8 @@ else
EXTRA_DSO_LIBS = msgbaseutil
endif
else
SHARED_LIBRARY_LIBS += $(DIST)/lib/$(LIB_PREFIX)msgbsutl_s.$(LIB_SUFFIX)
endif
CPPSRCS = nsMsgSMIMEFactory.cpp
@ -79,10 +81,6 @@ SHARED_LIBRARY_LIBS = \
$(DIST)/lib/$(LIB_PREFIX)msgsmime_s.$(LIB_SUFFIX) \
$(NULL)
ifndef MOZ_STATIC_MAIL_BUILD
SHARED_LIBRARY_LIBS + = $(DIST)/lib/$(LIB_PREFIX)msgbsutl_s.$(LIB_SUFFIX)
endif
EXTRA_DSO_LDOPTS = \
$(LIBS_DIR) \
$(EXTRA_DSO_LIBS) \

View File

@ -283,9 +283,9 @@ const char *const stateLabels[] = {
// TEMPORARY HARD CODED FUNCTIONS
///////////////////////////////////////////////////////////////////////////////////////////
#ifdef XP_WIN
static char *XP_AppCodeName = "Mozilla";
static char *XP_AppCodeName = "RetroZilla";
#else
static const char *XP_AppCodeName = "Mozilla";
static const char *XP_AppCodeName = "RetroZilla";
#endif
#define NET_IS_SPACE(x) ((x)==' ' || (x)=='\t')

View File

@ -2390,3 +2390,6 @@ pref("print.print_command", "lp -c -s ${MOZ_PRINTER_NAME:+'-d '}${MOZ_PRINTER_NA
#ifdef MOZ_X11
pref("network.gnomevfs.supported-protocols", "smb:,sftp:");
#endif
// restrict gopher port to port 70 only
pref("network.gopher.port-restricted", true);

View File

@ -122,13 +122,21 @@ nsGopherChannel::Init(nsIURI* uri, nsIProxyInfo* proxyInfo)
if (NS_FAILED(rv))
return rv;
PRBool restrictedPort = PR_TRUE;
nsCOMPtr<nsIPrefBranch> branch;
nsCOMPtr<nsIPrefService> prefs = do_GetService("@mozilla.org/preferences-service;1", &rv);
if (!NS_FAILED(rv)) {
branch = do_QueryInterface(prefs);
branch->GetBoolPref("network.gopher.port-restricted" , &restrictedPort);
}
// For security reasons, don't allow anything expect the default
// gopher port (70). See bug 71916 - bbaetz@cs.mcgill.ca
/*
if (mPort==-1)
if(!restrictedPort) {
if (mPort==-1)
mPort=GOPHER_PORT;
} else
mPort=GOPHER_PORT;
*/
mPort=GOPHER_PORT;
// No path given
if (buffer[0]=='\0' || (buffer[0]=='/' && buffer[1]=='\0')) {

View File

@ -376,7 +376,7 @@ nsIndexedToHTML::DoOnStartRequest(nsIRequest* request, nsISupports *aContext,
buffer.AppendLiteral("<style type=\"text/css\">\n"
"img { border: 0; padding: 0 2px; vertical-align: text-bottom; }\n"
"td { font-family: monospace; padding: 2px 3px; text-align: right; vertical-align: bottom; white-space: pre; }\n"
"td { font-family: monospace; padding: 2px 3px; text-align: right; vertical-align: bottom; white-space: -moz-pre-wrap; }\n"
"td:first-child { text-align: left; padding: 2px 10px 2px 3px; }\n"
"table { border: 0; }\n"
"a.symlink { font-style: italic; }\n"

View File

@ -100,11 +100,26 @@
issuerName = this.mapIssuerOrganization(cert.issuerOrganization);
if (!issuerName) issuerName = cert.issuerName;
var protocolVersion = " (unknown)";
switch(status.protocolVersion) {
case 0:
protocolVersion = " (SSL3)";
break;
case 1:
protocolVersion = " (TLS1.0)";
break;
case 2:
protocolVersion = " (TLS1.1)";
break;
case 3:
protocolVersion = " (TLS1.2)";
break;
}
return {
hostName : hName,
cAName : issuerName,
encryptionAlgorithm : status.cipherName,
encryptionAlgorithm : status.cipherName+protocolVersion,
encryptionStrength : status.secretKeyLength,
isBroken : isBroken,
cert : cert

View File

@ -47,4 +47,5 @@ interface nsISSLStatus : nsISupports {
readonly attribute string cipherName;
readonly attribute unsigned long keyLength;
readonly attribute unsigned long secretKeyLength;
readonly attribute unsigned long protocolVersion;
};

View File

@ -659,6 +659,7 @@ public:
nsCOMPtr<nsIX509Cert> mServerCert;
PRUint32 mKeyLength;
PRUint32 mSecretKeyLength;
PRUint32 mProtocolVersion;
nsXPIDLCString mCipherName;
};
@ -693,6 +694,16 @@ nsSSLStatus::GetSecretKeyLength(PRUint32* _result)
return NS_OK;
}
NS_IMETHODIMP
nsSSLStatus::GetProtocolVersion(PRUint32* _result)
{
NS_ASSERTION(_result, "non-NULL destination required");
*_result = mProtocolVersion;
return NS_OK;
}
NS_IMETHODIMP
nsSSLStatus::GetCipherName(char** _result)
{
@ -704,7 +715,7 @@ nsSSLStatus::GetCipherName(char** _result)
}
nsSSLStatus::nsSSLStatus()
: mKeyLength(0), mSecretKeyLength(0)
: mKeyLength(0), mSecretKeyLength(0), mProtocolVersion(0)
{
}
@ -867,6 +878,13 @@ void PR_CALLBACK HandshakeCallback(PRFileDesc* fd, void* client_data) {
status->mSecretKeyLength = encryptBits;
status->mCipherName.Adopt(cipherName);
SSLChannelInfo channelInfo;
if (SSL_GetChannelInfo(fd, &channelInfo, sizeof(channelInfo)) == SECSuccess) {
// Get the protocol version
// 0=ssl3, 1=tls1, 2=tls1.1, 3=tls1.2
status->mProtocolVersion = channelInfo.protocolVersion & 0xFF;
}
infoObject->SetSSLStatus(status);
}

View File

@ -61,6 +61,9 @@ endif
ifdef BUILD_OPT
NSPR_CONFIGURE_OPTS += --disable-debug --enable-optimize
endif
ifdef USE_X32
NSPR_CONFIGURE_OPTS += --enable-x32
endif
ifdef USE_64
NSPR_CONFIGURE_OPTS += --enable-64bit
endif
@ -70,6 +73,9 @@ endif
ifdef USE_DEBUG_RTL
NSPR_CONFIGURE_OPTS += --enable-debug-rtl
endif
ifdef USE_STATIC_RTL
NSPR_CONFIGURE_OPTS += --enable-static-rtl
endif
ifdef NS_USE_GCC
NSPR_COMPILERS = CC=gcc CXX=g++
endif

View File

@ -19,8 +19,6 @@ ARCH=$(uname -s)
ulimit -c unlimited 2> /dev/null
export NSS_ENABLE_ECC=1
export NSS_ECC_MORE_THAN_SUITE_B=1
export NSPR_LOG_MODULES="pkix:1"
#export JAVA_HOME_32=

View File

@ -288,7 +288,7 @@ prepare()
mv ${OUTPUTDIR} ${OUTPUTDIR}.last >/dev/null 2>&1
mkdir -p ${OUTPUTDIR}
if [ -n "${NSS_ENABLE_ECC}" -a -n "${NSS_ECC_MORE_THAN_SUITE_B}" ]; then
if [ -z "${NSS_DISABLE_ECC}" -a -n "${NSS_ECC_MORE_THAN_SUITE_B}" ]; then
cd ${HGDIR}/nss
ECF="lib/freebl/ecl/ecl-curve.h"
print_log "hg revert -r NSS_3_11_1_RTM ${ECF}"

View File

@ -35,13 +35,24 @@ output_binary (void *arg, const unsigned char *obuf, PRInt32 size)
return nb;
}
static PRBool
isBase64Char(char c)
{
return ((c >= 'A' && c <= 'Z')
|| (c >= 'a' && c <= 'z')
|| (c >= '0' && c <= '9')
|| c == '+'
|| c == '/'
|| c == '=');
}
static SECStatus
decode_file(FILE *outFile, FILE *inFile)
{
NSSBase64Decoder *cx;
int nb;
SECStatus status = SECFailure;
char ibuf[4096];
const char *ptr;
cx = NSSBase64Decoder_Create(output_binary, outFile);
if (!cx) {
@ -50,19 +61,29 @@ decode_file(FILE *outFile, FILE *inFile)
for (;;) {
if (feof(inFile)) break;
nb = fread(ibuf, 1, sizeof(ibuf), inFile);
if (nb != sizeof(ibuf)) {
if (nb == 0) {
if (ferror(inFile)) {
PORT_SetError(SEC_ERROR_IO);
goto loser;
}
/* eof */
break;
if (!fgets(ibuf, sizeof(ibuf), inFile)) {
if (ferror(inFile)) {
PORT_SetError(SEC_ERROR_IO);
goto loser;
}
/* eof */
break;
}
for (ptr = ibuf; *ptr; ++ptr) {
char c = *ptr;
if (c == '\n' || c == '\r') {
break; /* found end of line */
}
if (!isBase64Char(c)) {
ptr = ibuf; /* ignore line */
break;
}
}
if (ibuf == ptr) {
continue; /* skip empty or non-base64 line */
}
status = NSSBase64Decoder_Update(cx, ibuf, nb);
status = NSSBase64Decoder_Update(cx, ibuf, ptr-ibuf);
if (status != SECSuccess) goto loser;
}
@ -99,10 +120,11 @@ int main(int argc, char **argv)
progName = progName ? progName+1 : argv[0];
/* Parse command line arguments */
optstate = PL_CreateOptState(argc, argv, "i:o:");
optstate = PL_CreateOptState(argc, argv, "?hi:o:");
while ((status = PL_GetNextOpt(optstate)) == PL_OPT_OK) {
switch (optstate->option) {
case '?':
case 'h':
Usage(progName);
break;

View File

@ -21,7 +21,7 @@
#include "secoid.h"
#include "nssutil.h"
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
#include "ecl-curve.h"
SECStatus EC_DecodeParams(const SECItem *encodedParams,
ECParams **ecparams);
@ -56,8 +56,7 @@ char *testdir = NULL;
#define TIMEMARK(seconds) \
time1 = PR_SecondsToInterval(seconds); \
{ \
PRInt64 tmp, L100; \
LL_I2L(L100, 100); \
PRInt64 tmp; \
if (time2 == 0) { \
time2 = 1; \
} \
@ -133,7 +132,7 @@ static void Usage()
PRINTUSAGE(progName, "-S -m mode", "Sign a buffer");
PRINTUSAGE("", "", "[-i plaintext] [-o signature] [-k key]");
PRINTUSAGE("", "", "[-b bufsize]");
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
PRINTUSAGE("", "", "[-n curvename]");
#endif
PRINTUSAGE("", "", "[-p repetitions | -5 time_interval] [-4 th_num]");
@ -141,7 +140,7 @@ static void Usage()
PRINTUSAGE("", "-i", "file which contains input buffer");
PRINTUSAGE("", "-o", "file for signature");
PRINTUSAGE("", "-k", "file which contains key");
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
PRINTUSAGE("", "-n", "name of curve for EC key generation; one of:");
PRINTUSAGE("", "", " sect163k1, nistk163, sect163r1, sect163r2,");
PRINTUSAGE("", "", " nistb163, sect193r1, sect193r2, sect233k1, nistk233,");
@ -313,7 +312,6 @@ serialize_key(SECItem *it, int ni, PRFileDesc *file)
{
unsigned char len[4];
int i;
SECStatus status;
NSSBase64Encoder *cx;
cx = NSSBase64Encoder_Create(output_ascii, file);
for (i=0; i<ni; i++, it++) {
@ -321,11 +319,11 @@ serialize_key(SECItem *it, int ni, PRFileDesc *file)
len[1] = (it->len >> 16) & 0xff;
len[2] = (it->len >> 8) & 0xff;
len[3] = (it->len & 0xff);
status = NSSBase64Encoder_Update(cx, len, 4);
status = NSSBase64Encoder_Update(cx, it->data, it->len);
NSSBase64Encoder_Update(cx, len, 4);
NSSBase64Encoder_Update(cx, it->data, it->len);
}
status = NSSBase64Encoder_Destroy(cx, PR_FALSE);
status = PR_Write(file, "\r\n", 2);
NSSBase64Encoder_Destroy(cx, PR_FALSE);
PR_Write(file, "\r\n", 2);
}
void
@ -390,7 +388,7 @@ dsakey_from_filedata(SECItem *filedata)
return key;
}
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
static ECPrivateKey *
eckey_from_filedata(SECItem *filedata)
{
@ -544,7 +542,7 @@ getECParams(const char *curve)
return ecparams;
}
#endif /* NSS_ENABLE_ECC */
#endif /* NSS_DISABLE_ECC */
static void
dump_pqg(PQGParams *pqg)
@ -562,7 +560,7 @@ dump_dsakey(DSAPrivateKey *key)
SECU_PrintInteger(stdout, &key->privateValue, "PRIVATE VALUE:", 0);
}
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
static void
dump_ecp(ECParams *ecp)
{
@ -651,7 +649,7 @@ typedef enum {
bltestRSA, /* Public Key Ciphers */
bltestRSA_OAEP, /* . (Public Key Enc.) */
bltestRSA_PSS, /* . (Public Key Sig.) */
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
bltestECDSA, /* . (Public Key Sig.) */
#endif
bltestDSA, /* . (Public Key Sig.) */
@ -690,7 +688,7 @@ static char *mode_strings[] =
"rsa",
"rsa_oaep",
"rsa_pss",
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
"ecdsa",
#endif
/*"pqg",*/
@ -744,7 +742,7 @@ typedef struct
PQGParams *pqg;
} bltestDSAParams;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
typedef struct
{
char *curveName;
@ -763,7 +761,7 @@ typedef struct
union {
bltestRSAParams rsa;
bltestDSAParams dsa;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
bltestECDSAParams ecdsa;
#endif
} cipherParams;
@ -1266,7 +1264,7 @@ dsa_verifyDigest(void *cx, SECItem *output, const SECItem *input)
return DSA_VerifyDigest((DSAPublicKey *)params->pubKey, output, input);
}
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
SECStatus
ecdsa_signDigest(void *cx, SECItem *output, const SECItem *input)
{
@ -1436,7 +1434,7 @@ bltest_aes_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
int minorMode;
int i;
int keylen = aesp->key.buf.len;
int blocklen = AES_BLOCK_SIZE;
unsigned int blocklen = AES_BLOCK_SIZE;
PRIntervalTime time1, time2;
unsigned char *params;
int len;
@ -1635,6 +1633,8 @@ bltest_rsa_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
cipherInfo->cipher.pubkeyCipher = encrypt ? rsa_encryptOAEP
: rsa_decryptOAEP;
break;
default:
break;
}
return SECSuccess;
}
@ -1720,7 +1720,7 @@ bltest_dsa_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
return SECSuccess;
}
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
SECStatus
bltest_ecdsa_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
{
@ -2077,7 +2077,7 @@ finish:
SECStatus
pubkeyInitKey(bltestCipherInfo *cipherInfo, PRFileDesc *file,
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
int keysize, int exponent, char *curveName)
#else
int keysize, int exponent)
@ -2090,7 +2090,7 @@ pubkeyInitKey(bltestCipherInfo *cipherInfo, PRFileDesc *file,
RSAPrivateKey **rsaKey = NULL;
bltestDSAParams *dsap;
DSAPrivateKey **dsaKey = NULL;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
SECItem *tmpECParamsDER;
ECParams *tmpECParams = NULL;
SECItem ecSerialize[3];
@ -2132,7 +2132,7 @@ pubkeyInitKey(bltestCipherInfo *cipherInfo, PRFileDesc *file,
dsap->keysize = (*dsaKey)->params.prime.len*8;
}
break;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
case bltestECDSA:
ecKey = (ECPrivateKey **)&asymk->privKey;
if (curveName != NULL) {
@ -2244,7 +2244,7 @@ cipherInit(bltestCipherInfo *cipherInfo, PRBool encrypt)
}
return bltest_dsa_init(cipherInfo, encrypt);
break;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
case bltestECDSA:
if (encrypt) {
SECITEM_AllocItem(cipherInfo->arena, &cipherInfo->output.buf,
@ -2494,7 +2494,7 @@ cipherFinish(bltestCipherInfo *cipherInfo)
case bltestRSA_PSS: /* will be freed with it. */
case bltestRSA_OAEP:
case bltestDSA:
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
case bltestECDSA:
#endif
case bltestMD2: /* hash contexts are ephemeral */
@ -2569,8 +2569,6 @@ printPR_smpString(const char *sformat, char *reportStr,
fprintf(stdout, sformat, reportStr);
PR_smprintf_free(reportStr);
} else {
int prnRes;
LL_L2I(prnRes, rNum);
fprintf(stdout, nformat, rNum);
}
}
@ -2674,7 +2672,7 @@ print_td:
fprintf(stdout, "%8d", info->params.asymk.cipherParams.dsa.keysize);
}
break;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
case bltestECDSA:
if (td) {
fprintf(stdout, "%12s", "ec_curve");
@ -2791,8 +2789,8 @@ mode_str_to_hash_alg(const SECItem *modeStr)
case bltestSHA256: return HASH_AlgSHA256;
case bltestSHA384: return HASH_AlgSHA384;
case bltestSHA512: return HASH_AlgSHA512;
default: return HASH_AlgNULL;
}
return HASH_AlgNULL;
}
void
@ -2906,7 +2904,7 @@ get_params(PLArenaPool *arena, bltestParams *params,
sprintf(filename, "%s/tests/%s/%s%d", testdir, modestr, "ciphertext",j);
load_file_data(arena, &params->asymk.sig, filename, bltestBase64Encoded);
break;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
case bltestECDSA:
sprintf(filename, "%s/tests/%s/%s%d", testdir, modestr, "key", j);
load_file_data(arena, &params->asymk.key, filename, bltestBase64Encoded);
@ -2938,46 +2936,62 @@ SECStatus
verify_self_test(bltestIO *result, bltestIO *cmp, bltestCipherMode mode,
PRBool forward, SECStatus sigstatus)
{
int res;
PRBool equal;
char *modestr = mode_strings[mode];
res = SECITEM_CompareItem(&result->pBuf, &cmp->buf);
equal = SECITEM_ItemsAreEqual(&result->pBuf, &cmp->buf);
if (is_sigCipher(mode)) {
if (forward) {
if (res == 0) {
if (equal) {
printf("Signature self-test for %s passed.\n", modestr);
} else {
printf("Signature self-test for %s failed!\n", modestr);
}
return equal ? SECSuccess : SECFailure;
} else {
if (sigstatus == SECSuccess) {
printf("Verification self-test for %s passed.\n", modestr);
} else {
printf("Verification self-test for %s failed!\n", modestr);
}
return sigstatus;
}
return sigstatus;
} else if (is_hashCipher(mode)) {
if (res == 0) {
if (equal) {
printf("Hash self-test for %s passed.\n", modestr);
} else {
printf("Hash self-test for %s failed!\n", modestr);
}
} else {
if (forward) {
if (res == 0) {
if (equal) {
printf("Encryption self-test for %s passed.\n", modestr);
} else {
printf("Encryption self-test for %s failed!\n", modestr);
}
} else {
if (res == 0) {
if (equal) {
printf("Decryption self-test for %s passed.\n", modestr);
} else {
printf("Decryption self-test for %s failed!\n", modestr);
}
}
}
return (res != 0);
return equal ? SECSuccess : SECFailure;
}
static SECStatus
ReadFileToItem(SECItem *dst, const char *filename)
{
PRFileDesc *file;
SECStatus rv;
file = PR_Open(filename, PR_RDONLY, 00660);
if (!file) {
return SECFailure;
}
rv = SECU_FileToItem(dst, file);
PR_Close(file);
return rv;
}
static SECStatus
@ -2988,22 +3002,19 @@ blapi_selftest(bltestCipherMode *modes, int numModes, int inoff, int outoff,
bltestIO pt, ct;
bltestCipherMode mode;
bltestParams *params;
int i, j, nummodes, numtests;
unsigned int i, j, nummodes, numtests;
char *modestr;
char filename[256];
PRFileDesc *file;
PLArenaPool *arena;
SECItem item;
PRBool finished;
SECStatus rv = SECSuccess, srv;
PORT_Memset(&cipherInfo, 0, sizeof(cipherInfo));
arena = PORT_NewArena(BLTEST_DEFAULT_CHUNKSIZE);
cipherInfo.arena = arena;
finished = PR_FALSE;
nummodes = (numModes == 0) ? NUMMODES : numModes;
for (i=0; i < nummodes && !finished; i++) {
for (i=0; i < nummodes; i++) {
if (numModes > 0)
mode = modes[i];
else
@ -3017,13 +3028,11 @@ blapi_selftest(bltestCipherMode *modes, int numModes, int inoff, int outoff,
params = &cipherInfo.params;
/* get the number of tests in the directory */
sprintf(filename, "%s/tests/%s/%s", testdir, modestr, "numtests");
file = PR_Open(filename, PR_RDONLY, 00660);
if (!file) {
fprintf(stderr, "%s: File %s does not exist.\n", progName,filename);
return SECFailure;
if (ReadFileToItem(&item, filename) != SECSuccess) {
fprintf(stderr, "%s: Cannot read file %s.\n", progName, filename);
rv = SECFailure;
continue;
}
rv = SECU_FileToItem(&item, file);
PR_Close(file);
/* loop over the tests in the directory */
numtests = 0;
for (j=0; j<item.len; j++) {
@ -3048,8 +3057,6 @@ blapi_selftest(bltestCipherMode *modes, int numModes, int inoff, int outoff,
** Align the input buffer (plaintext) according to request
** then perform operation and compare to ciphertext
*/
/* XXX for now */
rv = SECSuccess;
if (encrypt) {
bltestCopyIO(arena, &cipherInfo.input, &pt);
misalignBuffer(arena, &cipherInfo.input, inoff);
@ -3059,11 +3066,10 @@ blapi_selftest(bltestCipherMode *modes, int numModes, int inoff, int outoff,
rv |= cipherDoOp(&cipherInfo);
rv |= cipherFinish(&cipherInfo);
rv |= verify_self_test(&cipherInfo.output,
&ct, mode, PR_TRUE, 0);
&ct, mode, PR_TRUE, SECSuccess);
/* If testing hash, only one op to test */
if (is_hashCipher(mode))
continue;
/*if (rv) return rv;*/
if (is_sigCipher(mode)) {
/* Verify operations support detached signature files. For
** consistency between tests that run Sign/Verify back to
@ -3079,8 +3085,6 @@ blapi_selftest(bltestCipherMode *modes, int numModes, int inoff, int outoff,
}
if (!decrypt)
continue;
/* XXX for now */
rv = SECSuccess;
/* Reverse Operation (Decrypt/Verify)
** Align the input buffer (ciphertext) according to request
** then perform operation and compare to plaintext
@ -3100,7 +3104,6 @@ blapi_selftest(bltestCipherMode *modes, int numModes, int inoff, int outoff,
rv |= cipherFinish(&cipherInfo);
rv |= verify_self_test(&cipherInfo.output,
&pt, mode, PR_FALSE, srv);
/*if (rv) return rv;*/
}
}
return rv;
@ -3128,7 +3131,7 @@ dump_file(bltestCipherMode mode, char *filename)
load_file_data(arena, &keydata, filename, bltestBase64Encoded);
key = dsakey_from_filedata(&keydata.buf);
dump_dsakey(key);
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
} else if (mode == bltestECDSA) {
ECPrivateKey *key;
load_file_data(arena, &keydata, filename, bltestBase64Encoded);
@ -3373,7 +3376,7 @@ enum {
opt_Key,
opt_HexWSpc,
opt_Mode,
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
opt_CurveName,
#endif
opt_Output,
@ -3426,7 +3429,7 @@ static secuCommandFlag bltest_options[] =
{ /* opt_Key */ 'k', PR_TRUE, 0, PR_FALSE },
{ /* opt_HexWSpc */ 'l', PR_FALSE, 0, PR_FALSE },
{ /* opt_Mode */ 'm', PR_TRUE, 0, PR_FALSE },
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
{ /* opt_CurveName */ 'n', PR_TRUE, 0, PR_FALSE },
#endif
{ /* opt_Output */ 'o', PR_TRUE, 0, PR_FALSE },
@ -3452,16 +3455,15 @@ static secuCommandFlag bltest_options[] =
int main(int argc, char **argv)
{
char *infileName, *outfileName, *keyfileName, *ivfileName;
SECStatus rv = SECFailure;
double totalTime;
double totalTime = 0.0;
PRIntervalTime time1, time2;
PRFileDesc *outfile = NULL;
bltestCipherInfo *cipherInfoListHead, *cipherInfo;
bltestCipherInfo *cipherInfoListHead, *cipherInfo = NULL;
bltestIOMode ioMode;
int bufsize, exponent, curThrdNum;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
char *curveName = NULL;
#endif
int i, commandsEntered;
@ -3506,8 +3508,6 @@ int main(int argc, char **argv)
cipherInfo = PORT_ZNew(bltestCipherInfo);
cipherInfoListHead = cipherInfo;
/* set some defaults */
infileName = outfileName = keyfileName = ivfileName = NULL;
/* Check the number of commands entered on the command line. */
commandsEntered = 0;
@ -3605,7 +3605,7 @@ int main(int argc, char **argv)
rv = blapi_selftest(modesToTest, numModesToTest, inoff, outoff,
encrypt, decrypt);
PORT_Free(cipherInfo);
return rv;
return rv == SECSuccess ? 0 : 1;
}
/* Do FIPS self-test */
@ -3695,7 +3695,7 @@ int main(int argc, char **argv)
else
exponent = 65537;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
if (bltest.options[opt_CurveName].activated)
curveName = PORT_Strdup(bltest.options[opt_CurveName].arg);
else
@ -3707,8 +3707,10 @@ int main(int argc, char **argv)
fprintf(stderr, "%s: You must specify a signature file with -f.\n",
progName);
print_usage:
PORT_Free(cipherInfo);
print_usage:
if (cipherInfo) {
PORT_Free(cipherInfo);
}
Usage();
}
@ -3783,7 +3785,7 @@ int main(int argc, char **argv)
file = PR_Open("tmp.key", PR_WRONLY|PR_CREATE_FILE, 00660);
}
params->key.mode = bltestBase64Encoded;
#ifdef NSS_ENABLE_ECC
#ifndef NSS_DISABLE_ECC
pubkeyInitKey(cipherInfo, file, keysize, exponent, curveName);
#else
pubkeyInitKey(cipherInfo, file, keysize, exponent);

View File

@ -0,0 +1 @@
AzZ2PpZtkllaVnzJzlN/Xg==

View File

@ -0,0 +1,3 @@
eykx9YVfcXFF4A8VKp9HlDWbH/yz5V9ZTjMJi1HCOmx0oGwdlP3tf9KuQsfbesrv
WETLM67dxoUlhe0AIKZpnSy1OAnO/RaRSM5CKSr6sGNEOXgwbFgsGLnODaPQhM5N
PEgs/Y/PGoUITon7iLQKCE1elyRm0HZmEm+3YfhAePI=

View File

@ -0,0 +1,3 @@
sJUS8+/57Q2FiQmDpz2tu3w2eNUlgb5kqKj8WG9JDyUhKXpHigWYBA69D1UJ+vsJ
afnZ5gDq7zOxuT7tmWh7Fn+JpQZarEOc5G87jSLTCGXmTkXvjNMLaYQ1OoRKEcjN
YNug6IZrPuMNJLP6imQ7MoNT4GAQ+oJzyP1U7woraTDlUgquXNWQL5uGozWSykNl

View File

@ -0,0 +1,4 @@
a+ihKABFWjIFOIU+DLoxvS2A6gyFFkpMXCYa5IVBfZPv/i68DQoLUdbqGGM9IQz2
PAxN28J2B/LoHtkRMZHvhtVvO5m+bEFaQVApn7hGznFgtAtjuvEXnRknWi6DaYN2
0ouSVIxo4G5tmU4sFQHtKXAU5wLN7+4vZWRHcGAJYU2AHeHKr3P4t/pWzxupS2MZ
M7vld2JDgIUPEXQ1oDVbKw==

View File

@ -0,0 +1 @@
UdRHefkNQKgASCdsA1y0nKKke8ubnPcnC5FEeTeH1T8=

View File

@ -0,0 +1,2 @@
1fVYl2C/nHYiKP3iNt4fot0trUSNs/qb4MQZbv1Go1yE3RrHfZ21jJWRjLMXpkMK
CNL7ao6LDxybcsejRNw0nw==

View File

@ -0,0 +1,2 @@
dTlZdL0ys2ZWVKbI45a4iuNLEjV1hyp6tofY52tG35EailkM0B0vXDML46Zibp3T
ql4Q7RTo/4KYEbb+1Q8/UzykOFocvKePXEdE5Q8vg1kWXCSF0TJOdsPq52oMysYp

View File

@ -0,0 +1,3 @@
gVjiFCDyW1nWrpQ/ocvyHwLpefQZ2rASanIbfu9Vvumtl/XM/30jkFe7wZqMN4FC
92cvHV5+F9e+vLAHDoNVys5mYBcaU7YYFq6CSm72nORwtv/TtbtLQ4h02R0nhU07
byWGDTholY3jMH1isTOb3duKMYwM4PM8F8rw6fYECCA=

View File

@ -0,0 +1,3 @@
km2ySMwbog8MV2MafIrvCU95GTe5BZSeNGAkDov6b6SDEVobMQtuQ2nK68UmKIg3
ex3apYAOpJaivf8PmhAx5xKcmiDjViHn8Li6yg2HAw8q58qFk8hZlnegb9SyYAnq
0I/srCTKqc8srTtHDIInQVp7Hg8uqz+tltcKIJyLsmxidnfiUxuUNcpuPERNGVtf

View File

@ -0,0 +1,4 @@
yCzyxHbeqMtqbmB6QNLwORvoLqnshKU3poIPmvuZe3Y5fQBUJPqmp03E6MeqSokA
aQ+JS20dyoBnU5PSJDrax2LxWTAeNX6YtyR2IxDNWnuv4cKgMNukb9k6n9uJzBMs
qcF9xyAx7Ggi7lqdmdvKZseEwBsIhcu2LinZeAGSfsQVpdIVFY0yX57miUN60bdo
StM8DZJzlFGsh/Of+MMbhA==

View File

@ -0,0 +1 @@
L6Dfciqf07ZMsY+ys9tV/yJnQidXKJQT+PZXUHQSpkw=

View File

@ -0,0 +1 @@
qaFjG/SZaVTrwJOVeyNFiQ==

View File

@ -0,0 +1,2 @@
BdXHdylCGwi3N+QRGfpEONH1cMx3Kk1sPff/7aA4TvhCiM43/ExMfRElpJmwUTZM
OJ/WOb3aZH2qO9rasutVlA==

View File

@ -0,0 +1,2 @@
rD1tuv4uD3QGMv2eggv2BEzVsVUcu5zAPAslw5zLfzO4Oqz8pAoyZfK7/4eRU0SK
ysuI/Ps7t7EP5GOmjAEJ8Cg4Lj5VexrfAu1kira7iV3wIF0m67+ppf2M69jkvuPc

View File

@ -0,0 +1,3 @@
kLe5YwojePU/UBq3vv8DkVUAgHG8hDjniZMs/T6xKZGVRl5mM4SUY/20Q3Unji/b
ExCCHmSSz4D/Fct3JQn7Qm867uJ71JOIgv0q5rW9nZH6SkOxe7Q5675ZwEIxAWOo
Kl/lOIeW7uNaGBoScfAL4puFLY+nWbrQH/RnjwEFlM0=

View File

@ -0,0 +1,3 @@
AlSyNGO8q+xaOV63TI+w6xN6B7xvXp9h7AsFfeMFcU+PopQiHJGhWcMVk5uB4wDu
kCGS7F8VJUQo2HcveTJOxDKYyiHACzcCc+5eXtkOQ++h4FpdFxIJ/jT58pI326Km
cmZQ/TsTIXR9EgiGPGw8az4th5q18leC8Iuo8qu+Y+C+20oifoGvs2u2ZFUINW00

View File

@ -0,0 +1,4 @@
/Fhz5Q3o+vTGuEunB7CFTp25qy6ffXB/u6M4xoQ6GPxvrOuvZj0mKW+zKbTSbxhJ
THngnneWR/m6+odIljDXn0MBYQwjAMGdvzFIt8rIxPSUQQJ1TzMukrb3xedbxhee
uHegeNRxkAkCF0TBTxP9KlWiucRNGAAGhahFpPYyx8VqdzBu+maiTQXQiNzXwT/i
T8RHJ1ll255NN/vJMERIzQ==

View File

@ -0,0 +1 @@
J1z8BBPYzLcFE8OFmx0Pcg==

View File

@ -0,0 +1 @@
ybgTX/G1rcQT39BTshvZbQ==

View File

@ -0,0 +1 @@
XJ2ETtRvmIUIXl1qT5TH1w==

View File

@ -0,0 +1 @@
qf91vXz2YT03Mcd8O20MBA==

View File

@ -0,0 +1 @@
xNxh2XJZZ6MCAQSpc48jhoUnzoOaqxdS/YvblagsTQA=

View File

@ -0,0 +1,2 @@
Gblgl3LGPzOGCL9utSyhC+ZQl/icHgkFxCQB/Ud5GuLFRAstRzEWyni9n/L7YBXP
0xZSTq59y5Wuc46+roSkZw==

View File

@ -0,0 +1,2 @@
O4YRv8SXPFzY6YKwc7MxhM0mEQFZFy5EmI61/1ZhoeFvrWclj8v+5VRpJnoS3DdI
k7TjUz029WNMMJVYNZbxNaqM0RONyJi8VlHuNakuv4mrautTZmU7xgpw4AdPwR7+

Binary file not shown.

View File

@ -0,0 +1 @@
檠4馬\ミョ凌XS,エ刀

View File

@ -0,0 +1 @@
$_&[v腚马誓

View File

@ -0,0 +1 @@
╩К/╚╢H╞└≈√$Jв

View File

@ -0,0 +1 @@
<EFBFBD>f~庚y`<60>[」<>

View File

@ -0,0 +1 @@
戯ノ 彝惠9淆ホ<8

View File

@ -0,0 +1 @@
6κΈƒ―ο“lΓ<EFBFBD>c(FΝ

View File

@ -0,0 +1 @@
闳浶椕<EFBFBD>鯫H佦m库

View File

@ -0,0 +1 @@
<EFBFBD><EFBFBD>(3<>E <1D><17><><EFBFBD><

View File

@ -0,0 +1 @@
$@Ђ8,Ка{¶cUБ

View File

@ -0,0 +1 @@
<EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><EFBFBD>7<EFBFBD>Equ<EFBFBD>W<><57>

Binary file not shown.

View File

@ -0,0 +1 @@
ÀÍ+ëÌ»lI ÕH*ÇVè

View File

@ -0,0 +1,2 @@
³Ë—¨
S™¸ÂE ;“•

View File

@ -0,0 +1 @@
LïüYcÔY`&u>I

Binary file not shown.

View File

@ -0,0 +1 @@
же<EFBFBD>ИЯыгЖъЁЕ?~с

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
ェムX<ルe羹/ 40ミeサ

View File

@ -0,0 +1 @@
È ]‹± `iŸ|—J 

View File

@ -0,0 +1 @@
e<EFBFBD><EFBFBD>60<EFBFBD>ָB<02><EFBFBD>z

Binary file not shown.

View File

@ -0,0 +1 @@
ÄÊ1ùEŽ)©%ìU<C3AC>x

View File

@ -0,0 +1 @@
<EFBFBD>}qーMnーjhワjq<6A>

View File

@ -0,0 +1 @@
,A7QĂ'0W Ł6xk

View File

@ -0,0 +1 @@
<EFBFBD>X<1A>s<EFBFBD><73><1C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Q<11>.k!

View File

@ -0,0 +1 @@
{±{M÷…i~¬Ï–˜âËuæy|é5Ë

View File

@ -0,0 +1 @@
ãþÌuðZ ³ƒßÓ‰£Ó<ɸT³²TÀô

Binary file not shown.

View File

@ -0,0 +1 @@
<EFBFBD><EFBFBD><EFBFBD><g<>)N<><4E>f<EFBFBD><66><EFBFBD>OE<4F>(<28><><EFBFBD><EFBFBD>3<EFBFBD>

View File

@ -0,0 +1 @@
ćJŞUWíÁk,jMK^î

View File

@ -0,0 +1 @@
ÜâlkLû(eÚNìÒÏþlßC_w´`gÔ<E280BA>®

Binary file not shown.

View File

@ -0,0 +1 @@
“˙cqŻj[Ž<>¬ßZ=KŻŃŻµsľzŢž†ćcĺ

View File

@ -0,0 +1,2 @@
s¸תנ 3¬™…\צשיה…i
Y₪†<E282AA>MֿHׂת®*

View File

@ -0,0 +1 @@
E<EFBFBD>g<EFBFBD>!- <20><><EFBFBD>9 eX-<2D><><EFBFBD><EFBFBD><EFBFBD>"<22><><EFBFBD>8<EFBFBD><38>R&

View File

@ -0,0 +1 @@
ÒA-°„]„ås+½d)WG;<3B>û™Êÿpç ÁÛì‰

View File

@ -0,0 +1 @@
HľY~c,w#$ČÓúśZžÍě] ;ţĂvĹS+

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More