Compare commits

..

64 Commits

Author SHA1 Message Date
scullin
c515100b8e Preparing to land.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@2404 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-27 21:58:34 +00:00
scullin
fe0f4d855f Landing modular netlib on Window.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@2236 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-23 01:38:10 +00:00
rpotts
3d4019f9c4 Allow POSTing to work...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1810 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-18 07:17:46 +00:00
hardts
9d96048a4b disable plugins
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1775 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 20:29:49 +00:00
rpotts
ae5d3bac86 Refactored streams to support the new nsIBaseStream and nsIOutputStream interfaces...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1724 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:38:22 +00:00
rpotts
dd5a8c0dfa Added support for calling nsIProtocolConnection before NET_GetURL(...) is called... Added a status argument to OnStopBinding(...)
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1723 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:37:40 +00:00
rpotts
a5f43d2a13 Added status code to OnStopBinding(...) and provided the buffer offset argument for the nsIOutputStream interface...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1722 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:36:23 +00:00
rpotts
897d60bb73 Added support for files of type xpFileToPost...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1721 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:35:15 +00:00
rpotts
fd1359cac8 Added a status code argument to OnStopBinding(...)
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1720 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:34:39 +00:00
rpotts
aa88ba7591 nsURLImpl now aggregates the nsHttpUrl object (for http urls). This makes the IPostToServer and IHttpUrl interfaces available...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1719 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:33:33 +00:00
rpotts
0c9f6e6d80 Added new exports and nsHttpUrl.cpp
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1718 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:28:41 +00:00
rpotts
f635646933 Protocol helper object for HTTP URLs...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1717 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:27:23 +00:00
rpotts
74a41b1364 interface which allows a URL protocol helper object to modify the underlying Netlib URL_Struct before NET_GetURL(...) is called
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1716 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:25:47 +00:00
rpotts
dddf36e52d Public interface exposing HTTP specific functionality available from http URLs
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1715 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:24:09 +00:00
rpotts
42f1218f94 Public interface for sending data to a server
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1714 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-15 09:23:23 +00:00
rpotts
9369584965 Started to wire in OnProgress(...) notifications. Added support for canceling network connections by clising the InputStream...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1391 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 20:29:42 +00:00
rpotts
644d7cd9c7 starting to wire in OnProgress(...) notifications...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1390 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-11 20:23:48 +00:00
rpotts
cac7b720c3 Added length argument to nsIStreamListener::OnDataAvailable(...). file: and resource: protocols are now processed by libnet
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1222 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 06:51:15 +00:00
rpotts
371d44de72 export the new nsIStreamListener interface not nsIStreamNotification...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1197 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 23:06:36 +00:00
rpotts
d5840939c7 renamed the nsIStreamNotification interface to nsIStreamListener
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1195 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 22:16:02 +00:00
rpotts
2a50f93567 Added support for async URL opening...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1190 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-06 21:19:07 +00:00
rpotts
d2a75afae6 Fixed up reference counting on the nsConnectionInfo...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1050 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-02 00:03:44 +00:00
hardts
8f2a603835 NET_GetRegConverterList and NET_GetDataObject protos don't match actual implementation, XP_List vs. PLList
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@1036 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 22:46:46 +00:00
rpotts
d9babead55 export the nsIURL.h header...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@991 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 05:34:43 +00:00
rpotts
daa26a48be fixes for nsURL being part of netlib...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@978 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:50:43 +00:00
rpotts
be77d90b49 The nsIURL object is now provided and used by netlib...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@977 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:48:33 +00:00
rpotts
e2793376a7 these files were moved from mozilla/base/src
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@976 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 04:46:44 +00:00
rpotts
6d54e5f6e3 added SECNAV stubs that were removed, but were still necessary...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@861 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:21:12 +00:00
scullin
b0db9a4acd strcasecomp -> PL_strcasecmp
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@860 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:03:53 +00:00
scullin
a7a9a03946 Fix missing symbol
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@859 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 19:00:45 +00:00
scullin
5340ef2b1b Fix build bustage.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@824 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 01:34:47 +00:00
scullin
1043bb4cc9 Fix build problems.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@823 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 01:31:05 +00:00
scullin
9cb908ce37 Fix merge conflicts
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@817 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:55:25 +00:00
hardts
93cf7025ed some functions have been moved to mkutils.c
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@816 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:48:40 +00:00
hardts
42b35681a2 bug fixes for doubly linked list
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@815 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-29 00:47:25 +00:00
ltabb
bd2471c41c scullin wackage
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@792 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 21:38:07 +00:00
ltabb
3231691800 scullins broken changes
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@783 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 19:16:17 +00:00
ltabb
2bdd74e814 scullins changes
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@781 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 19:01:13 +00:00
ltabb
97b4b7a6d1 wills changes
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@779 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 18:38:44 +00:00
ltabb
55369bada1 scullins changes
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@777 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 18:18:08 +00:00
(no author)
82ed1f72bb This commit was manufactured by cvs2svn to create branch
'MODULAR_NETLIB_BRANCH'.

git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@753 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 07:53:29 +00:00
scullin
52d02fe072 Linux build fixes.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@553 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-23 19:00:38 +00:00
scullin
11e91b2751 IRIX build fixes
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@469 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 20:08:55 +00:00
scullin
9c6ac35617 Removed NSPR20 ifdefs
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@467 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-21 18:28:21 +00:00
rpotts
50054acba1 fixed data corruption bug...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@316 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 22:18:08 +00:00
rpotts
79a4c9490b Added doc++ to the public interfaces...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@297 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-15 07:59:11 +00:00
scullin
c181b6d7f9 IRIX build fixes.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@224 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:58:11 +00:00
scullin
a5e5b98ad8 IRIX build fixes
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@223 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 01:55:01 +00:00
kipp
f453d81444 build lib during libs phase
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@166 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:25:17 +00:00
rpotts
05cb725cfb clean up... I cannot sign these files because they are on a branch *only*
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@155 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-11 07:00:23 +00:00
scullin
46d5611628 Don't need xp_str.c or xp_list.c anymore.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@146 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 18:55:39 +00:00
scullin
d9a5e647f5 NET_SA* and NET_BA* files come home to roost, along with some other
odd functions I just couldn't bring myself to try to put in nspr.


git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@145 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 18:55:15 +00:00
scullin
6c07a2ca66 Whacked xp_bool, xp_str functions, xp_list and some other xp stuff.
Added some stuff that should migrate to nspr here for now.


git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@144 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 18:47:19 +00:00
rpotts
3c5574eb6e never read more data than was requested!
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@143 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 07:00:43 +00:00
rpotts
fee6fe5171 changed user agent to Mozilla/5.0
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@142 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 06:58:45 +00:00
rpotts
46e818474a treat a stream abort the same as a stream closing...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@141 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-10 06:55:17 +00:00
rpotts
ac3fe4623e return a data length of 0 (not -1) when EOF is hit...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@133 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 05:43:18 +00:00
rpotts
e5430a78e1 close the input stream if the URL exit proc is called (due to a URL loading error) instead of the streams complete function...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@132 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 05:41:45 +00:00
rpotts
e8ecd3ec68 Moving standalone netlib work from /m/src to pub.
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@119 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-09 00:25:02 +00:00
rpotts
86e542aa90 Moving standalone netlib work from /m/src into pub
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@116 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 23:56:48 +00:00
rpotts
35f45baaed Moving standalone netlib work from /m/src to pub...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@112 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 23:07:04 +00:00
rpotts
e72757dc16 removed CRs
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@111 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 21:47:25 +00:00
rpotts
f7ac2222ef Moving standalone netlib work from /m/src to the pub tree...
git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@110 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 21:42:24 +00:00
(no author)
4099eb2ef3 This commit was manufactured by cvs2svn to create branch
'MODULAR_NETLIB_BRANCH'.

git-svn-id: svn://10.0.0.236/branches/MODULAR_NETLIB_BRANCH@95 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-08 04:38:33 +00:00
406 changed files with 29185 additions and 38168 deletions

3875
mozilla/cmd/winfe/fegui.cpp Executable file

File diff suppressed because it is too large Load Diff

2031
mozilla/cmd/winfe/nsapp.cpp Normal file

File diff suppressed because it is too large Load Diff

123
mozilla/cmd/winfe/stdafx.h Normal file
View File

@@ -0,0 +1,123 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef STDAFX_PCH
#define STDAFX_PCH
#define OEMRESOURCE
#if defined(DEBUG_blythe)
// Set up a flag specific to WFE developers in the client
#define DEBUG_WFE
#endif
/* Very windows specific includes.
*/
/* MFC, KFC, RUN DMC, whatever */
#include <afxwin.h>
#include <afxext.h>
#include <afxpriv.h>
#include <afxole.h>
#include <afxdisp.h>
#include <afxodlgs.h>
#ifdef _WIN32
#include <afxcmn.h>
#endif
/* More XP than anything */
#include "xp.h"
#include "fe_proto.h"
#include "fe_rgn.h"
#include "libi18n.h"
#include "xlate.h"
#include "ntypes.h"
#ifdef EDITOR
#include "edttypes.h"
#endif
#include "xpassert.h"
#include "lo_ele.h"
#include "layers.h"
/* Standard C includes */
#ifndef _WIN32
#include <dos.h>
#endif
#include <malloc.h>
#include <direct.h>
#include <stdarg.h>
#include <time.h>
#include <io.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#ifdef DEBUG
#include <assert.h>
#endif
/* Very windows specific includes.
*/
/* WFE needs a layout file */
extern "C" {
#include "layout.h"
}
/* Some common defines. */
#ifndef _AFXDLL
#define new DEBUG_NEW
#endif
/* All front end forward declarations needed to compile. */
#include "forward.h"
/* Front end Casting macros. */
#include "cast.h"
/* General purpose utilities. */
#include "feutil.h"
/* afxData/sysInfo */
#include "sysinfo.h"
/* Some defines we like everywhere. */
#include "resource.h"
#include "defaults.h"
/* The application include and
* Commonly used, rarely changed headers */
#include "ncapiurl.h"
#include "genedit.h"
#include "genframe.h"
#include "genview.h"
#include "gendoc.h"
#include "intlwin.h"
#include "mozilla.h"
#include "cxwin.h"
#include "winproto.h"
#ifdef DEBUG
#ifdef assert
#undef assert
#endif
#define assert(x) ASSERT(x)
#endif
#endif /* STDAFX_PCH */

View File

@@ -1,169 +0,0 @@
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
pref("editor.html_editor", "");
pref("editor.image_editor", "");
pref("editor.author", "");
pref("editor.auto_save_delay", 10); // minutes
pref("editor.html_editor", "");
pref("editor.image_editor", "");
pref("editor.fontsize_mode", 0);
pref("editor.template_location", "http://home.netscape.com/home/gold3.0_templates.html");
pref("editor.default_template_location", "http://home.netscape.com/home/gold3.0_templates.html");
pref("editor.template_last_loc", "");
pref("editor.template_history_0", "");
pref("editor.template_history_1", "");
pref("editor.template_history_2", "");
pref("editor.template_history_3", "");
pref("editor.template_history_4", "");
pref("editor.template_history_5", "");
pref("editor.template_history_6", "");
pref("editor.template_history_7", "");
pref("editor.template_history_8", "");
pref("editor.template_history_9", "");
pref("editor.template_history_10", "");
pref("editor.template_history_11", "");
pref("editor.template_history_12", "");
pref("editor.template_history_13", "");
pref("editor.template_history_14", "");
pref("editor.template_history_15", "");
pref("editor.template_history_16", "");
pref("editor.template_history_17", "");
pref("editor.template_history_18", "");
pref("editor.template_history_19", "");
pref("editor.url_history.TITLE_0", "");
pref("editor.url_history.TITLE_1", "");
pref("editor.url_history.TITLE_2", "");
pref("editor.url_history.TITLE_3", "");
pref("editor.url_history.TITLE_4", "");
pref("editor.url_history.TITLE_5", "");
pref("editor.url_history.TITLE_6", "");
pref("editor.url_history.TITLE_7", "");
pref("editor.url_history.TITLE_8", "");
pref("editor.url_history.TITLE_9", "");
pref("editor.url_history.URL_0", "");
pref("editor.url_history.URL_1", "");
pref("editor.url_history.URL_2", "");
pref("editor.url_history.URL_3", "");
pref("editor.url_history.URL_4", "");
pref("editor.url_history.URL_5", "");
pref("editor.url_history.URL_6", "");
pref("editor.url_history.URL_7", "");
pref("editor.url_history.URL_8", "");
pref("editor.url_history.URL_9", "");
localDefPref("editor.html_directory", "C:\\My Documents");
localDefPref("editor.image_directory", "C:\\My Documents");
localDefPref("editor.background_image", "");
pref("editor.last_pref_page", 0);
pref("editor.last_text_page", 0);
pref("editor.last_doc_page", 0);
pref("editor.last_table_page", 0);
pref("editor.use_custom_colors", false);
pref("editor.use_background_image", true);
pref("editor.publish_keep_links", true);
pref("editor.publish_keep_images", true);
pref("editor.show_copyright", true);
pref("editor.show_character_toolbar", true);
pref("editor.show_paragraph_toolbar", true);
pref("editor.text_color", "#000000");
pref("editor.link_color", "#0000FF");
pref("editor.active_link_color", "#000088");
pref("editor.followed_link_color", "#FF0000");
pref("editor.background_color", "#FFFFFF");
pref("editor.auto_save", false);
pref("editor.javascript_color", "#FF0000");
pref("editor.color_scheme", "Netscape Default Colors");
pref("editor.hints.bookmark", true);
pref("editor.hints.image", true);
pref("editor.hints.sitemanager", true);
pref("editor.hints.copyright", true);
pref("editor.hints.removelinks", true);
localDefPref("editor.hrule.height", 2);
localDefPref("editor.hrule.width", 100);
pref("editor.hrule.width_percent", true);
pref("editor.hrule.shading", true);
pref("editor.hrule.align", 0); // match types in edttypes.h ED_ALIGN_CENTER
pref("editor.publish_username", "");
pref("editor.publish_password", "");
pref("editor.publish_save_password", false);
pref("editor.publish_location", "");
pref("editor.publish_browse_location", "");
pref("editor.publish_last_loc", "");
pref("editor.publish_last_pass", "");
pref("editor.publish_history_0", "");
pref("editor.publish_history_1", "");
pref("editor.publish_history_2", "");
pref("editor.publish_history_3", "");
pref("editor.publish_history_4", "");
pref("editor.publish_history_5", "");
pref("editor.publish_history_6", "");
pref("editor.publish_history_7", "");
pref("editor.publish_history_8", "");
pref("editor.publish_history_9", "");
pref("editor.publish_history_10", "");
pref("editor.publish_history_11", "");
pref("editor.publish_history_12", "");
pref("editor.publish_history_13", "");
pref("editor.publish_history_14", "");
pref("editor.publish_history_15", "");
pref("editor.publish_history_16", "");
pref("editor.publish_history_17", "");
pref("editor.publish_history_18", "");
pref("editor.publish_history_19", "");
pref("editor.publish_password_0", "");
pref("editor.publish_password_1", "");
pref("editor.publish_password_2", "");
pref("editor.publish_password_3", "");
pref("editor.publish_password_4", "");
pref("editor.publish_password_5", "");
pref("editor.publish_password_6", "");
pref("editor.publish_password_7", "");
pref("editor.publish_password_8", "");
pref("editor.publish_password_9", "");
pref("editor.publish_password_10", "");
pref("editor.publish_password_11", "");
pref("editor.publish_password_12", "");
pref("editor.publish_password_13", "");
pref("editor.publish_password_14", "");
pref("editor.publish_password_15", "");
pref("editor.publish_password_16", "");
pref("editor.publish_password_17", "");
pref("editor.publish_password_18", "");
pref("editor.publish_password_19", "");
pref("editor.custom_color_0", "0,0,0");
pref("editor.custom_color_1", "99,0,0");
pref("editor.custom_color_2", "CC,0,0");
pref("editor.custom_color_3", "FF,0,0");
pref("editor.custom_color_4", "0,99,0");
pref("editor.custom_color_5", "0,CC,0");
pref("editor.custom_color_6", "0,FF,0");
pref("editor.custom_color_7", "0,0,99");
pref("editor.custom_color_8", "0,0,CC");
pref("editor.custom_color_9", "0,0,FF");
pref("editor.last_color_picked", "0,0,0");
pref("editor.last_background_color_picked", "255,255,255");
pref("editor.new_cell_has_space", true);

View File

@@ -1,101 +0,0 @@
#
# This is a list of local files which get copied to the mozilla:dist directory
#
abcom.h
abdefn.h
addrbook.h
allxpstr.h
bkmks.h
cdefs.h
cgi.h
client.h
csid.h
ctxtfunc.h
dirprefs.h
ds.h
dserr.h
edt.h
edttypes.h
fe_proto.h
fe_rgn.h
fullsoft.h
garray.h
glhist.h
gui.h
hotlist.h
imap.h
intl_csi.h
itapefs.h
libcnv.h
libc_r.h
libevent.h
libi18n.h
libmime.h
libmocha.h
libnet.h
libstyle.h
lo_ele.h
mcom_db.h
mcom_ndbm.h
merrors.h
mime.h
mimeenc.h
minicom.h
mk_cx_fn.h
msgcom.h
msgmapi.h
msgnet.h
msgtypes.h
msg_filt.h
msg_srch.h
m_cvstrm.h
ncompat.h
net.h
np.h
npapi.h
npassoc.h
nsldap.h
nslocks.h
ntos.h
ntypes.h
pics.h
prefetch.h
proto.h
pwcacapi.h
resdef.h
shist.h
shistele.h
shr_str.h
spellchk.h
structs.h
undo.h
unix-dns.h
vcc.h
vobject.h
winfile.h
xlate.h
xp.h
xpassert.h
xpgetstr.h
xplocale.h
xp_core.h
xp_debug.h
xp_error.h
xp_file.h
xp_hash.h
xp_help.h
xp_list.h
xp_mcom.h
xp_md5.h
xp_mem.h
xp_mesg.h
xp_ncent.h
xp_qsort.h
xp_rgb.h
xp_sec.h
xp_str.h
xp_thrmo.h
xp_time.h
xp_trace.h
xupfonts.h

View File

@@ -18,3 +18,5 @@
#
DEPTH = ..
include $(DEPTH)/config/rules.mk

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -97,11 +97,13 @@
#define CS_KOI8_R (SINGLEBYTE | 39) /* 39 */
#define CS_MAC_CYRILLIC (SINGLEBYTE | 40) /* 40 */
#define CS_CP_1251 (SINGLEBYTE | 41) /* 41 */
#define CS_CP_1251 (SINGLEBYTE | 41) /* 41 CP1251 Windows Cyrillic */
#define CS_MAC_GREEK (SINGLEBYTE | 42) /* 42 */
#define CS_CP_1253 (SINGLEBYTE | 43) /* 43 */
#define CS_CP_1250 (SINGLEBYTE | 44) /* 44 */
#define CS_CP_1254 (SINGLEBYTE | 45) /* 45 */
/* CS_CP_1253 should be deleted, we should use CS_8859_7 instead */
#define CS_CP_1253 (SINGLEBYTE | 43) /* 43 CP1253 Windows Greek */
#define CS_CP_1250 (SINGLEBYTE | 44) /* 44 CP1250 Windows C. Europe */
/* CS_CP_1254 should be deleted, we should use CS_8859_9 instead */
#define CS_CP_1254 (SINGLEBYTE | 45) /* 45 CP1254 Windows Turkish */
#define CS_MAC_TURKISH (SINGLEBYTE | 46) /* 46 */
#define CS_GB2312_11 (MULTIBYTE | 47) /* 303 */
#define CS_JISX0208_11 (MULTIBYTE | 48) /* 304 */
@@ -119,38 +121,7 @@
#define CS_CP_874 (SINGLEBYTE | 60) /* 60 PC Thai */
#define CS_CP_1257 (SINGLEBYTE | 61) /* 61 Windows Baltic */
#define CS_CP_1258 (SINGLEBYTE | 62) /* 62 Windows Vietnamese */
#define CS_ARMSCII8 (SINGLEBYTE | 63) /* 63 Armenian ArmSCII-8 */
#define CS_HZ (STATEFUL | 64) /* 576 */
#define CS_ISO_2022_CN (STATEFUL | 65) /* 577 */
#define CS_GB13000 (MULTIBYTE | 66) /* 322 */
#define CS_BIG5_PLUS (MULTIBYTE | 67) /* 323 */
#define CS_UHC (MULTIBYTE|CS_SPACE | 68) /* 1348 cp949 */
#define CS_CNS11643_3 (MULTIBYTE | 69) /* 325 */
#define CS_CNS11643_4 (MULTIBYTE | 70) /* 326 */
#define CS_CNS11643_5 (MULTIBYTE | 71) /* 327 */
#define CS_CNS11643_6 (MULTIBYTE | 72) /* 328 */
#define CS_CNS11643_7 (MULTIBYTE | 73) /* 329 */
#define CS_CNS11643_8 (MULTIBYTE | 74) /* 330 */
#define CS_CNS11643_9 (MULTIBYTE | 75) /* 331 */
#define CS_CNS11643_10 (MULTIBYTE | 76) /* 332 */
#define CS_CNS11643_11 (MULTIBYTE | 77) /* 333 */
#define CS_CNS11643_12 (MULTIBYTE | 78) /* 334 */
#define CS_CNS11643_13 (MULTIBYTE | 79) /* 335 */
#define CS_CNS11643_14 (MULTIBYTE | 80) /* 336 */
#define CS_CNS11643_15 (MULTIBYTE | 81) /* 337 */
#define CS_CNS11643_16 (MULTIBYTE | 82) /* 338 */
#define CS_VISCII ( 83) /* 83 */
#define CS_VIQR ( 84) /* 84 */
#define CS_KOI8_U ( 85) /* 85 */
#define CS_ISO_IR_111 ( 86) /* 86 */
#define CS_8859_6_I ( 87) /* 87 */
#define CS_8859_6_E ( 88) /* 88 */
#define CS_8859_8_I ( 89) /* 89 */
#define CS_8859_8_E ( 90) /* 90 */
#define CS_JOHAB (MULTIBYTE | 91) /* 91 cp1361 */
#define CS_JOHABFONT (MULTIBYTE | 92) /* 92 hangterm font*/
#define INTL_CHAR_SET_MAX 93 /* must be highest + 1 */
#define INTL_CHAR_SET_MAX 63 /* must be highest + 1 */
#define CS_USER_DEFINED_ENCODING (SINGLEBYTE | 254) /* 254 */
@@ -209,11 +180,10 @@
57 CS_CP_862 57
58 CS_CP_864 58
59 CS_CP_866 59
60 CS_CP_874 60
61 CS_CP_1257 61
62 CS_CP_1258 62
63 CS_ARMSCII8 63
64 INTL_CHAR_SET_MAX 64
59 CS_CP_874 60
60 CS_CP_1257 61
61 CS_CP_1258 62
62 INTL_CHAR_SET_MAX 63
254 CS_USER_DEFINED_ENCODING 254
255 CS_UNKNOWN 255
260 CS_SJIS 260

View File

@@ -304,11 +304,7 @@ XP_Bool EDT_IsDraggingTable( MWContext *pContext );
void EDT_DoubleClick( MWContext *context, int32 x, int32 y );
void EDT_SelectObject( MWContext *context, int32 x, int32 y);
EDT_ClipboardResult EDT_ReturnKey( MWContext *pContext );
/* Indent one level after doing regular ReturnKey processing
* Makes typing in lists easier
*/
EDT_ClipboardResult EDT_ReturnKeyAndIndent( MWContext *pContext );
EDT_ClipboardResult EDT_ReturnKey( MWContext *context );
/* Do what the TAB key should do
* Moves from cell to cell in Tables (in direction given by bForward)
@@ -410,17 +406,9 @@ ED_ElementType EDT_GetCurrentElementType( MWContext *pContext );
*/
ED_TextFormat EDT_GetCharacterFormatting( MWContext *pContext );
void EDT_FormatCharacter( MWContext *pContext, ED_TextFormat p);
/* Next 4 use the older "relative" scale of 1 to 7 */
/* Decrease or increase by 1 unit
* Goes through selection to keep relative size differences
*/
void EDT_DecreaseFontSize( MWContext *pContext );
void EDT_IncreaseFontSize( MWContext *pContext );
/* These use the older "relative" scale of 1 to 7 */
int EDT_GetFontSize( MWContext *pContext );
void EDT_SetFontSize( MWContext *pContext, int iSize );
void EDT_SetFontSize( MWContext *pContext, int );
/* These use the new absolute point size*/
void EDT_SetFontPointSize( MWContext *pContext, int iPoints );
@@ -484,18 +472,6 @@ char * EDT_TranslateToXPFontFace( char * pFontFace );
XP_Bool EDT_GetFontColor( MWContext *pContext, LO_Color *pDestColor );
void EDT_SetFontColor( MWContext *pContext, LO_Color *pColor);
/* Get the current Cell, Table, or Page background based on caret location
* Returns the element type of the background we obtained, one of:
* ED_ELEMENT_NONE if error,
* ED_ELEMENT_TEXT (for page background)
* ED_ELEMENT_TABLE or ED_ELEMENT_CELL for table and cell
*/
ED_ElementType EDT_GetBackgroundColor( MWContext *pContext, LO_Color *pColor );
/* Set the selected cell or table's background, or current cell (contains caret)
or the page background (caret is not in a table) */
void EDT_SetBackgroundColor( MWContext *pContext, LO_Color *pColor );
/* Parse a font colors string in the format: "r,g,b,ColorName" where colors for r,g,b
* are decimal strings in range 0-255
* Returns pointer (within supplied string) to the Color Name
@@ -588,11 +564,6 @@ XP_Bool EDT_SelectionContainsLink( MWContext *pContext );
*/
char *EDT_GetTabDelimitedTextFromSelectedCells( MWContext *pContext );
/* Test if there's a selection, and the beginning and end are not
* split across a cell boundary
*/
XP_Bool EDT_CanConvertTextToTable(MWContext *pMWContext);
/* Convert Selected text into a table (put each paragraph in separate cell)
* Number of rows is automatic - creates as many as needed
*/

View File

@@ -330,6 +330,7 @@ struct _EDT_TableData {
int32 iBorderWidth;
int32 iCellSpacing;
int32 iCellPadding;
int32 iInterCellSpace;
XP_Bool bWidthDefined;
XP_Bool bWidthPercent;
int32 iWidth;
@@ -346,6 +347,14 @@ struct _EDT_TableData {
typedef struct _EDT_TableData EDT_TableData;
/* iTableMode param for SetTableMode() */
#define ED_TABLE_PERCENT 0x0001 /* Convert table and all cells to use % of parent width */
#define ED_TABLE_PIXELS 0x0002 /* Convert table and all cells to use absolute pixels */
#define ED_TABLE_USE_CELL_WIDTH 0x0004 /* Set WIDTH param for all cells (facilitates table resizing) */
#define ED_TABLE_NO_CELL_WIDTH 0x0008 /* Remove WIDTH param for all cells */
#define ED_TABLE_USE_COLS 0x0010 /* Set COLS param for table (use only 1st row for column widths) */
#define ED_TABLE_NO_COLS 0x0020 /* Remove COLS param for table (all cell widths used) */
/*--------------------------- TableCaptionData --------------------------------*/
struct _EDT_TableCaptionData {

View File

@@ -1,101 +0,0 @@
#
# This is a list of local files which get copied to the mozilla:dist directory
#
abcom.h
abdefn.h
addrbook.h
allxpstr.h
bkmks.h
cdefs.h
cgi.h
client.h
csid.h
ctxtfunc.h
dirprefs.h
ds.h
dserr.h
edt.h
edttypes.h
fe_proto.h
fe_rgn.h
fullsoft.h
garray.h
glhist.h
gui.h
hotlist.h
imap.h
intl_csi.h
itapefs.h
libcnv.h
libc_r.h
libevent.h
libi18n.h
libmime.h
libmocha.h
libnet.h
libstyle.h
lo_ele.h
mcom_db.h
mcom_ndbm.h
merrors.h
mime.h
mimeenc.h
minicom.h
mk_cx_fn.h
msgcom.h
msgmapi.h
msgnet.h
msgtypes.h
msg_filt.h
msg_srch.h
m_cvstrm.h
ncompat.h
net.h
np.h
npapi.h
npassoc.h
nsldap.h
nslocks.h
ntos.h
ntypes.h
pics.h
prefetch.h
proto.h
pwcacapi.h
resdef.h
shist.h
shistele.h
shr_str.h
spellchk.h
structs.h
undo.h
unix-dns.h
vcc.h
vobject.h
winfile.h
xlate.h
xp.h
xpassert.h
xpgetstr.h
xplocale.h
xp_core.h
xp_debug.h
xp_error.h
xp_file.h
xp_hash.h
xp_help.h
xp_list.h
xp_mcom.h
xp_md5.h
xp_mem.h
xp_mesg.h
xp_ncent.h
xp_qsort.h
xp_rgb.h
xp_sec.h
xp_str.h
xp_thrmo.h
xp_time.h
xp_trace.h
xupfonts.h

View File

@@ -519,13 +519,10 @@ BOOL FE_FileType(char * path,
#define FE_GetTextFrame(context, element, start, end, frame) \
(*context->funcs->GetTextFrame)(context, element, start, end, frame)
#endif
#ifndef MOZ_NGLAYOUT
#define FE_GetEmbedSize(context, embed_struct, force_reload) \
(*context->funcs->GetEmbedSize)(context, embed_struct, force_reload)
#endif
#define FE_GetJavaAppSize(context, java_struct, force_reload) \
(*context->funcs->GetJavaAppSize)(context, java_struct, force_reload)
#ifndef MOZ_NGLAYOUT
#define FE_GetFormElementInfo(context, form_element) \
(*context->funcs->GetFormElementInfo)(context, form_element)
#define FE_GetFormElementValue(context, form_element,hide) \
@@ -536,11 +533,6 @@ BOOL FE_FileType(char * path,
(*context->funcs->SetFormElementToggle)(context, form_element,toggle)
#define FE_FreeEmbedElement(context, data) \
(*context->funcs->FreeEmbedElement)(context, data)
#ifdef SHACK
#define FE_FreeBuiltinElement(context, data) \
(*context->funcs->FreeBuiltinElement)(context, data)
#endif
#endif /* MOZ_NGLAYOUT */
#define FE_CreateEmbedWindow(context, data) \
(*context->funcs->CreateEmbedWindow)(context, data)
#define FE_SaveEmbedWindow(context, data) \
@@ -553,12 +545,10 @@ BOOL FE_FileType(char * path,
(*context->funcs->FreeJavaAppElement)(context, data)
#define FE_HideJavaAppElement(context, data) \
(*context->funcs->HideJavaAppElement)(context, data)
#ifndef MOZ_NGLAYOUT
#define FE_FreeEdgeElement(context, data) \
(*context->funcs->FreeEdgeElement)(context, data)
#define FE_FormTextIsSubmit(context, form_element) \
(*context->funcs->FormTextIsSubmit)(context, form_element)
#endif
/* ---------------------------------------------------------------------------
@@ -574,20 +564,12 @@ BOOL FE_FileType(char * path,
(*context->funcs->DisplaySubtext)(context, iLocation, text, start_pos, end_pos, need_bg)
#define FE_DisplayText(context, iLocation, text, need_bg) \
(*context->funcs->DisplayText)(context, iLocation, text, need_bg)
#ifndef MOZ_NGLAYOUT
#define FE_DisplayEmbed(context, iLocation , embed_struct) \
(*context->funcs->DisplayEmbed)(context, iLocation ,embed_struct)
#ifdef SHACK
#define FE_DisplayBuiltin(context, iLocation , builtin_struct) \
(*context->funcs->DisplayBuiltin)(context, iLocation ,builtin_struct)
#endif
#endif /* MOZ_NGLAYOUT */
#define FE_DisplayJavaApp(context, iLocation , java_struct) \
(*context->funcs->DisplayJavaApp)(context, iLocation ,java_struct)
#ifndef MOZ_NGLAYOUT
#define FE_DisplayEdge(context, iLocation ,edge_struct) \
(*context->funcs->DisplayEdge)(context, iLocation ,edge_struct)
#endif /* MOZ_NGLAYOUT */
#define FE_DisplayTable(context, iLocation ,table_struct) \
(*context->funcs->DisplayTable)(context, iLocation ,table_struct)
#define FE_DisplayCell(context, iLocation ,cell_struct) \
@@ -612,10 +594,8 @@ BOOL FE_FileType(char * path,
(*context->funcs->DisplayHR)(context, iLocation , HR_struct)
#define FE_DisplayBullet(context, iLocation, bullet) \
(*context->funcs->DisplayBullet)(context, iLocation, bullet)
#ifndef MOZ_NGLAYOUT
#define FE_DisplayFormElement(context, iLocation, form_element) \
(*context->funcs->DisplayFormElement)(context, iLocation, form_element)
#endif
#define FE_DisplayBorder(context, iLocation, x, y, width, height, bw, color, style) \
(*context->funcs->DisplayBorder)(context, iLocation, x, y, width, height, bw, color, style)
#define FE_DisplayFeedback(context, iLocation, element) \
@@ -723,26 +703,17 @@ extern int FE_GetMaxWidth(MWContext *pContext, LO_TextStruct *pText); /* pe
#ifdef LAYERS
void FE_GetTextFrame(MWContext * context, LO_TextStruct *text, int32 start, int32 end, XP_Rect *frame);
#endif
#ifndef MOZ_NGLAYOUT
void FE_GetEmbedSize(MWContext * context, LO_EmbedStruct *embed_struct, NET_ReloadMethod force_reload);
#endif
void FE_GetJavaAppSize(MWContext * context, LO_JavaAppStruct *java_struct, NET_ReloadMethod force_reload);
void FE_GetFormElementInfo(MWContext * context, LO_FormElementStruct * form_element);
void FE_GetFormElementValue(MWContext * context, LO_FormElementStruct * form_element, Bool hide);
void FE_ResetFormElement(MWContext * context, LO_FormElementStruct * form_element);
void FE_SetFormElementToggle(MWContext * context, LO_FormElementStruct * form_element, Bool toggle);
#ifndef MOZ_NGLAYOUT
void FE_FreeEmbedElement(MWContext *context, LO_EmbedStruct *);
#ifdef SHACK
void FE_FreeBuiltinElement(MWContext *context, LO_BuiltinStruct *);
#endif
#endif /* MOZ_NGLAYOUT */
void FE_FreeJavaAppElement(MWContext *context, struct LJAppletData *appletData);
void FE_HideJavaAppElement(MWContext *context, void*);
#ifndef MOZ_NGLAYOUT
void FE_FreeEdgeElement(MWContext *context, LO_EdgeStruct *);
void FE_FormTextIsSubmit(MWContext * context, LO_FormElementStruct * form_element);
#endif /* MOZ_NGLAYOUT */
void FE_SetProgressBarPercent(MWContext *context, int32 percent);
void FE_SetBackgroundColor(MWContext *context, uint8 red, uint8 green, uint8 blue);
@@ -758,16 +729,9 @@ void FE_SetBackgroundColor(MWContext *context, uint8 red, uint8 green
extern void FE_DisplaySubtext(MWContext * context, int iLocation, LO_TextStruct *text, int32 start_pos, int32 end_pos, Bool need_bg);
extern void FE_DisplayText(MWContext * context, int iLocation, LO_TextStruct *text, Bool need_bg);
#ifndef MOZ_NGLAYOUT
void FE_DisplayEmbed(MWContext * context, int iLocation ,LO_EmbedStruct *embed_struct);
#ifdef SHACK
void FE_DisplayBuiltin(MWContext * context, int iLocation ,LO_BuiltinStruct *builtin_struct);
#endif
#endif /* MOZ_NGLAYOUT */
void FE_DisplayJavaApp(MWContext * context, int iLocation ,LO_JavaAppStruct *java_struct);
#ifndef MOZ_NGLAYOUT
void FE_DisplayEdge(MWContext * context, int iLocation ,LO_EdgeStruct *edge_struct);
#endif /* MOZ_NGLAYOUT */
void FE_DisplayTable(MWContext * context, int iLocation ,LO_TableStruct *table_struct);
void FE_DisplayCell(MWContext * context, int iLocation ,LO_CellStruct *cell_struct);
void FE_DisplaySubDoc(MWContext * context, int iLocation ,LO_SubDocStruct *subdoc_struct);
@@ -813,12 +777,10 @@ extern void FE_AllConnectionsComplete(MWContext * context);
*/
extern void FE_ReleaseTextAttrFeData(MWContext * context, LO_TextAttr *attr);
#ifndef MOZ_NGLAYOUT
/*
* Liberated from context function table
*/
void FE_FreeFormElement(MWContext * context, LO_FormElementData *);
#endif
/* --------------------------------------------------------------------------
* Front end history stuff
@@ -843,7 +805,6 @@ extern void FE_SaveAs(MWContext * context, char * source);
*/
extern void FE_UpdateStopState(MWContext * context);
#ifndef MOZ_NGLAYOUT
/* -------------------------------------------------------------------------
* Grid stuff (where should this go?)
*/
@@ -867,7 +828,6 @@ extern void FE_GetEdgeMinSize(MWContext *context, int32 *size
);
extern void FE_LoadGridCellFromHistory(MWContext *context, void *hist,
NET_ReloadMethod force_reload);
#endif /* MOZ_NGLAYOUT */
/*
* Ugh for scrolling chat window. And now for JavaScript
@@ -965,9 +925,6 @@ PUBLIC void FE_DisplayGenericCaret(MWContext * context, LO_Any * pLoAny,
#ifdef XP_WIN
/* Ask front end to show where a dragged set of table cells may be dropped */
PUBLIC void FE_DisplayDropTableFeedback(MWContext * context, EDT_DragTableData *pDragData);
/* Convert an HTML SIZE param value (1-7) into POINT-SIZE value */
PUBLIC int16 FE_CalcFontPointSize(MWContext * pMWContext, intn iSize, XP_Bool bFixedWidth);
#endif
PUBLIC Bool FE_GetCaretPosition(MWContext *context, LO_Position* where,

View File

@@ -98,38 +98,13 @@ public:
return m_iSize++;
}
int Insert(void* newElement, int nIndex){
intn iLowerLimit;
GuaranteeSize(m_iSize+1);
if( nIndex < 0 )
nIndex = 0;
if( nIndex < m_iSize )
{
iLowerLimit = max(1, nIndex);
/* Shuffle pointers at and above insert index up */
for( int i = m_iSize; i >= iLowerLimit; i-- )
{
m_pData[i] = m_pData[i-1];
}
/* Overwrite pointer at designated location */
m_pData[nIndex] = newElement;
} else {
/* nIndex is too large - just add at end */
m_pData[m_iSize] = newElement;
}
/* Return index to last item in list */
return m_iSize++;
}
int Delete( int nIndex ){
if( nIndex < m_iSize )
{
/* Shuffle remaining pointers down */
for( int i = nIndex; i < m_iSize-1; i++ )
{
m_pData[i] = m_pData[i+1];
/* Suffle remaining pointers down */
m_pData[nIndex] = m_pData[nIndex+1];
}
m_iSize--;
}

View File

@@ -370,12 +370,6 @@ ET_SetDecoderStream(MWContext * context, NET_StreamClass *stream,
extern void
ET_SetNestingUrl(MWContext * context, char * szUrl);
/*
** Set up the principals for an upcoming softupdate script.
*/
extern void
ET_StartSoftUpdate(MWContext * pContext, char *codebase);
/*
** Remember the current language version in the MochaDecoder
*/
@@ -749,31 +743,6 @@ ET_HandlePref(JSContext * cx, uint argc, jsval * argv, jsval * rval);
extern void
ET_SetPluginWindow(MWContext * pContext, void * app);
#ifdef DOM
typedef enum {
SP_SetColor,
SP_SetBackground,
SP_SetFontWeight,
SP_SetFontFamily,
SP_SetFontSize,
SP_SetFontSlant
} ETSpanOp;
extern int
ET_TweakSpan(MWContext * context, void *name_rec, void *param_ptr,
int32 param_val, ETSpanOp op, int32 doc_id);
typedef enum {
TR_SetHref,
TR_SetVisibility,
TR_SetData
} ETTransclusionOp;
extern int
ET_TweakTransclusion(MWContext * context, void *xmlFile, void *param_ptr,
int32 param_val, ETTransclusionOp op, int32 doc_id);
#endif
NSPR_END_EXTERN_C
#endif /* libevent_h___ */

View File

@@ -96,10 +96,6 @@ typedef struct MochaDecoder {
JSObject *option_prototype;
JSObject *rect_prototype;
JSObject *url_prototype;
#ifdef DOM
JSObject *span_prototype;
JSObject *transclusion_prototype;
#endif
/*
* Window sub-objects. These must also follow the CLEAR/HOLD/DROP
@@ -159,10 +155,6 @@ typedef enum {
LM_IMAGES,
LM_FORMELEMENTS,
LM_LAYERS
#ifdef DOM
, LM_SPANS
, LM_TRANSCLUSIONS
#endif
} ReflectedObject;
/*
@@ -378,22 +370,6 @@ LO_GetNamedAnchorByIndex(MWContext *context, int32 layer_id, uint index);
extern uint
LO_EnumerateNamedAnchors(MWContext *context, int32 layer_id);
#ifdef DOM
/*
* Layout helper function to find a span by its index in the
* document.spans[] array.
*/
extern struct lo_NameList_struct *
LO_GetSpanByIndex(MWContext *context, int32 layer_id, uint index);
extern uint
LO_EnumerateSpans(MWContext *context, int32 layer_id);
extern JSObject *
LO_GetMochaObjectOfParentSpan( LO_Element *ele);
#endif
/*
* Layout Mocha helper function to find an HREF Anchor by its index in the
* document.links[] array.
@@ -505,16 +481,6 @@ extern JSObject *
LM_ReflectImage(MWContext *context, LO_ImageStruct *image_data,
PA_Tag * tag, int32 layer_id, uint index);
#ifdef DOM
/* Function prototype to make JS know about <SPAN> elements */
extern JSObject *
LM_ReflectSpan(MWContext *context, struct lo_NameList_struct *name_rec,
PA_Tag *tag, int32 layer_id, uint index);
extern JSObject *
LM_ReflectTransclusion(MWContext *context, void *ele, int32 layer_id, uint index);
#endif
extern JSBool
LM_CanDoJS(MWContext *context);

File diff suppressed because it is too large Load Diff

View File

@@ -416,7 +416,7 @@ void __dbpanic (DB *dbp);
__END_DECLS
#if defined(linux) && !defined(MKLINUX) && !defined(__mc68000__)
#if defined(linux) && !defined(MACLINUX)
/*
* Why you would want to override the system defines?
*/

View File

@@ -65,42 +65,26 @@ FE_DEFINE(GetTextInfo,int, (MWContext * context, LO_TextStruct *text, LO_TextInf
#ifdef XP_MAC
FE_DEFINE(MeasureText,int, (MWContext * context, LO_TextStruct *text, short *charLocs))
#endif
#ifndef MOZ_NGLAYOUT
FE_DEFINE(GetEmbedSize,void, (MWContext * context, LO_EmbedStruct *embed_struct, NET_ReloadMethod force_reload))
#endif
FE_DEFINE(GetJavaAppSize,void, (MWContext * context, LO_JavaAppStruct *java_struct, NET_ReloadMethod force_reload))
#ifndef MOZ_NGLAYOUT
FE_DEFINE(GetFormElementInfo,void, (MWContext * context, LO_FormElementStruct * form_element))
FE_DEFINE(GetFormElementValue,void, (MWContext * context, LO_FormElementStruct * form_element, XP_Bool hide))
FE_DEFINE(ResetFormElement,void, (MWContext * context, LO_FormElementStruct * form_element))
FE_DEFINE(SetFormElementToggle,void, (MWContext * context, LO_FormElementStruct * form_element, XP_Bool toggle))
FE_DEFINE(FreeEmbedElement,void, (MWContext *context, LO_EmbedStruct *))
#ifdef SHACK
FE_DEFINE(FreeBuiltinElement,void, (MWContext *context, LO_BuiltinStruct *))
#endif
#endif /* MOZ_NGLAYOUT */
FE_DEFINE(CreateEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(SaveEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(RestoreEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(DestroyEmbedWindow, void, (MWContext *context, NPEmbeddedApp *app))
FE_DEFINE(FreeJavaAppElement,void, (MWContext *context, struct LJAppletData *appletData))
FE_DEFINE(HideJavaAppElement,void, (MWContext *context, struct LJAppletData *))
#ifndef MOZ_NGLAYOUT
FE_DEFINE(FreeEdgeElement,void, (MWContext *context, LO_EdgeStruct *))
FE_DEFINE(FormTextIsSubmit,void, (MWContext * context, LO_FormElementStruct * form_element))
#endif /* MOZ_NGLAYOUT */
FE_DEFINE(DisplaySubtext,void, (MWContext * context, int iLocation, LO_TextStruct *text, int32 start_pos, int32 end_pos, XP_Bool need_bg))
FE_DEFINE(DisplayText,void, (MWContext * context, int iLocation, LO_TextStruct *text, XP_Bool need_bg))
#ifndef MOZ_NGLAYOUT
FE_DEFINE(DisplayEmbed,void, (MWContext * context, int iLocation ,LO_EmbedStruct *embed_struct))
#ifdef SHACK
FE_DEFINE(DisplayBuiltin,void, (MWContext * context, int iLocation ,LO_BuiltinStruct *builtin_struct))
#endif
#endif /* MOZ_NGLAYOUT */
FE_DEFINE(DisplayJavaApp,void, (MWContext * context, int iLocation ,LO_JavaAppStruct *java_struct))
#ifndef MOZ_NGLAYOUT
FE_DEFINE(DisplayEdge,void, (MWContext * context, int iLocation ,LO_EdgeStruct *edge_struct))
#endif
FE_DEFINE(DisplayTable,void, (MWContext * context, int iLocation ,LO_TableStruct *table_struct))
FE_DEFINE(DisplayCell,void, (MWContext * context, int iLocation ,LO_CellStruct *cell_struct))
#ifdef XP_MAC
@@ -111,9 +95,7 @@ FE_DEFINE(DisplaySubDoc,void, (MWContext * context, int iLocation ,LO_SubDocStru
FE_DEFINE(DisplayLineFeed,void, (MWContext * context, int iLocation , LO_LinefeedStruct *line_feed, XP_Bool need_bg))
FE_DEFINE(DisplayHR,void, (MWContext * context, int iLocation , LO_HorizRuleStruct *HR_struct))
FE_DEFINE(DisplayBullet,void, (MWContext *context, int iLocation, LO_BullettStruct *bullet))
#ifndef MOZ_NGLAYOUT
FE_DEFINE(DisplayFormElement,void, (MWContext * context, int iLocation, LO_FormElementStruct * form_element))
#endif
FE_DEFINE(DisplayBorder,void, (MWContext *context, int iLocation, int x, int y, int width, int height, int bw, LO_Color *color, LO_LineStyle style))
#ifdef XP_MAC
FE_DEFINE(UpdateEnableStates,void, (MWContext *context))
@@ -156,11 +138,9 @@ FE_DEFINE(GetTextFrame, void, (MWContext *, LO_TextStruct *, int32, int32, XP_Re
FE_DEFINE(GetDefaultBackgroundColor, void, (MWContext* context, LO_Color* color))
#endif
#endif
#ifdef TRANSPARENT_APPLET
/* these functions are to allow dealyed native window applet creation and transparent applet */
FE_DEFINE(HandleClippingView, void, (MWContext *pContext, struct LJAppletData *appletD, int x, int y, int width, int height))
FE_DEFINE(DrawJavaApp, void, (MWContext *pContext, int iLocation, LO_JavaAppStruct *pJava))
#endif
#undef FE_DEFINE
#undef MAKE_FE_FUNCS_PREFIX

View File

@@ -33,9 +33,10 @@
#include "xp_core.h"
#include "ntypes.h"
#include "shistele.h"
#include "xp_list.h"
#include "msgtypes.h"
#include "xp_error.h"
#ifdef XP_UNIX
#include <sys/param.h> /* for MAXPATHLEN */
#endif
@@ -386,7 +387,7 @@ struct URL_Struct_ {
char **post_to; /* Only meaningful if files_to_post is set. If post_to is non-NULL, it is a NULL-terminated
array of the URLs to post the files in files_to_post to. If NULL, files_to_post along with
address(a directory) will be used to decide where to post the files (like before). */
XP_Bool *add_crlf; /* Only meaningful if files_to_post is non-NULL. If set, it specifies for each file in files_to_post,
PRBool *add_crlf; /* Only meaningful if files_to_post is non-NULL. If set, it specifies for each file in files_to_post,
whether or not to make all line endings be crlf. */
uint32 auto_scroll; /* set this if you want
* the window to autoscroll
@@ -871,7 +872,7 @@ extern int NET_SetSocksHost(char * host);
extern void NET_SetTCPConnectTimeout(uint32 seconds);
/* Is there a registered converter for the passed mime_type */
extern XP_Bool NET_HaveConverterForMimeType(char *content_type);
extern PRBool NET_HaveConverterForMimeType(char *content_type);
/* builds an outgoing stream and returns a stream class structure
* containing a stream function table
@@ -1010,7 +1011,7 @@ extern char * NET_GetUniqueIdString(void);
* pass in FALSE to enable disk cacheing
* of SSL documents
*/
extern void NET_DontDiskCacheSSL(XP_Bool set);
extern void NET_DontDiskCacheSSL(PRBool set);
/* removes the specified number of objects from the
* cache taking care to remove only the oldest objects.
@@ -1062,7 +1063,7 @@ extern Bool NET_IsURLInMemCache(URL_Struct *URL_s);
/* returns TRUE if the URL->address passed in
* is a local file URL
*/
extern XP_Bool NET_IsLocalFileURL(char *address);
extern PRBool NET_IsLocalFileURL(char *address);
/* unload the disk cache FAT list to disk
*
@@ -1141,7 +1142,7 @@ extern Bool CACHE_Put(char *filename, URL_Struct *url_s);
/* returns 0 if the url is not found, non-zero otherwise. It
* fills in URL_Struct as needed
*/
extern char *CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt);
extern int CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt);
/* Flushes the caches data to disk */
extern void CACHE_FlushCache(ExtCacheDBInfo *db_info);
@@ -1165,7 +1166,7 @@ extern ExtCacheDBInfo * CACHE_GetCacheStruct(char * path, char * filename, char
extern char * CACHE_GetCachePath(char * filename);
/* Returns the list of managed caches */
extern XP_List * CACHE_GetManagedCacheList();
extern struct PLList * CACHE_GetManagedCacheList();
/* Saves the cache struct to the DB */
extern void CACHE_SaveCacheInfoToDB(ExtCacheDBInfo *db_info);
@@ -1183,7 +1184,7 @@ extern int32 NET_RemoveLastDiskCacheObject(void);
*
* use the normal XP_List routines to iterate through
*/
extern XP_List * cinfo_MasterListPointer(void);
extern struct PLList * cinfo_MasterListPointer(void);
/* get the presumed content-type of the filename given
*/
@@ -1219,10 +1220,10 @@ extern void NET_cdataCommit(char * mimeType, char * cdataString);
extern char * NET_cinfo_find_ext(char *mime_type);
/* check to see if this is an old mime type */
extern XP_Bool NET_IsOldMimeTypes (XP_List *masterList);
extern PRBool NET_IsOldMimeTypes (struct PLList *masterList);
#ifdef XP_UNIX
extern XP_List * mailcap_MasterListPointer(void);
extern struct PLList * mailcap_MasterListPointer(void);
extern NET_mdataStruct *NET_mdataCreate(void);
extern void NET_mdataAdd(NET_mdataStruct *md);
extern void NET_mdataRemove(NET_mdataStruct *md);
@@ -1315,11 +1316,6 @@ NET_GetURL (URL_Struct * URL_s,
FO_Present_Types output_format,
MWContext * context,
Net_GetUrlExitFunc* exit_routine);
PUBLIC int
NET_GetURLQuick (URL_Struct * URL_s,
FO_Present_Types output_format,
MWContext * context,
Net_GetUrlExitFunc* exit_routine);
/* URL methods
*/
@@ -1376,7 +1372,7 @@ PUBLIC int NET_ProcessNet(PRFileDesc *ready_fd, int fd_type);
*
* Should be called in OnIdle loop to service netlib
*/
PUBLIC XP_Bool NET_PollSockets(void);
PUBLIC PRBool NET_PollSockets(void);
/* NET_InterruptWindow interrupts all in progress transfers
* that were initiated with the same window_id
@@ -1511,7 +1507,7 @@ extern void NET_RegContentTypeConverter (char * format_in,
FO_Present_Types format_out,
void * data_obj,
NET_Converter * converter_func,
XP_Bool bAutomated);
PRBool bAutomated);
/* This function found in the windows front end.
*/
@@ -1725,7 +1721,7 @@ extern void NET_SetNumberOfNewsArticlesInListing(int32 number);
/* Set whether to cache XOVER lines in an attempt to make news go faster
*/
extern void NET_SetCacheXOVER(XP_Bool value);
extern void NET_SetCacheXOVER(PRBool value);
/* Tell netlib to clean up any strictly temporary cache files it has for XOVER
@@ -1769,7 +1765,7 @@ NET_ParseMimeHeader(FO_Present_Types outputFormat,
URL_Struct *URL_s,
char *name,
char *value,
XP_Bool is_http);
PRBool is_http);
/* scans a line for references to URL's and turns them into active
@@ -1783,7 +1779,7 @@ NET_ParseMimeHeader(FO_Present_Types outputFormat,
*/
extern int NET_ScanForURLs(MSG_Pane* pane, const char *input, int32 input_size,
char *output, int output_size, XP_Bool urls_only_p);
char *output, int output_size, PRBool urls_only_p);
/* Takes an arbitrary chunk of HTML, and returns another chunk which has had
@@ -1949,7 +1945,7 @@ NET_PublishFilesTo(MWContext *context,
char **files_to_publish,
char **publish_to, /* Absolute URLs of the location to
* publish the files to. */
XP_Bool *add_crlf, /* For each file in files_to_publish, should every line
PRBool *add_crlf, /* For each file in files_to_publish, should every line
end in a CRLF. */
char *base_url, /* Directory to publish to, or the destination
* URL of the root HTML document. */
@@ -1998,39 +1994,6 @@ NET_UploadDirectory(MWContext *context, char *local_dir, char *remote_dir_url);
*/
extern void NET_PlusToSpace(char *str);
/* some standard protocol types */
#define FILE_PROTOCOL "file"
#define FTP_PROTOCOL "ftp"
#define GOPHER_PROTOCOL "gopher"
#define HTTP_PROTOCOL "http"
#define MAILTO_PROTOCOL "mailto"
#define NEWS_PROTOCOL "news"
#define RLOGIN_PROTOCOL "rlogin"
#define TELNET_PROTOCOL "telnet"
#define TN3270_PROTOCOL "tn3270"
#define WAIS_PROTOCOL "wais"
#define ABOUT_PROTOCOL "about"
#define SECURE_HTTP_PROTOCOL "shttp"
#define SECURE_NEWS_PROTOCOL "snews"
#define POP3_PROTOCOL "pop3"
#define MAILBOX_PROTOCOL "mailbox"
#define ADDRESS_BOOK_PROTOCOL "addbook"
#define ADDRESS_BOOK_LDAP_PROTOCOL "addbook-ldap"
#define URN_PROTOCOL "URN"
#define NFS_PROTOCOL "nfs"
#define MARIMBA_PROTOCOL "castanet"
#define IMAP_PROTOCOL "imap"
#define MOCHA_PROTOCOL "javascript"
#define DATA_PROTOCOL "data"
#define HTML_DIALOG_HANDLER_PROTOCOL "internal-dialog-handler"
#define HTML_PANEL_HANDLER_PROTOCOL "internal-panel-handler"
#define WYSIWYG_PROTOCOL "wysiwyg"
#define SECURITY_PROTOCOL "security"
#define INTERNAL_SECLIB_PROTOCOL "internal-seclib"
#define INTERNAL_LDAPCERT_PROTOCOL "internal-ldapcert"
#define FILE_CACHE_PROTOCOL "file-cache"
#define MEMORY_CACHE_PROTOCOL "memory-cache"
/* url_type return types */
#define FILE_TYPE_URL 1
#define FTP_TYPE_URL 2
@@ -2050,7 +2013,7 @@ extern void NET_PlusToSpace(char *str);
#define URN_TYPE_URL 16
#define POP3_TYPE_URL 17
#define MAILBOX_TYPE_URL 18
#define INTERNAL_NEWS_UNUSED 19
#define INTERNAL_NEWS_TYPE_URL 19
#define SECURITY_TYPE_URL 20
#define MOCHA_TYPE_URL 21
#define VIEW_SOURCE_TYPE_URL 22
@@ -2082,7 +2045,7 @@ extern int NET_URL_Type(const char *URL);
/* CM these functions added to \libnet\MKPARSE.C: */
/* Returns TRUE if URL type is HTTP_TYPE_URL or SECURE_HTTP_TYPE_URL */
extern Bool NET_IsHTTP_URL(const char *URL);
extern PRBool NET_IsHTTP_URL(const char *URL);
/* Return values for NET_MakeRelativeURL */
enum {
@@ -2131,7 +2094,7 @@ char * NET_MakeTargetURL( char *base_url,
extern void NET_WarnOnMailtoPost(PRBool warn);
/* Is the user off-line - uses the network.online preference */
extern XP_Bool NET_IsOffline();
extern PRBool NET_IsOffline();
XP_END_PROTOS

View File

@@ -18,7 +18,7 @@
/*
* np.h $Revision: 3.2 $
* np.h $Revision: 3.1 $
* Prototypes for functions exported by libplugin and called by the FEs or other XP libs.
* Prototypes for functions exported by the FEs and called by libplugin are in nppg.h.
*/
@@ -103,7 +103,7 @@ extern void NPL_SamePage(MWContext *context);
extern void NPL_SameElement(LO_EmbedStruct *embed);
extern void NPL_DeleteSessionData(MWContext* context, void* sessionData);
extern XP_Bool NPL_HandleURL(MWContext *pContext, FO_Present_Types iFormatOut, URL_Struct *pURL,
Net_GetUrlExitFunc *pExitFunc);
Net_GetUrlExitFunc *pExitFunc);
#ifndef XP_MAC
extern void NPL_DisplayPluginsAsHTML(FO_Present_Types format_out, URL_Struct *urls, MWContext *cx);
#endif
@@ -125,7 +125,6 @@ extern NPError NPL_RegisterAppletType(NPMIMEType type);
#endif /* ANTHRAX */
PR_EXTERN(void) NPL_SetPluginWindow(void *data);
PR_EXTERN(struct NPIPlugin*) NPL_LoadPluginByType(const char* typeAttribute);
XP_END_PROTOS

View File

@@ -18,7 +18,7 @@
/*
* npapi.h $Revision: 3.2 $
* npapi.h $Revision: 3.1.10.1 $
* Netscape client plug-in API spec
*/
@@ -29,7 +29,9 @@
#pragma pack(1)
#endif
#if defined(JAVA)
#include "jri.h" /* Java Runtime Interface */
#endif
#if defined (__OS2__ ) || defined (OS2)
# ifndef XP_OS2
@@ -274,8 +276,7 @@ typedef enum {
NPPVpluginWindowBool,
NPPVpluginTransparentBool,
NPPVjavaClass,
NPPVpluginWindowSize,
NPPVpluginTimerInterval
NPPVpluginWindowSize
} NPPVariable;
/*
@@ -513,7 +514,9 @@ void NP_LOADDS NPP_Print(NPP instance, NPPrint* platformPrint);
int16 NP_LOADDS NPP_HandleEvent(NPP instance, void* event);
void NP_LOADDS NPP_URLNotify(NPP instance, const char* url,
NPReason reason, void* notifyData);
#if defined(JAVA)
jref NP_LOADDS NPP_GetJavaClass(void);
#endif
NPError NP_LOADDS NPP_GetValue(void *instance, NPPVariable variable,
void *value);
NPError NP_LOADDS NPP_SetValue(void *instance, NPNVariable variable,
@@ -548,8 +551,10 @@ void* NP_LOADDS NPN_MemAlloc(uint32 size);
void NP_LOADDS NPN_MemFree(void* ptr);
uint32 NP_LOADDS NPN_MemFlush(uint32 size);
void NP_LOADDS NPN_ReloadPlugins(NPBool reloadPages);
#if defined(JAVA)
JRIEnv* NP_LOADDS NPN_GetJavaEnv(void);
jref NP_LOADDS NPN_GetJavaPeer(NPP instance);
#endif
NPError NP_LOADDS NPN_GetValue(NPP instance, NPNVariable variable,
void *value);
NPError NP_LOADDS NPN_SetValue(NPP instance, NPPVariable variable,

View File

@@ -88,11 +88,7 @@ typedef struct LO_TextStruct_struct LO_TextStruct;
typedef struct LO_ImageAttr_struct LO_ImageAttr;
typedef struct LO_ImageStruct_struct LO_ImageStruct;
typedef struct LO_SubDocStruct_struct LO_SubDocStruct;
typedef struct LO_CommonPluginStruct_struct LO_CommonPluginStruct;
typedef struct LO_EmbedStruct_struct LO_EmbedStruct;
#ifdef SHACK
typedef struct LO_BuiltinStruct_struct LO_BuiltinStruct;
#endif /* SHACK */
typedef struct LO_JavaAppStruct_struct LO_JavaAppStruct;
typedef struct LO_EdgeStruct_struct LO_EdgeStruct;
typedef struct LO_ObjectStruct_struct LO_ObjectStruct;
@@ -132,7 +128,9 @@ typedef enum {
} LO_LineStyle;
/*#ifndef NO_TAB_NAVIGATION */
typedef struct LO_tabFocus_struct LO_TabFocusData;
/* NO_TAB_NAVIGATION */
/*
XLation
@@ -143,11 +141,7 @@ typedef struct PrintSetup_ PrintSetup;
/*
mother of data structures
*/
#ifndef OPAQUE_MWCONTEXT
typedef struct MWContext_ MWContext;
#else
typedef void MWContext;
#endif
/*
Chrome structure

View File

@@ -107,16 +107,6 @@ extern void LO_SetLayerScrollHeight(CL_Layer *layer, uint32 height);
extern void LO_SetLayerBbox(CL_Layer *layer, XP_Rect *bbox);
#ifdef DOM
/* Setters for span contents */
extern void LO_SetSpanColor(MWContext *context, void *span, LO_Color *color);
extern void LO_SetSpanBackground(MWContext *context, void *span, LO_Color *color);
extern void LO_SetSpanFontFamily(MWContext* context, void *span, char *family);
extern void LO_SetSpanFontWeight(MWContext* context, void *span, char *weight);
extern void LO_SetSpanFontSize(MWContext* context, void *span, int32 size);
extern void LO_SetSpanFontSlant(MWContext* context, void *span, char *slant);
#endif
extern void LO_SetLayerBgColor(CL_Layer *layer, LO_Color *color);
extern LO_Color * LO_GetLayerBgColor(CL_Layer *layer);
extern void LO_SetLayerBackdropURL(CL_Layer *layer, const char *url);
@@ -263,26 +253,6 @@ extern Bool LO_ForwardInGrid(MWContext *context);
extern Bool LO_GridCanGoForward(MWContext *context);
extern Bool LO_GridCanGoBackward(MWContext *context);
#if defined(SingleSignon)
extern void SI_RememberSignonData
(MWContext *context, LO_FormSubmitData *submit);
extern void SI_RestoreOldSignonData
(MWContext *context, LO_FormElementStruct *form_element, char *URLName);
extern int SI_LoadSignonData(char *filename);
extern int SI_SaveSignonData(char *filename);
extern void SI_RemoveAllSignonData();
extern Bool SI_RemoveUser(char *URLName, char *userName, Bool save);
extern int SI_PromptUsernameAndPassword
(MWContext *context, char *buf,
char **username, char **password, char *URLName);
extern char *SI_PromptPassword
(MWContext *context, char *prompt, char *URLName,
Bool pickFirstUser, Bool useLastPassword);
extern char * SI_Prompt
(MWContext *context, char *prompt, char* defaultUsername, char *URLName);
extern void SI_StartOfForm();
#endif
#ifdef LAYERS
extern Bool LO_Click( MWContext *context, int32 x, int32 y,
Bool requireCaret, CL_Layer *layer );
@@ -411,9 +381,6 @@ extern void LO_DisplayFormElement(LO_FormElementStruct *form);
*/
XP_Bool LO_IsEmptyCell(LO_CellStruct *cell);
Bool LO_LayingOut(MWContext * context);
#ifdef DOM
/* Returns true if the layout element is enclosed
in <SPAN> </SPAN> */
@@ -450,3 +417,4 @@ extern int XP_ContextCount(MWContextType cxType, XP_Bool bTopLevel);
XP_END_PROTOS
# endif /* _PROTO_H_ */

View File

@@ -62,7 +62,7 @@ extern char *PC_Prompt(MWContext *context,
void PC_FreeNameValueArray(PCNameValueArray *array);
PCNameValueArray * PC_NewNameValueArray(void);
PCNameValueArray * PC_NewNameValueArray();
uint32 PC_ArraySize(PCNameValueArray *array);

View File

@@ -114,9 +114,6 @@ typedef struct FEstruct_ {
void* savedialog;
#endif
#endif
#ifdef MOZILLA_CLIENT
void* webWidget; /* Really a nsIWebWidget */
#endif
} FEstruct;
@@ -329,8 +326,6 @@ struct MWContext_ {
LO_TabFocusData *tab_focus_data;
void *ncast_channel_context;
/* if the window is displaying an XML file, keep a pointer to the XML file structure here */
void* xmlfile;
};

View File

@@ -250,12 +250,6 @@ typedef enum XP_FileType {
xpFolderCache, /* for caching mail/news folder info */
xpPKCS12File, /* used for PKCS 12 certificate transport */
xpJSCookieFilters, /* Opens personal js cookie filters */
#if defined(CookieManagement)
xpHTTPCookiePermission,
#endif
#if defined(SingleSignon)
xpHTTPSingleSignon,
#endif
xpLIClientDB,
xpLIPrefs
} XP_FileType;

View File

@@ -15,7 +15,7 @@
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
/* xp_help.h */
/* xp_help.h *
/*
@@ -213,7 +213,6 @@ NET_LoadNetHelpTopic(MWContext *pContext, const char *topic);
#define HELP_PREFS_ADVANCED_CACHE "navigatr:PREFERENCES_ADVANCED_CACHE"
#define HELP_PREFS_ADVANCED_PROXIES "navigatr:PREFERENCES_ADVANCED_PROXIES"
#define HELP_PREFS_ADVANCED_DISK_SPACE "navigatr:PREFERENCES_ADVANCED_DISK_SPACE"
#define HELP_PREFS_ADVANCED_SMARTUPDATE "navigatr:PREFERENCES_ADVANCED_SMARTUPDATE"
/* Main Preferences: Conference */

View File

@@ -40,9 +40,18 @@
Allocating Structures
-----------------------------------------------------------------------------*/
#ifndef XP_MAC
#define XP_NEW( x ) (x*)malloc( sizeof( x ) )
#define XP_DELETE( p ) free( p )
#else /* XP_MAC */
#define XP_NEW( s ) ((s*)Flush_Allocate( sizeof(s), FALSE ) )
#define XP_DELETE( p ) Flush_Free( p )
#endif /* XP_MAC */
/*-----------------------------------------------------------------------------
Mallocs
NOTE: this uses the same malloc as the structure allocator so it is
@@ -51,11 +60,11 @@ ok and safe to use XP_DELETE or XP_FREE interchangeably!
#ifdef XP_MAC
#define XP_ALLOC( s ) malloc( s )
#define XP_FREE( p ) free( p )
#define XP_REALLOC( p , s ) realloc( p, s )
#define XP_CALLOC( n, s ) calloc( (n), (s) )
#define XP_NEW_ZAP( t ) ((t*)calloc( 1, sizeof(t) ) )
#define XP_ALLOC( s ) Flush_Allocate( s, FALSE )
#define XP_FREE( p ) Flush_Free( p )
#define XP_REALLOC( p , s ) Flush_Reallocate( p, s )
#define XP_CALLOC( n, s ) Flush_Allocate( (n)*(s), TRUE )
#define XP_NEW_ZAP( t ) ((t*)Flush_Allocate( sizeof(t), TRUE ) )
#else /* !XP_MAC */
/* normal win and unix */
@@ -194,9 +203,9 @@ typedef unsigned char * XP_Block;
#ifdef XP_MAC
typedef float* XP_Block;
#define XP_ALLOC_BLOCK( s ) ((XP_Block)malloc( s ) )
#define XP_FREE_BLOCK( b ) free( b )
#define XP_REALLOC_BLOCK( b, s ) ((XP_Block)realloc( b, s ) )
#define XP_ALLOC_BLOCK( s ) ((XP_Block)Flush_Allocate( s, FALSE ) )
#define XP_FREE_BLOCK( b ) Flush_Free( b )
#define XP_REALLOC_BLOCK( b, s ) ((XP_Block)Flush_Reallocate( b, s ) )
#define XP_LOCK_BLOCK( p, t, b ) (p = ( t )( b ))
#define XP_UNLOCK_BLOCK( b )

View File

@@ -79,7 +79,7 @@
#define INVALID_SXP -2
#define VALID_SXP 1
extern int NET_RegExpValid(char *exp);
extern int XP_RegExpValid(char *exp);
/*
* shexp_match
@@ -88,7 +88,7 @@ extern int NET_RegExpValid(char *exp);
*
* Returns 0 on match and 1 on non-match.
*/
extern int NET_RegExpMatch(char *str, char *exp, Bool case_insensitive);
extern int XP_RegExpMatch(char *str, char *exp, Bool case_insensitive);
/*
*
@@ -96,10 +96,10 @@ extern int NET_RegExpMatch(char *str, char *exp, Bool case_insensitive);
* -1 on invalid exp.
*/
extern int NET_RegExpSearch(char *str, char *exp);
extern int XP_RegExpSearch(char *str, char *exp);
/* same as above but uses case insensitive search
*/
extern int NET_RegExpCaseSearch(char *str, char *exp);
extern int XP_RegExpCaseSearch(char *str, char *exp);
#endif

208
mozilla/include/xp_sock.h Normal file
View File

@@ -0,0 +1,208 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef __XP_SOCK_h_
#define __XP_SOCK_h_
#include "xp_core.h"
#include "xp_error.h"
#ifdef XP_UNIX
#ifdef AIXV3
#include <sys/signal.h>
#include <sys/select.h>
#endif /* AIXV3 */
#include <sys/types.h>
#include <string.h>
#include <errno.h>
#include <sys/time.h>
#include <sys/stat.h>
#include <sys/param.h>
#include <sys/file.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <unistd.h>
#ifndef __hpux
#include <arpa/inet.h>
#endif /* __hpux */
#include <netdb.h>
#endif /* XP_UNIX */
#ifdef XP_MAC
#include "macsocket.h"
#define SOCKET_BUFFER_SIZE 4096
#endif /* XP_MAC */
#ifdef XP_OS2 /* IBM-VPB050196 */
# include "os2sock.h"
# ifdef XP_OS2_DOUGSOCK
# include "dsfunc.h"
# endif
# define SOCKET_BUFFER_SIZE 4096
#endif
#ifdef XP_WIN
#include "winsock.h"
#define SOCKET_BUFFER_SIZE 4096
#ifdef __cplusplus
extern "C" {
#endif
extern int dupsocket(int foo); /* always fails */
#ifdef __cplusplus
}
#endif
#ifndef EPIPE
#define EPIPE ECONNRESET
#endif
#undef BOOLEAN
#define BOOLEAN char
#endif /* XP_WIN */
#define SOCKET_ERRNO XP_GetError()
/************************************************************************/
#ifdef XP_UNIX
/* Network i/o wrappers */
#define XP_SOCKET int
#define XP_SOCK_ERRNO errno
#define XP_SOCK_SOCKET socket
#define XP_SOCK_CONNECT connect
#define XP_SOCK_ACCEPT accept
#define XP_SOCK_BIND bind
#define XP_SOCK_LISTEN listen
#define XP_SOCK_SHUTDOWN shutdown
#define XP_SOCK_IOCTL ioctl
#define XP_SOCK_RECV recv
#define XP_SOCK_RECVFROM recvfrom
#define XP_SOCK_RECVMSG recvmsg
#define XP_SOCK_SEND send
#define XP_SOCK_SENDTO sendto
#define XP_SOCK_SENDMSG sendmsg
#define XP_SOCK_READ read
#define XP_SOCK_WRITE write
#define XP_SOCK_READV readv
#define XP_SOCK_WRITEV writev
#define XP_SOCK_GETPEERNAME getpeername
#define XP_SOCK_GETSOCKNAME getsockname
#define XP_SOCK_GETSOCKOPT getsockopt
#define XP_SOCK_SETSOCKOPT setsockopt
#define XP_SOCK_CLOSE close
#define XP_SOCK_DUP dup
#endif /* XP_UNIX */
/*IBM-DSR072296 - now using WinSock 1.1 support in OS/2 Merlin instead of DOUGSOCK...*/
#if defined(XP_WIN) || ( defined(XP_OS2) && !defined(XP_OS2_DOUGSOCK) )
#define XP_SOCKET SOCKET
#define XP_SOCK_ERRNO WSAGetLastError()
#define XP_SOCK_SOCKET socket
#define XP_SOCK_CONNECT connect
#define XP_SOCK_ACCEPT accept
#define XP_SOCK_BIND bind
#define XP_SOCK_LISTEN listen
#define XP_SOCK_SHUTDOWN shutdown
#define XP_SOCK_IOCTL ioctlsocket
#define XP_SOCK_RECV recv
#define XP_SOCK_RECVFROM recvfrom
#define XP_SOCK_RECVMSG recvmsg
#define XP_SOCK_SEND send
#define XP_SOCK_SENDTO sendto
#define XP_SOCK_SENDMSG sendmsg
#define XP_SOCK_READ(s,b,l) recv(s,b,l,0)
#define XP_SOCK_WRITE(s,b,l) send(s,b,l,0)
#define XP_SOCK_READV readv
#define XP_SOCK_WRITEV writev
#define XP_SOCK_GETPEERNAME getpeername
#define XP_SOCK_GETSOCKNAME getsockname
#define XP_SOCK_GETSOCKOPT getsockopt
#define XP_SOCK_SETSOCKOPT setsockopt
#define XP_SOCK_CLOSE closesocket
#define XP_SOCK_DUP dupsocket
#endif /* XP_WIN/ XP_OS2 && not DOUGSOCK */
#if defined(XP_OS2) && defined(XP_OS2_DOUGSOCK)
/* Network i/o wrappers */
#define XP_SOCKET int
#define XP_SOCK_ERRNO sock_errno()
#define XP_SOCK_SOCKET socket
#define XP_SOCK_CONNECT connect
#define XP_SOCK_ACCEPT accept
#define XP_SOCK_BIND bind
#define XP_SOCK_LISTEN listen
#define XP_SOCK_SHUTDOWN shutdown
#define XP_SOCK_IOCTL ioctl
#define XP_SOCK_RECV receiveAndMakeReadSocketActive
#define XP_SOCK_RECVFROM recvfrom
#define XP_SOCK_RECVMSG recvmsg
#define XP_SOCK_SEND send
#define XP_SOCK_SENDTO sendto
#define XP_SOCK_SENDMSG sendmsg
#define XP_SOCK_READ(s,b,l) receiveAndMakeReadSocketActive(s,b,l,0)
#define XP_SOCK_WRITE(s,b,l) send(s,b,l,0)
#define XP_SOCK_READV readv
#define XP_SOCK_WRITEV writev
#define XP_SOCK_GETPEERNAME getpeername
#define XP_SOCK_GETSOCKNAME getsockname
#define XP_SOCK_GETSOCKOPT getsockopt
#define XP_SOCK_SETSOCKOPT setsockopt
#define XP_SOCK_CLOSE closeAndRemoveSocketFromPostList
#define XP_SOCK_DUP dupsocket
#endif /*XP_OS2 with DOUGSOCK*/
#ifdef XP_MAC
/*
Remap unix sockets into GUSI
*/
#define XP_SOCKET int
#define XP_SOCK_ERRNO errno
#define XP_SOCK_SOCKET macsock_socket
#define XP_SOCK_CONNECT macsock_connect
#define XP_SOCK_ACCEPT macsock_accept
#define XP_SOCK_BIND macsock_bind
#define XP_SOCK_LISTEN macsock_listen
#define XP_SOCK_SHUTDOWN macsock_shutdown
#define XP_SOCK_IOCTL macsock_ioctl
#define XP_SOCK_RECV(s,b,l,f) XP_SOCK_READ(s,b,l)
#define XP_SOCK_SEND(s,b,l,f) XP_SOCK_WRITE(s,b,l)
#define XP_SOCK_READ macsock_read
#define XP_SOCK_WRITE macsock_write
#define XP_SOCK_GETPEERNAME macsock_getpeername
#define XP_SOCK_GETSOCKNAME macsock_getsockname
#define XP_SOCK_GETSOCKOPT macsock_getsockopt
#define XP_SOCK_SETSOCKOPT macsock_setsockopt
#define XP_SOCK_CLOSE macsock_close
#define XP_SOCK_DUP macsock_dup
#endif /* XP_MAC */
#endif /* __XP_SOCK_h_ */

1107
mozilla/lib/libmisc/shist.c Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -15,23 +15,101 @@
# Copyright (C) 1998 Netscape Communications Corporation. All Rights
# Reserved.
DEPTH = ../..
DEPTH = ../..
MODULE = mimetype
LIBRARY_NAME = mimetype
MODULE = netlib
LIBRARY_NAME = netlib
CSRCS = \
mkformat.c \
$(NULL)
CSRCS = \
pllist.c \
plstr2.c \
depend.c \
mkgeturl.c \
mkconect.c \
mksockrw.c \
mkselect.c \
mkcache.c \
mkmemcac.c \
extcache.c \
mkextcac.c \
mkpadpac.c \
mkautocf.c \
mkaccess.c \
mkformat.c \
jscookie.c \
mkparse.c \
mkutils.c \
mkfsort.c \
mksort.c \
mkmessag.c \
mktrace.c \
mkhttp.c \
mkfile.c \
$(NULL)
EXPORTS=mkformat.h
CPPSRCS = \
nsURL.cpp \
nsHttpUrl.cpp \
bamwrap.cpp \
moz_depend.cpp \
net_serv.cpp \
net_strm.cpp \
$(NULL)
REQUIRES = netcast parse js dbm nspr security htmldlgs ldap softupdt \
img util jtools layer pref java libfont lay style applet \
zlib li msg progress xpcom
EXPORTS = \
nsIStreamListener.h \
nsINetService.h \
nsIURL.h \
nsIPostToServer.h \
nsIHttpUrl.h \
$(NULL)
include $(DEPTH)/config/config.mk
REQUIRES = nspr2 network img layer util
ifdef MOZ_MAIL_NEWS
CSRCS += \
mkcertld.c \
imap4url.c \
mkmailbx.c \
mknews.c \
mknewsgr.c \
mkpop3.c \
mksmtp.c \
prefetch.c \
$(NULL)
CPPSRCS += imaphier.cpp \
imapearl.cpp \
mkimap4.cpp \
mkldap.cpp \
imappars.cpp \
imapbody.cpp \
mkabook.cpp \
$(NULL)
endif
ifndef NO_UNIX_ASYNC_DNS
CSRCS += unix-dns.c
endif
include $(DEPTH)/config/rules.mk
DEFINES += -DNEW_DECODERS -DB1M -D_IMPL_NS_NET
INCLUDES += -I$(DEPTH)/base/src
ifndef NO_UNIX_ASYNC_DNS
DEFINES += -DUNIX_ASYNC_DNS
endif
ifndef NO_UNIX_LDAP
INCLUDES += -I$(DIST)/include
DEFINES += -DLIBNET_LDAP
endif
#
# This converts mime.types to C source code,
# and also to an HTML table that shows what's in it.
@@ -41,6 +119,28 @@ MIME_TYPES_UNIX = ./mime.types-unix
MIME_TYPES_NONUNIX = ./mime.types-nonunix
AD2C = sh $(DEPTH)/cmd/xfe/ad2c
#
# Workaround for a SCO compiler bug.
#
# If mkutils.c is compiled optimized, password authorization
# always fails. Probably due to NET_UUEncode routine.
#
# We could try using GCC 2.7.x instead, since that is the first
# version that can produce SCO ELF binaries.
#
ifeq ($(OS_ARCH),SCOOS)
SCO_OPT_FIX = -O0
endif
$(OBJDIR)/mkformat.o: mkformat.c mktypes.h
$(LIBRARY): $(OBJS)
$(OBJDIR)/mkutils.o $(OBJDIR)/LITE_mkutils.o: mkutils.c
@$(MAKE_OBJDIR)
$(CC) -o $@ -c $(CFLAGS) $(SCO_OPT_FIX) $<
mktypes.h: $(MIME_TYPES) $(MIME_TYPES_UNIX) $(MIME_TYPES_NONUNIX)
rm -f $@
@echo "generating $@ from $<..." ; \

View File

@@ -1,33 +1,28 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
* the License for the specific language governing rights and limitations
* under the License.
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Original Code is Mozilla Communicator client code.
*
* The Initial Developer of the Original code is Netscape Communications
* Corporation. Portions created by Netscape are Copyright (C) 1998
* Netscape Communications Corporation. All Rights Reserved.
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "net.h"
#include "mktrace.h"
#include "structs.h"
#include "ctxtfunc.h"
#include "xp_list.h"
#include "nsString.h"
#include "nsIStreamListener.h"
#include "nsINetSupport.h"
#include "nsNetStream.h"
#include "net_strm.h"
/****************************************************************************/
/* Beginning of MWContext Evil!!! */
@@ -47,100 +42,6 @@ stub_noop(int x, ...)
return 0;
}
static nsINetSupport *getNetSupport(nsISupports *ais)
{
if (ais != NULL) {
nsINetSupport *ins = NULL;
ais->QueryInterface(kINetSupportIID, (void **) &ins);
return ins;
}
return NULL;
}
void stub_Alert(MWContext *context,
const char *msg)
{
nsINetSupport *ins;
if (ins = getNetSupport(NULL)) {
nsString str(msg);
ins->Alert(str);
ins->Release();
} else {
PR_LogPrint("Alert: %s", msg);
}
}
extern "C" void FE_Alert(MWContext *context, const char *msg)
{
stub_Alert(context, msg);
}
XP_Bool stub_Confirm(MWContext *context,
const char *msg)
{
nsINetSupport *ins;
if (ins = getNetSupport(NULL)) {
XP_Bool res;
nsString str(msg);
res = ins->Confirm(str);
ins->Release();
return res;
} else {
PR_LogPrint("Confirm: %s", msg);
}
return FALSE;
}
char *stub_Prompt(MWContext *context,
const char *msg,
const char *def)
{
nsINetSupport *ins;
if (ins = getNetSupport(NULL)) {
nsString str(msg);
nsString defStr(def);
nsString res;
if (ins->Prompt(msg, defStr, res)) {
ins->Release();
return res.ToNewCString();
}
ins->Release();
} else {
PR_LogPrint("Prompt: %s (default = %s)", msg, def);
}
return NULL;
}
PRIVATE XP_Bool
stub_PromptUsernameAndPassword(MWContext *window_id,
const char *msg,
char **username,
char **password)
{
nsINetSupport *ins;
if (ins = getNetSupport(NULL)) {
nsString str(msg);
nsString userStr;
nsString pwdStr;
if (ins->PasswordPrompt(msg, userStr, pwdStr)) {
ins->Release();
*username = userStr.ToNewCString();
*password = pwdStr.ToNewCString();
return TRUE;
}
ins->Release();
} else {
PR_LogPrint("Password prompt: %s", msg);
}
return FALSE;
}
PRIVATE void stub_GraphProgressInit(MWContext *context,
URL_Struct *URL_s,
int32 content_length)
@@ -154,9 +55,7 @@ PRIVATE void stub_GraphProgressInit(MWContext *context,
*/
pConn = (nsConnectionInfo *)URL_s->fe_data;
if ((NULL != pConn) && (NULL != pConn->pConsumer)) {
nsAutoString status;
pConn->pConsumer->OnProgress(0, content_length, status);
pConn->pConsumer->OnProgress(0, content_length, NULL);
}
}
}
@@ -177,9 +76,7 @@ PRIVATE void stub_GraphProgress(MWContext *context,
*/
pConn = (nsConnectionInfo *)URL_s->fe_data;
if ((NULL != pConn) && (NULL != pConn->pConsumer)) {
nsAutoString status;
pConn->pConsumer->OnProgress(bytes_received, content_length, status);
pConn->pConsumer->OnProgress(bytes_received, content_length, NULL);
}
}
}
@@ -191,12 +88,6 @@ PRIVATE void stub_GraphProgressDestroy(MWContext *context,
{
nsConnectionInfo *pConn;
/*
* XXX: Currently this function never calls OnProgress(...) because
* netlib calls FE_GraphProgressDestroy(...) after closing the
* stream... So, OnStopBinding(...) has already been called and
* the nsConnectionInfo->pConsumer has been released and NULLed...
*/
if (NULL != URL_s->fe_data) {
/*
* Retrieve the nsConnectionInfo object from the fe_data field
@@ -204,9 +95,7 @@ PRIVATE void stub_GraphProgressDestroy(MWContext *context,
*/
pConn = (nsConnectionInfo *)URL_s->fe_data;
if ((NULL != pConn) && (NULL != pConn->pConsumer)) {
nsAutoString status;
pConn->pConsumer->OnProgress(total_bytes_read, content_length, status);
pConn->pConsumer->OnProgress(total_bytes_read, content_length, NULL);
}
}
}
@@ -271,7 +160,7 @@ PRIVATE void stub_GraphProgressDestroy(MWContext *context,
#define stub_SetProgressBarPercent (SetProgressBarPercent_t)stub_noop
#define stub_SetBackgroundColor (SetBackgroundColor_t)stub_noop
#define stub_Progress (Progress_t)stub_noop
#define stub_Alert (Alert_t)stub_Alert
#define stub_Alert (Alert_t)stub_noop
#define stub_SetCallNetlibAllTheTime (SetCallNetlibAllTheTime_t)stub_noop
#define stub_ClearCallNetlibAllTheTime (ClearCallNetlibAllTheTime_t)stub_noop
#define stub_GraphProgressInit (GraphProgressInit_t)stub_GraphProgressInit
@@ -281,10 +170,10 @@ PRIVATE void stub_GraphProgressDestroy(MWContext *context,
#define stub_UseFancyNewsgroupListing (UseFancyNewsgroupListing_t)stub_noop
#define stub_FileSortMethod (FileSortMethod_t)stub_noop
#define stub_ShowAllNewsArticles (ShowAllNewsArticles_t)stub_noop
#define stub_Confirm (Confirm_t)stub_Confirm
#define stub_Prompt (Prompt_t)stub_Prompt
#define stub_Confirm (Confirm_t)stub_noop
#define stub_Prompt (Prompt_t)stub_noop
#define stub_PromptWithCaption (PromptWithCaption_t)stub_noop
#define stub_PromptUsernameAndPassword (PromptUsernameAndPassword_t)stub_PromptUsernameAndPassword
#define stub_PromptUsernameAndPassword (PromptUsernameAndPassword_t)stub_noop
#define stub_PromptPassword (PromptPassword_t)stub_noop
#define stub_EnableClicking (EnableClicking_t)stub_noop
#define stub_AllConnectionsComplete (AllConnectionsComplete_t)stub_noop
@@ -312,8 +201,6 @@ PRIVATE void stub_GraphProgressDestroy(MWContext *context,
/* Just reuse the same set of context functions: */
ContextFuncs stub_context_funcs;
XP_List *stub_context_list = NULL;
MWContext *new_stub_context()
{
static int funcsInitialized = 0;
@@ -325,20 +212,12 @@ MWContext *new_stub_context()
#include "mk_cx_fn.h"
funcsInitialized = 1;
stub_context_list = XP_ListNew();
}
context = (MWContext *)calloc(sizeof(struct MWContext_), 1);
if (nsnull != context) {
context->funcs = &stub_context_funcs;
context->type = MWContextBrowser;
if (nsnull != stub_context_list) {
XP_ListAddObjectToEnd(stub_context_list, context);
}
}
context->funcs = &stub_context_funcs;
context->type = MWContextBrowser;
return context;
}
@@ -346,44 +225,9 @@ MWContext *new_stub_context()
void free_stub_context(MWContext *window_id)
{
TRACEMSG(("Freeing stub context...\n"));
if (stub_context_list) {
PRBool result;
result = XP_ListRemoveObject(stub_context_list, window_id);
PR_ASSERT(PR_TRUE == result);
}
free(window_id);
}
extern "C" MWContext * XP_FindContextOfType (MWContext * context,
MWContextType type)
{
MWContext *window_id;
/*
* Return the context that was passed in if it is the correct type
*/
if (nsnull != context) {
if (context->type == type) {
window_id = context;
}
}
/*
* Otherwise, the type MUST be a MWBrowserContext, since that is the
* only type of context that is created...
*
* Return the first stub context, since it is as good as any... :-)
*/
else if (MWContextBrowser == type) {
window_id = (MWContext *)XP_ListTopObject(stub_context_list);
}
return window_id;
}
/****************************************************************************/
/* End of MWContext Evil!!! */
/****************************************************************************/
@@ -415,9 +259,7 @@ void stub_complete(NET_StreamClass *stream)
/* Notify the Data Consumer that the Binding has completed... */
if (pConn->pConsumer) {
nsAutoString status;
pConn->pConsumer->OnStopBinding(NS_BINDING_SUCCEEDED, status);
pConn->pConsumer->OnStopBinding(NS_BINDING_SUCCEEDED, nsnull);
pConn->pConsumer->Release();
pConn->pConsumer = NULL;
}
@@ -445,9 +287,7 @@ void stub_abort(NET_StreamClass *stream, int status)
* abort...
*/
if (pConn->pConsumer) {
nsAutoString status;
pConn->pConsumer->OnStopBinding(NS_BINDING_ABORTED, status);
pConn->pConsumer->OnStopBinding(NS_BINDING_ABORTED, nsnull);
pConn->pConsumer->Release();
pConn->pConsumer = NULL;
}
@@ -466,7 +306,7 @@ int stub_put_block(NET_StreamClass *stream, const char *buffer, int32 length)
/*
* XXX: Sometimes put_block(...) will be called without having
* called is_write_ready(...) first. One case is when a stream
* called is_write_ready(...) first. Once case is when a stream
* is interrupted... In this case, Netlib will call put_block(...)
* with the string "Transfer Interrupted!"
*/
@@ -506,6 +346,7 @@ unsigned int stub_is_write_ready(NET_StreamClass *stream)
return free_space;
}
extern "C" {
/*
@@ -516,6 +357,7 @@ NET_StreamBuilder (FO_Present_Types format_out,
URL_Struct *URL_s,
MWContext *context)
{
// MOZ_FUNCTION_STUB;
NET_StreamClass *stream = NULL;
PRBool bSuccess = PR_TRUE;
@@ -573,11 +415,9 @@ NET_StreamBuilder (FO_Present_Types format_out,
/* Notify the data consumer that Binding is beginning...*/
/* XXX: check result to terminate connection if necessary */
#ifdef NOISY
printf("+++ Created a stream for %s\n", URL_s->address);
#endif
if (pConn->pConsumer) {
pConn->pConsumer->OnStartBinding(URL_s->content_type);
pConn->pConsumer->OnStartBinding();
}
}
}

View File

@@ -1,5 +1,4 @@
#! gmake
#
#!/usr/local/bin/tcl -f
# The contents of this file are subject to the Netscape Public License
# Version 1.0 (the "NPL"); you may not use this file except in
# compliance with the NPL. You may obtain a copy of the NPL at
@@ -15,23 +14,11 @@
# Copyright (C) 1998 Netscape Communications Corporation. All Rights
# Reserved.
#
#
DEPTH = ..
DIRS = \
cache \
client \
cnvts \
mimetype \
main \
protocol \
util
ifdef MODULAR_NETLIB
DIRS += module
endif
include $(DEPTH)/config/rules.mk
# This takes a date string (fairly arbitrarily formatted), and spews out
# a number suitable for pasting into the timebomb code.
foreach i $argv {
set num [convertclock $i]
puts "$num [fmtclock $num]"
}

View File

@@ -18,9 +18,7 @@
/* this little program will sequentially dump out
* every record in the database
*/
#include "mkcache.h"
#include "extcache.h"
#include "plstr.h"
#include <fcntl.h>
#include <sys/stat.h>
@@ -98,8 +96,8 @@ int main(int argc, char **argv)
while(!(ext_cache_database->seq)(ext_cache_database, &key, &data, 0))
{
if(key.size == PL_strlen(EXT_CACHE_NAME_STRING)
&& !PL_strcmp(key.data, EXT_CACHE_NAME_STRING))
if(key.size == XP_STRLEN(EXT_CACHE_NAME_STRING)
&& !XP_STRCMP(key.data, EXT_CACHE_NAME_STRING))
{
/* make sure it's a terminated string */
if(((char *)data.data)[data.size-1] == '\0')

View File

@@ -51,8 +51,8 @@
(definitely) i18n of the parser
$Revision: 1.2 $
$Date: 1998-05-19 00:53:22 $
$Revision: 3.1 $
$Date: 1998-03-28 03:31:25 $
*********************************************************************/
@@ -252,17 +252,17 @@ PR_IMPLEMENT(CRAWL_Error) CRAWL_GetError(CRAWL_Crawler crawler) {
*/
static PRBool
crawl_hostEquals(char *pagehost, char *sitehost) {
if ((PL_strstr(sitehost, pagehost) != NULL) || (PL_strstr(pagehost, sitehost) != NULL))
if ((XP_STRSTR(sitehost, pagehost) != NULL) || (XP_STRSTR(pagehost, sitehost) != NULL))
return PR_TRUE;
else {
char *pageDomain = PL_strchr(pagehost, '.');
char *siteDomain = PL_strchr(sitehost, '.');
char *pageDomain = XP_STRCHR(pagehost, '.');
char *siteDomain = XP_STRCHR(sitehost, '.');
if ((pageDomain != NULL) && (siteDomain != NULL)) {
char *pageDomainType = PL_strchr(pageDomain+1, '.');
char *siteDomainType = PL_strchr(siteDomain+1, '.');
char *pageDomainType = XP_STRCHR(pageDomain+1, '.');
char *siteDomainType = XP_STRCHR(siteDomain+1, '.');
if ((pageDomainType != NULL) &&
(siteDomainType != NULL) &&
(PL_strcmp(pageDomain+1, siteDomain+1) == 0)) {
(XP_STRCMP(pageDomain+1, siteDomain+1) == 0)) {
return PR_TRUE;
}
}
@@ -333,7 +333,7 @@ CRAWL_MakeCrawler(MWContext *context,
if (depth < 1) return NULL;
crawler = PR_NEWZAP(CRAWL_CrawlerStruct);
if (crawler == NULL) return NULL;
crawler->siteName = PL_strdup(siteName);
crawler->siteName = XP_STRDUP(siteName);
crawl_stringToLower(crawler->siteName);
crawler->siteHost = NET_ParseURL(crawler->siteName, GET_PROTOCOL_PART | GET_HOST_PART);
crawler->depth = depth;
@@ -404,7 +404,7 @@ CRAWL_DestroyCrawler(CRAWL_Crawler crawler) {
PL_HashTableDestroy(crawler->resourcesCached);
PL_HashTableDestroy(crawler->robotControlTable);
for (i = 0; i < crawler->numKeys; i++) {
PR_Free(crawler->keys[i]); /* these were created with PL_strdup so use PR_Free */
XP_FREE(crawler->keys[i]); /* these were created with XP_STRDUP so use XP_FREE */
}
if (crawler->keys != NULL) PR_DELETE(crawler->keys);
PR_DELETE(crawler);
@@ -433,7 +433,7 @@ crawl_processLinkWithRobotControl(CRAWL_Crawler crawler,
char *url,
CRAWL_RobotControl control,
CRAWL_CrawlerItemType type) {
PR_ASSERT(type == CRAWLER_ITEM_TYPE_PAGE);
XP_ASSERT(type == CRAWLER_ITEM_TYPE_PAGE);
if (CRAWL_GetRobotControl(control, url) == CRAWL_ROBOT_DISALLOWED) {
crawl_processNextLink(crawler);
} else {
@@ -480,12 +480,12 @@ crawl_nonpage_exit(URL_Struct *URL_s, int status, MWContext *window_id, CRAWL_Cr
default:
break;
}
PR_ASSERT(table != NULL);
XP_ASSERT(table != NULL);
if (URL_s->server_status >= 400) crawler->error |= CRAWL_SERVER_ERR;
/* add to the images cached if we are in fact caching and the cache_file is set */
if ((status >= 0) && ((crawler->cache == NULL) || (URL_s->cache_file != NULL))) {
char *url = PL_strdup(URL_s->address);
char *url = XP_STRDUP(URL_s->address);
if (url == NULL) {
crawl_outOfMemory(crawler);
return;
@@ -568,7 +568,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
case CRAWLER_ITEM_TYPE_PAGE:
/* if the previous page had any required resources, cache them now. */
if (crawler->requiredResources != NULL) {
PR_LogPrint(("required resources"));
XP_TRACE(("required resources"));
if (requiredIndex < crawler->numRequiredResources) {
crawl_processLink(crawler,
crawler->resourcesCached,
@@ -591,7 +591,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
completedTable = crawler->pagesParsed;
if (crawler->itemIndex == table->count) { /* no more items */
/* done with the pages, now do the images */
PR_LogPrint(("finished pages"));
XP_TRACE(("finished pages"));
func = crawl_processItemWithRobotControl;
crawler->currentType = CRAWLER_ITEM_TYPE_IMAGE;
completedTable = crawler->imagesCached;
@@ -604,7 +604,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
func = crawl_processItemWithRobotControl;
completedTable = crawler->imagesCached;
if (crawler->itemIndex == table->count) { /* no more items */
PR_LogPrint(("finished images"));
XP_TRACE(("finished images"));
/* done with the images, now do the resources */
func = crawl_processItemWithRobotControl;
crawler->currentType = CRAWLER_ITEM_TYPE_RESOURCE;
@@ -618,7 +618,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
func = crawl_processItemWithRobotControl;
completedTable = crawler->resourcesCached;
if (crawler->itemIndex == table->count) { /* no more items */
PR_LogPrint(("finished resources"));
XP_TRACE(("finished resources"));
if (crawler->currentDepth == crawler->depth) {
allDone = PR_TRUE;
break;
@@ -628,7 +628,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
crawler->currentType = CRAWLER_ITEM_TYPE_PAGE;
completedTable = crawler->pagesParsed;
crawler->currentDepth++;
PR_LogPrint(("depth = %d", crawler->currentDepth));
XP_TRACE(("depth = %d", crawler->currentDepth));
crawler->itemIndex = 0;
table = crawler->linkedPagesTable + crawler->currentDepth - 1;
}
@@ -671,7 +671,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
case CRAWLER_ITEM_TYPE_PAGE:
/* if the previous page had any required resources, cache them now. */
if (crawler->requiredResources != NULL) {
PR_LogPrint(("required resources"));
XP_TRACE(("required resources"));
if (requiredIndex < crawler->numRequiredResources) {
crawl_processLink(crawler,
crawler->resourcesCached,
@@ -696,7 +696,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
/* done with the pages at this level, now go to next level */
if (crawler->currentDepth < crawler->depth) {
crawler->currentDepth++;
PR_LogPrint(("depth = %d", crawler->currentDepth));
XP_TRACE(("depth = %d", crawler->currentDepth));
crawler->itemIndex = 0;
} else {
/* done with pages, now do images */
@@ -716,7 +716,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
if (crawler->itemIndex == table->count) { /* no more items */
if (crawler->currentDepth < crawler->depth) {
crawler->currentDepth++;
PR_LogPrint(("depth = %d", crawler->currentDepth));
XP_TRACE(("depth = %d", crawler->currentDepth));
crawler->itemIndex = 0;
} else {
/* done with the images, now do the resources */
@@ -737,7 +737,7 @@ void crawl_processNextLink(CRAWL_Crawler crawler) {
if (crawler->itemIndex == table->count) { /* no more items */
if (crawler->currentDepth < crawler->depth) {
crawler->currentDepth++;
PR_LogPrint(("depth = %d", crawler->currentDepth));
XP_TRACE(("depth = %d", crawler->currentDepth));
crawler->itemIndex = 0;
} else {
allDone = PR_TRUE;
@@ -770,7 +770,7 @@ void crawl_scanPageComplete(void *data, CRAWL_PageInfo pageInfo) {
int err = 0;
CRAWL_Crawler crawler = (CRAWL_Crawler)data;
URL_Struct *url_s = crawl_getPageURL_Struct(pageInfo);
char *url = PL_strdup(crawl_getPageURL(pageInfo));
char *url = XP_STRDUP(crawl_getPageURL(pageInfo));
if (url == NULL) crawl_outOfMemory(crawler);
@@ -848,9 +848,9 @@ static
PRBool crawl_isCrawlableURL(char *url) {
char *amp, *semicolon;
if (*url == '\0') return PR_FALSE;
amp = PL_strchr(url, '&');
amp = XP_STRCHR(url, '&');
if (amp != NULL) {
semicolon = PL_strchr(amp, ';');
semicolon = XP_STRCHR(amp, ';');
if (semicolon != NULL) return PR_FALSE; /* don't crawl any url with entities */
}
return PR_TRUE;
@@ -896,7 +896,7 @@ crawl_processLink(CRAWL_Crawler crawler,
}
if (crawl_cacheNearlyFull(crawler)) {
PR_LogPrint(("crawl_processLink: cache is full, stopping"));
XP_TRACE(("crawl_processLink: cache is full, stopping"));
crawler->error |= CRAWL_CACHE_FULL;
crawl_crawlerFinish(crawler); /* stop update */
return;
@@ -915,11 +915,11 @@ crawl_processLink(CRAWL_Crawler crawler,
return;
}
siteURL = NET_ParseURL(url, GET_PROTOCOL_PART | GET_HOST_PART); /* PR_Malloc'd */
siteURL = NET_ParseURL(url, GET_PROTOCOL_PART | GET_HOST_PART); /* XP_ALLOC'd */
crawl_stringToLower(siteURL);
if (crawler->stayInSite && !crawl_hostEquals(siteURL, crawler->siteHost)) {
PR_Free(siteURL);
XP_FREE(siteURL);
crawl_processNextLink(crawler); /* skip this item */
return;
}
@@ -945,11 +945,11 @@ crawl_processLink(CRAWL_Crawler crawler,
}
if (CRAWL_ReadRobotControlFile(control, crawl_doProcessItem, rec, PR_TRUE)) return; /* wait for the callback */
} else {
PR_Free(siteURL);
XP_FREE(siteURL);
crawl_outOfMemory(crawler);
return;
}
} else PR_Free(siteURL); /* we found a robot control */
} else XP_FREE(siteURL); /* we found a robot control */
if (control != NULL) {
func(crawler, url, control, type);
@@ -1019,12 +1019,12 @@ crawl_makeCacheInfoFilename(CRAWL_Crawler crawler) {
#endif
char *tmp = NULL, *tmpName, *dot, *filename;
tmp = (char *)PR_MALLOC(PL_strlen(crawler->cache->filename) + 5); /* +5 for .dat and null termination */
PL_strcpy(tmp, crawler->cache->filename);
tmp = (char *)PR_MALLOC(XP_STRLEN(crawler->cache->filename) + 5); /* +5 for .dat and null termination */
XP_STRCPY(tmp, crawler->cache->filename);
if (tmp == NULL) return NULL;
dot = PL_strchr(tmp, '.');
dot = XP_STRCHR(tmp, '.');
if (dot != NULL) *dot = '\0';
PL_strcat(tmp, ".dat");
XP_STRCAT(tmp, ".dat");
tmpName = WH_FileName(tmp, xpSARCache);
#ifndef XP_MAC
filename = WH_FilePlatformName(tmpName);
@@ -1035,7 +1035,7 @@ crawl_makeCacheInfoFilename(CRAWL_Crawler crawler) {
/* filename = tmpName; */
ConvertMacPathToUnixPath(tmpName, &filename);
#endif
PR_Free(tmp);
XP_FREE(tmp);
return filename;
}
@@ -1068,8 +1068,8 @@ crawl_processCacheInfoEntry(CRAWL_Crawler crawler, char *line, PLHashTable *ht)
PLHashNumber keyHash;
PLHashEntry *he, **hep;
char old;
char *slash = PL_strrchr(line, '/');
char *gt = PL_strchr(line, '>');
char *slash = XP_STRRCHR(line, '/');
char *gt = XP_STRCHR(line, '>');
if ((slash != NULL) && (gt != NULL)) {
char *url = gt + 1;
char *date = slash + 1;
@@ -1093,7 +1093,7 @@ crawl_processCacheInfoEntry(CRAWL_Crawler crawler, char *line, PLHashTable *ht)
/* there is an entry in the table so check the modified date */
char *end = NULL;
CRAWL_LinkInfoStruc *info = (CRAWL_LinkInfoStruc*)he->value;
time_t oldDate = strtoul(date, &end, 10);
time_t oldDate = XP_STRTOUL(date, &end, 10);
if (info->lastModifiedDate > oldDate) {
info->status = REPLACED_LINK;
} else {
@@ -1140,26 +1140,26 @@ crawl_removeDanglingLinksFromCache(CRAWL_Crawler crawler) {
if (fd == NULL) return;
while ((status = PR_Read(fd, buf, CACHE_INFO_BUF_SIZE)) > 0) {
while (n < status) {
if ((eol = PL_strchr(buf + n, '\n')) == NULL) {
if ((eol = XP_STRCHR(buf + n, '\n')) == NULL) {
/* no end of line detected so add to line and continue */
if (line == NULL) line = (char *)PR_CALLOC(status+1);
else line = (char *)PR_REALLOC(line, PL_strlen(line) + status + 1);
else line = (char *)PR_REALLOC(line, XP_STRLEN(line) + status + 1);
if (line == NULL) {
PR_Close(fd);
return;
}
PL_strcat(line, buf + n, status);
XP_STRNCAT(line, buf + n, status);
n += status;
} else {
/* end of line detected so copy line up to there */
int32 len = eol - (buf + n);
if (line == NULL) line = (char *)PR_CALLOC(len + 1);
else line = (char *)PR_REALLOC(line, PL_strlen(line) + len + 1);
else line = (char *)PR_REALLOC(line, XP_STRLEN(line) + len + 1);
if (line == NULL) {
PR_Close(fd);
return;
}
PL_strcat(line, buf + n, len);
XP_STRNCAT(line, buf + n, len);
if (crawl_processCacheInfoLine(crawler, line) != 0) {
PR_Close(fd); /* abort on bad data */
return;
@@ -1282,18 +1282,18 @@ CRAWL_CrawlerResourceConverter(int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s\n", URL_s->address));
PR_LogPrint(("CRAWL_CrawlerResourceConverter: %d %s", URL_s->server_status, URL_s->address));
XP_TRACE(("CRAWL_CrawlerResourceConverter: %d %s", URL_s->server_status, URL_s->address));
if (URL_s->SARCache != NULL) {
/* if the content length would exceed the cache limit, don't convert this */
if (((uint32)URL_s->content_length >= (URL_s->SARCache->MaxSize - URL_s->SARCache->DiskCacheSize)) &&
((uint32)URL_s->content_length < BOGUS_CONTENT_LENGTH)) {
PR_LogPrint(("not converting %s", URL_s->address));
XP_TRACE(("not converting %s", URL_s->address));
return(NULL);
}
}
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
@@ -1309,9 +1309,9 @@ CRAWL_CrawlerResourceConverter(int format_out,
#ifdef CRAWLERTEST
static void myPostProcessFn(CRAWL_Crawler crawler, URL_Struct *url_s, PRBool isCached, void *data) {
if (isCached) PR_LogPrint(("%s was cached, content length=%d", url_s->address, url_s->content_length));
else PR_LogPrint(("%s wasn't cached, content length=%d", url_s->address, url_s->content_length));
PR_LogPrint(("cache size=%d, size slop=%d", crawler->cache->DiskCacheSize, crawler->sizeSlop));
if (isCached) XP_TRACE(("%s was cached, content length=%d", url_s->address, url_s->content_length));
else XP_TRACE(("%s wasn't cached, content length=%d", url_s->address, url_s->content_length));
XP_TRACE(("cache size=%d, size slop=%d", crawler->cache->DiskCacheSize, crawler->sizeSlop));
}
static void myExitFn(CRAWL_Crawler crawler, void *data) {
@@ -1327,7 +1327,7 @@ static void myExitFn(CRAWL_Crawler crawler, void *data) {
void testCrawler(char *name, char *inURL, uint8 depth, uint32 maxSize, PRBool stayInSite) {
CRAWL_Crawler crawler;
char *url = PL_strdup(inURL);
char *url = XP_STRDUP(inURL);
#ifdef XP_MAC
MWContext *context = XP_FindSomeContext(); /* FE_GetNetHelpContext didn't work with netlib on Mac */
#else
@@ -1392,7 +1392,7 @@ NET_GetURL (URL_Struct *URL_s,
case ABOUT_TYPE_URL:
...
if (URL_s && PL_strncmp(URL_s->address, "about:crawler?", 14) == 0)
if (URL_s && XP_STRNCMP(URL_s->address, "about:crawler?", 14) == 0)
{
uint8 depth = 1;
uint32 maxsize = 200000;
@@ -1402,42 +1402,42 @@ NET_GetURL (URL_Struct *URL_s,
char * item;
char * url = "http://w3.mcom.com/";
char * name = "test.db";
item = PL_strstr(URL_s->address, "url=");
item = XP_STRSTR(URL_s->address, "url=");
if (item != NULL) {
item += 4;
end = PL_strchr(item, '&');
end = XP_STRCHR(item, '&');
if (end != NULL) {
temp = *end;
*end = '\0';
url = PL_strdup(item);
url = XP_STRDUP(item);
*end = temp;
} else url = PL_strdup(item);
} else url = XP_STRDUP(item);
}
item = PL_strstr(URL_s->address, "name=");
item = XP_STRSTR(URL_s->address, "name=");
if (item != NULL) {
item += 5;
end = PL_strchr(item, '&');
end = XP_STRCHR(item, '&');
if (end != NULL) {
temp = *end;
*end = '\0';
name = PL_strdup(item);
name = XP_STRDUP(item);
*end = temp;
} else name = PL_strdup(item);
} else name = XP_STRDUP(item);
}
item = PL_strstr(URL_s->address, "depth=");
item = XP_STRSTR(URL_s->address, "depth=");
if (item != NULL) {
item += 6;
depth = (uint8)strtoul(item, &end, 10);
depth = (uint8)XP_STRTOUL(item, &end, 10);
}
item = PL_strstr(URL_s->address, "maxsize=");
item = XP_STRSTR(URL_s->address, "maxsize=");
if (item != NULL) {
item += 8;
maxsize = strtoul(item, &end, 10);
maxsize = XP_STRTOUL(item, &end, 10);
}
item = PL_strstr(URL_s->address, "stayinsite=");
item = XP_STRSTR(URL_s->address, "stayinsite=");
if (item != NULL) {
item += 8;
if (strtoul(item, &end, 10) == 0) stayInSite = PR_FALSE;
if (XP_STRTOUL(item, &end, 10) == 0) stayInSite = PR_FALSE;
else stayInSite = PR_TRUE;
}
testCrawler(name, url, (uint8)depth, (uint32)maxsize, stayInSite);
@@ -1451,7 +1451,7 @@ NET_GetURL (URL_Struct *URL_s,
PRIVATE int net_output_about_url(ActiveEntry * cur_entry)
{
...
else if (!PL_strncasecmp(which, "crawler", 7))
else if (!strncasecomp(which, "crawler", 7))
{
return (-1);
}

View File

@@ -45,8 +45,8 @@
The parsing code is in htmparse.c
The robots.txt parser is in robotxt.c
$Revision: 1.1 $
$Date: 1998-04-30 20:53:21 $
$Revision: 3.1 $
$Date: 1998-03-28 03:31:25 $
*********************************************************************/

View File

@@ -15,17 +15,12 @@
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "xp.h"
#include "mkfe.h"
#include "plstr.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkutils.h"
#include "cvactive.h"
#include "mkgeturl.h"
#include "mkstream.h"
#include "glhist.h"
#include "xp.h"
#include "merrors.h"
@@ -40,7 +35,7 @@ typedef struct _DataObject {
MWContext *window_id;
int format_out;
URL_Struct *URL_s;
PRBool signal_at_end_of_multipart;
XP_Bool signal_at_end_of_multipart;
} DataObject;
#define NORMAL_S 1
@@ -64,7 +59,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
char *line;
char *push_buffer=NULL;
int32 push_buffer_size=0;
PRBool all_done=PR_FALSE;
XP_Bool all_done=FALSE;
DataObject *obj=stream->data_object;
BlockAllocCat(obj->prev_buffer, obj->prev_buffer_len, s, l);
obj->prev_buffer_len += l;
@@ -86,18 +81,18 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
case NORMAL_S:
{
char *cp2 = line;
int blength = PL_strlen(obj->URL_s->boundary);
int blength = XP_STRLEN(obj->URL_s->boundary);
/* look for boundary. We can rest assured that these
PL_strncmp() calls are safe, because we know that the
XP_STRNCMP() calls are safe, because we know that the
valid portion of the string starting at cp2 has a
newline in it (at *cp), and we know that boundary
strings never have newlines in them. */
if((!PL_strncmp(cp2, "--",2) &&
!PL_strncmp(cp2+2,
if((!XP_STRNCMP(cp2, "--",2) &&
!XP_STRNCMP(cp2+2,
obj->URL_s->boundary,
blength))
|| (!PL_strncmp(cp2,
|| (!XP_STRNCMP(cp2,
obj->URL_s->boundary,
blength)))
{
@@ -122,7 +117,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
(obj->next_stream,
push_buffer,
push_buffer_size);
PR_Free(push_buffer);
FREE(push_buffer);
push_buffer = NULL;
push_buffer_size = 0;
}
@@ -130,35 +125,35 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
TRACEMSG(("Completeing an open stream"));
/* if this stream is not the last one, set a flag
before completion to let completion do special stuff */
PR_ASSERT(cp2 + blength <= cp);
/* Because the above PL_strcmp calls succeeded.
XP_ASSERT(cp2 + blength <= cp);
/* Because the above XP_STRCMP calls succeeded.
Because this is true, we know the first call
to PL_strncmp below is always safe, but we
to XP_STRNCMP below is always safe, but we
need to check lengths before we can be sure
the other call is safe. */
if( (cp2 + blength + 2 < cp &&
!PL_strncmp(cp2+2+blength, "--",2))
|| !PL_strncmp(cp2+blength, "--",2))
!XP_STRNCMP(cp2+2+blength, "--",2))
|| !XP_STRNCMP(cp2+blength, "--",2))
{
/* very last boundary */
obj->next_stream->is_multipart = PR_FALSE;
obj->next_stream->is_multipart = FALSE;
/* set the all_done flag when
* we have found the final boundary
*/
all_done = PR_TRUE;
all_done = TRUE;
}
else
{
obj->next_stream->is_multipart = PR_TRUE;
obj->next_stream->is_multipart = TRUE;
}
/* complete the last stream
*/
(*obj->next_stream->complete)
(obj->next_stream);
PR_Free(obj->next_stream);
FREE(obj->next_stream);
obj->next_stream = NULL;
}
@@ -195,7 +190,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
case FOUND_BOUNDARY_S:
PR_ASSERT(*cp == '\n'); /* from the 'if' above */
XP_ASSERT(*cp == '\n'); /* from the 'if' above */
/* terminate at the newline.
* now 'line' points to a valid NULL terminated C string
@@ -227,10 +222,10 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
* stream is not going to the screen
*/
if(CLEAR_CACHE_BIT(obj->format_out) != FO_INTERNAL_IMAGE
&& (!PL_strncasecmp(obj->URL_s->content_type,
&& (!strncasecomp(obj->URL_s->content_type,
"text", 4)
||
!PL_strncasecmp(obj->URL_s->content_type,
!strncasecomp(obj->URL_s->content_type,
"image", 4)) )
{
NET_SilentInterruptWindow(obj->window_id);
@@ -247,7 +242,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
if( (CLEAR_CACHE_BIT(obj->format_out) != FO_INTERNAL_IMAGE)
&& (CLEAR_CACHE_BIT(obj->format_out) != FO_PLUGIN)
&& (CLEAR_CACHE_BIT(obj->format_out) != FO_BYTERANGE)
&& PL_strncasecmp(obj->URL_s->content_type, "image", 5))
&& strncasecomp(obj->URL_s->content_type, "image", 5))
{
obj->URL_s->fe_data = NULL;
}
@@ -262,10 +257,10 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
return(MK_UNABLE_TO_CONVERT);
}
else if(!PL_strncasecmp(line, "CONTENT-TYPE:", 13))
else if(!strncasecomp(line, "CONTENT-TYPE:", 13))
{
strtok(line+13, ";"); /* terminate at ; */
XP_STRTOK(line+13, ";"); /* terminate at ; */
StrAllocCopy(obj->URL_s->content_type,
XP_StripLine(line+13));
@@ -281,14 +276,14 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
{
/* Pass all other headers to the MIME header parser
*/
char *value = PL_strchr(line, ':');
char *value = XP_STRCHR(line, ':');
if(value)
value++;
NET_ParseMimeHeader(NET_AllowForeignCookies,
obj->window_id,
obj->URL_s,
line,
value, PR_FALSE);
value, FALSE);
}
line = cp+1;
line_length = 0;
@@ -318,7 +313,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
rv = (*obj->next_stream->put_block)(obj->next_stream,
line,
MAX_MIME_LINE);
PR_Free(push_buffer);
FREE(push_buffer);
push_buffer = 0;
push_buffer_size = 0;
}
@@ -340,7 +335,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
new_size = obj->prev_buffer_len -
((line - obj->prev_buffer) + MAX_MIME_LINE);
memmove(obj->prev_buffer, line+MAX_MIME_LINE, new_size);
XP_MEMMOVE(obj->prev_buffer, line+MAX_MIME_LINE, new_size);
obj->prev_buffer_len = new_size;
return(0);
@@ -352,7 +347,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
* the part that has been used
*/
obj->prev_buffer_len -= (line - obj->prev_buffer);
memmove(obj->prev_buffer, line, obj->prev_buffer_len);
XP_MEMMOVE(obj->prev_buffer, line, obj->prev_buffer_len);
}
/* if there is anything in the push buffer send it now
@@ -366,7 +361,7 @@ PRIVATE int net_MultipleDocumentWrite (NET_StreamClass *stream, CONST char* s, i
push_buffer,
push_buffer_size);
}
PR_Free(push_buffer);
FREE(push_buffer);
if (rv < 0)
return rv;
}
@@ -393,11 +388,11 @@ PRIVATE void net_MultipleDocumentComplete (NET_StreamClass *stream)
if(obj->next_stream)
{
(*obj->next_stream->complete)(obj->next_stream);
PR_Free(obj->next_stream);
FREE(obj->next_stream);
}
PR_FREEIF(obj->prev_buffer);
PR_Free(obj);
FREEIF(obj->prev_buffer);
FREE(obj);
return;
}
@@ -408,11 +403,11 @@ PRIVATE void net_MultipleDocumentAbort (NET_StreamClass *stream, int status)
if(obj->next_stream)
{
(*obj->next_stream->abort)(obj->next_stream, status);
PR_Free(obj->next_stream);
FREE(obj->next_stream);
}
PR_FREEIF(obj->prev_buffer);
PR_Free(obj);
FREEIF(obj->prev_buffer);
FREE(obj);
return;
}
@@ -431,20 +426,20 @@ CV_MakeMultipleDocumentStream (int format_out,
GH_UpdateGlobalHistory(URL_s);
URL_s->is_active = PR_TRUE; /* set to disable view source */
URL_s->is_active = TRUE; /* set to disable view source */
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
obj = PR_NEW(DataObject);
obj = XP_NEW(DataObject);
if (obj == NULL)
return(NULL);
memset(obj, 0, sizeof(DataObject));
XP_MEMSET(obj, 0, sizeof(DataObject));
if(CVACTIVE_SIGNAL_AT_END_OF_MULTIPART == (int) data_object)
obj->signal_at_end_of_multipart = PR_TRUE;
obj->signal_at_end_of_multipart = TRUE;
stream->name = "Multiple Document";
stream->complete = (MKStreamCompleteFunc) net_MultipleDocumentComplete;
@@ -461,7 +456,7 @@ CV_MakeMultipleDocumentStream (int format_out,
/* enable clicking since it doesnt go through the cache
* code
*/
NET_EnableClicking(window_id);
FE_EnableClicking(window_id);
obj->next_stream = NULL;
obj->window_id = window_id;

View File

@@ -16,17 +16,14 @@
* Reserved.
*/
/* Please leave outside of ifdef for windows precompiled headers */
#include "xp.h"
#include "plstr.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
#include "cvchunk.h" /* prototype */
#include "mkstream.h"
#include "mkgeturl.h"
#include "xp.h"
extern int MK_OUT_OF_MEMORY;
@@ -74,14 +71,14 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
*
* make sure the line has a CRLF
*/
if((line_feed = PL_strnchr(obj->in_buf, LF, obj->in_buf_size)) == NULL)
if((line_feed = XP_STRNCHR(obj->in_buf, LF, obj->in_buf_size)) == NULL)
{
return 1; /* need more data */
}
*line_feed = '\0';
semicolon = PL_strnchr(obj->in_buf, ';', line_feed-obj->in_buf);
semicolon = XP_STRNCHR(obj->in_buf, ';', line_feed-obj->in_buf);
if(semicolon)
*semicolon = '\0';
@@ -96,7 +93,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
/* strip everything up to the line feed */
obj->in_buf_size -= (line_feed+1) - obj->in_buf;
if(obj->in_buf_size)
memmove(obj->in_buf,
XP_MEMMOVE(obj->in_buf,
line_feed+1,
obj->in_buf_size);
@@ -130,7 +127,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
/* remove the part that has been pushed */
obj->in_buf_size -= data_size;
if(obj->in_buf_size)
memmove(obj->in_buf,
XP_MEMMOVE(obj->in_buf,
obj->in_buf+data_size,
obj->in_buf_size);
@@ -138,7 +135,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
if(obj->amount_of_chunk_parsed >= obj->chunk_size)
{
PR_ASSERT(obj->amount_of_chunk_parsed == obj->chunk_size);
XP_ASSERT(obj->amount_of_chunk_parsed == obj->chunk_size);
/* reinit */
obj->amount_of_chunk_parsed = 0;
obj->cur_state = STRIP_CRLF;
@@ -151,7 +148,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
/* strip two bytes */
obj->in_buf_size -= 2;
if(obj->in_buf_size)
memmove(obj->in_buf,
XP_MEMMOVE(obj->in_buf,
obj->in_buf+2,
obj->in_buf_size);
obj->cur_state = FIND_CHUNK_SIZE;
@@ -161,7 +158,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
/* strip one bytes */
obj->in_buf_size -= 1;
if(obj->in_buf_size)
memmove(obj->in_buf,
XP_MEMMOVE(obj->in_buf,
obj->in_buf+1,
obj->in_buf_size);
obj->cur_state = FIND_CHUNK_SIZE;
@@ -173,7 +170,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
int status;
/* a fatal parse error */
PR_ASSERT(0);
XP_ASSERT(0);
/* just spew the buf to the screen */
status = (obj->next_stream->put_block)(obj->next_stream,
@@ -193,7 +190,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
char *value;
/* parse until we see two CRLF's in a row */
if((line_feed = PL_strnchr(obj->in_buf, LF, obj->in_buf_size)) == NULL)
if((line_feed = XP_STRNCHR(obj->in_buf, LF, obj->in_buf_size)) == NULL)
{
return 1; /* need more data */
}
@@ -212,7 +209,7 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
/* names are separated from values with a colon
*/
value = PL_strchr(obj->in_buf, ':');
value = XP_STRCHR(obj->in_buf, ':');
if(value)
value++;
@@ -227,13 +224,13 @@ PRIVATE int net_ChunkedWrite (NET_StreamClass *stream, char* s, int32 l)
/* strip the line from the buffer */
obj->in_buf_size -= (line_feed+1) - obj->in_buf;
if(obj->in_buf_size)
memmove(obj->in_buf,
XP_MEMMOVE(obj->in_buf,
line_feed+1,
obj->in_buf_size);
}
}
PR_ASSERT(obj->in_buf_size == 0);
XP_ASSERT(obj->in_buf_size == 0);
return(1);
}
@@ -252,7 +249,7 @@ PRIVATE void net_ChunkedComplete (NET_StreamClass *stream)
DataObject *obj=stream->data_object;
(*obj->next_stream->complete)(obj->next_stream);
PR_Free(obj);
FREE(obj);
return;
}
@@ -276,11 +273,11 @@ NET_ChunkedDecoderStream (int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s\n", URL_s->address));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
obj = PR_NEWZAP(DataObject);
obj = XP_NEW_ZAP(DataObject);
if (obj == NULL)
return(NULL);
@@ -294,21 +291,15 @@ NET_ChunkedDecoderStream (int format_out,
/* clear the "chunked" encoding */
if(URL_s->transfer_encoding)
{
PR_FREEIF(URL_s->transfer_encoding);
URL_s->transfer_encoding = NULL;
}
FREE_AND_CLEAR(URL_s->transfer_encoding);
else
{
PR_FREEIF(URL_s->content_encoding);
URL_s->content_encoding = NULL;
}
FREE_AND_CLEAR(URL_s->content_encoding);
obj->next_stream = NET_StreamBuilder(format_out, URL_s, window_id);
if(!obj->next_stream)
{
PR_Free(obj);
PR_Free(stream);
XP_FREE(obj);
XP_FREE(stream);
return NULL;
}

View File

@@ -16,13 +16,7 @@
* Reserved.
*/
/* Please leave outside of ifdef for windows precompiled headers */
#include "xp.h"
#include "plstr.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
@@ -30,9 +24,10 @@
* use <FONT color=> to color the different syntactical parts
* of the HTML stream
*/
#ifndef MODULAR_NETLIB
#include "mkstream.h"
#include "mkgeturl.h"
#include "pa_parse.h"
#endif
#include "xp.h"
#include "xpgetstr.h"
#include "intl_csi.h"
#define VIEW_SOURCE_TARGET_WINDOW_NAME "%ViewSourceWindow"
@@ -58,10 +53,8 @@ typedef struct _DataObject {
StatesEnum state;
char tag[MAXTAGLEN+1];
uint tag_index;
#ifndef MODULAR_NETLIB
int tag_type;
#endif
PRBool in_broken_html;
XP_Bool in_broken_html;
} DataObject;
#define BEGIN_TAG_MARKUP "<B>"
@@ -83,13 +76,11 @@ PRIVATE char *net_BeginColorHTMLTag (DataObject *obj)
{
char *new_markup = 0;
#ifndef MODULAR_NETLIB
if (obj->tag_type == P_SCRIPT)
{
StrAllocCopy(new_markup, "</XMP><PRE>");
obj->tag_type = P_UNKNOWN;
}
#endif
StrAllocCat(new_markup, BEGIN_TAG_MARKUP);
StrAllocCat(new_markup, "&lt;");
StrAllocCat(new_markup, BEGIN_TAG_NAME_MARKUP);
@@ -104,11 +95,10 @@ PRIVATE char *net_EndColorHTMLTag (DataObject *obj)
if(obj->in_broken_html)
{
StrAllocCopy(new_markup, END_BROKEN_ATTRIBUTE_MARKUP);
obj->in_broken_html = PR_FALSE;
obj->in_broken_html = FALSE;
}
StrAllocCat(new_markup, "&gt;");
StrAllocCat(new_markup, END_TAG_MARKUP);
#ifndef MODULAR_NETLIB
if (obj->tag_type == P_SCRIPT)
{
StrAllocCat(new_markup, "</PRE><XMP>");
@@ -118,7 +108,6 @@ PRIVATE char *net_EndColorHTMLTag (DataObject *obj)
{
obj->state = IN_CONTENT;
}
#endif
return new_markup;
}
@@ -144,7 +133,7 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
if(*cp == '<')
{
/* XXX we can miss a comment spanning a block boundary */
if(i+4 <= l && !PL_strncmp(cp, "<!--", 4))
if(i+4 <= l && !XP_STRNCMP(cp, "<!--", 4))
{
StrAllocCopy(new_markup, BEGIN_COMMENT_MARKUP);
StrAllocCat(new_markup, "&lt;");
@@ -167,7 +156,7 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
if(*cp == '<')
{
/* XXX we can miss a </SCRIPT> spanning a block boundary */
if(i+8 <= l && !PL_strncasecmp(cp, "</SCRIPT", 8))
if(i+8 <= l && !XP_STRNCASECMP(cp, "</SCRIPT", 8))
{
new_markup = net_BeginColorHTMLTag(obj);
}
@@ -183,10 +172,9 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
StrAllocCopy(new_markup, END_TAG_NAME_MARKUP);
tmp_markup = net_EndColorHTMLTag(obj);
StrAllocCat(new_markup, tmp_markup);
PR_FREEIF(tmp_markup);
tmp_markup = NULL;
FREE_AND_CLEAR(tmp_markup);
}
else if(!NET_IS_SPACE(*cp))
else if(!XP_IS_SPACE(*cp))
{
obj->state = IN_BEGIN_TAG;
obj->tag_index = 0;
@@ -200,31 +188,28 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
/* go to the IN_TAG state when we see
* the first whitespace
*/
if(NET_IS_SPACE(*cp))
if(XP_IS_SPACE(*cp))
{
StrAllocCopy(new_markup, END_TAG_NAME_MARKUP);
sprintf(tiny_buf, "%c", *cp);
XP_SPRINTF(tiny_buf, "%c", *cp);
StrAllocCat(new_markup, tiny_buf);
obj->state = IN_TAG;
obj->tag[obj->tag_index] = '\0';
#ifndef MODULAR_NETLIB
obj->tag_type = pa_tokenize_tag(obj->tag);
#endif
}
else if(*cp == '>')
{
StrAllocCopy(new_markup, END_TAG_NAME_MARKUP);
tmp_markup = net_EndColorHTMLTag(obj);
StrAllocCat(new_markup, tmp_markup);
PR_FREEIF(tmp_markup);
tmp_markup = NULL;
FREE_AND_CLEAR(tmp_markup);
}
else if(*cp == '<')
{
/* protect ourselves from markup */
if(!obj->in_broken_html)
{
obj->in_broken_html = PR_TRUE;
obj->in_broken_html = TRUE;
StrAllocCopy(new_markup, BEGIN_BROKEN_ATTRIBUTE_MARKUP);
StrAllocCat(new_markup, "&lt;");
}
@@ -262,7 +247,7 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
* we will enter the UNQUOTED or the QUOTED
* ATTRIBUTE state
*/
if(!NET_IS_SPACE(*cp))
if(!XP_IS_SPACE(*cp))
{
if(*cp == '"')
{
@@ -285,8 +270,7 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
StrAllocCopy(new_markup, END_ATTRIBUTE_VALUE_MARKUP);
tmp_markup = net_EndColorHTMLTag(obj);
StrAllocCat(new_markup, tmp_markup);
PR_FREEIF(tmp_markup);
tmp_markup = NULL;
FREE_AND_CLEAR(tmp_markup);
}
else if(*cp == '<')
{
@@ -297,10 +281,10 @@ PRIVATE int net_ColorHTMLWrite (NET_StreamClass *stream, CONST char *s, int32 l)
case IN_UNQUOTED_ATTRIBUTE_VALUE:
unquoted_attribute_jump_point:
/* do nothing until you find a whitespace */
if(NET_IS_SPACE(*cp))
if(XP_IS_SPACE(*cp))
{
StrAllocCopy(new_markup, END_ATTRIBUTE_VALUE_MARKUP);
sprintf(tiny_buf, "%c", *cp);
XP_SPRINTF(tiny_buf, "%c", *cp);
StrAllocCat(new_markup, tiny_buf);
obj->state = IN_TAG;
}
@@ -309,8 +293,7 @@ unquoted_attribute_jump_point:
StrAllocCopy(new_markup, END_ATTRIBUTE_VALUE_MARKUP);
tmp_markup = net_EndColorHTMLTag(obj);
StrAllocCat(new_markup, tmp_markup);
PR_FREEIF(tmp_markup);
tmp_markup = NULL;
FREE_AND_CLEAR(tmp_markup);
}
else if(*cp == '<')
{
@@ -330,7 +313,7 @@ unquoted_attribute_jump_point:
if(obj->in_broken_html)
{
StrAllocCopy(new_markup, END_BROKEN_ATTRIBUTE_MARKUP);
obj->in_broken_html = PR_FALSE;
obj->in_broken_html = FALSE;
}
StrAllocCat(new_markup, "\"");
StrAllocCat(new_markup, END_ATTRIBUTE_VALUE_MARKUP);
@@ -351,7 +334,7 @@ unquoted_attribute_jump_point:
/* probably a broken attribute value */
if(!obj->in_broken_html)
{
obj->in_broken_html = PR_TRUE;
obj->in_broken_html = TRUE;
StrAllocCopy(new_markup, BEGIN_BROKEN_ATTRIBUTE_MARKUP);
StrAllocCat(new_markup, ">");
}
@@ -359,7 +342,7 @@ unquoted_attribute_jump_point:
break;
case IN_COMMENT:
/* do nothing until you find a closing '-->' */
if(!PL_strncmp(cp, "-->", 3))
if(!XP_STRNCMP(cp, "-->", 3))
{
StrAllocCopy(new_markup, "&gt;");
cp += 2;
@@ -375,9 +358,9 @@ unquoted_attribute_jump_point:
break;
case IN_AMPERSAND_THINGY:
/* do nothing until you find a ';' or space */
if(*cp == ';' || NET_IS_SPACE(*cp))
if(*cp == ';' || XP_IS_SPACE(*cp))
{
sprintf(tiny_buf, "%c", *cp);
XP_SPRINTF(tiny_buf, "%c", *cp);
StrAllocCopy(new_markup, tiny_buf);
StrAllocCat(new_markup, END_AMPERSAND_THINGY_MARKUP);
obj->state = IN_CONTENT;
@@ -389,7 +372,7 @@ unquoted_attribute_jump_point:
}
break;
default:
PR_ASSERT(0);
XP_ASSERT(0);
break;
}
@@ -404,22 +387,21 @@ unquoted_attribute_jump_point:
if(status < 0)
{
PR_Free(new_markup);
FREE(new_markup);
return(status);
}
/* add new markup */
status = (*obj->next_stream->put_block)
(obj->next_stream,
new_markup, PL_strlen(new_markup));
new_markup, XP_STRLEN(new_markup));
if(status < 0)
{
PR_Free(new_markup);
FREE(new_markup);
return(status);
}
PR_FREEIF(new_markup);
new_markup = NULL;
FREE_AND_CLEAR(new_markup);
}
}
@@ -464,7 +446,7 @@ net_ColorHTMLStream (int format_out,
char *old_url;
int status, type;
NET_StreamClass *next_stream, *new_stream;
PRBool is_html_stream = PR_FALSE;
Bool is_html_stream = FALSE;
INTL_CharSetInfo csi = LO_GetDocumentCharacterSetInfo(window_id);
INTL_CharSetInfo next_csi;
@@ -475,11 +457,11 @@ net_ColorHTMLStream (int format_out,
*/
type = NET_URL_Type(URL_s->address);
if(data_obj
&& !PL_strcmp((char *)data_obj, TEXT_HTML)
&& !XP_STRCMP((char *)data_obj, TEXT_HTML)
&& type != MAILBOX_TYPE_URL
&& type != IMAP_TYPE_URL
&& type != NEWS_TYPE_URL)
is_html_stream = PR_TRUE;
is_html_stream = TRUE;
/* use a new named window */
StrAllocCopy(URL_s->window_target, VIEW_SOURCE_TARGET_WINDOW_NAME);
@@ -495,15 +477,15 @@ net_ColorHTMLStream (int format_out,
/* alloc a new chrome struct and stick it in the URL
* so that we can turn off the relavent stuff
*/
URL_s->window_chrome = PR_NEW(Chrome);
URL_s->window_chrome = XP_NEW(Chrome);
if(URL_s->window_chrome)
{
/* zero everything to turn off all chrome */
memset(URL_s->window_chrome, 0, sizeof(Chrome));
XP_MEMSET(URL_s->window_chrome, 0, sizeof(Chrome));
URL_s->window_chrome->type = MWContextDialog;
URL_s->window_chrome->show_scrollbar = PR_TRUE;
URL_s->window_chrome->allow_resize = PR_TRUE;
URL_s->window_chrome->allow_close = PR_TRUE;
URL_s->window_chrome->show_scrollbar = TRUE;
URL_s->window_chrome->allow_resize = TRUE;
URL_s->window_chrome->allow_close = TRUE;
}
/* call the HTML parser */
@@ -522,7 +504,7 @@ net_ColorHTMLStream (int format_out,
if(!next_stream)
{
PR_Free(old_url);
FREE(old_url);
return(NULL);
}
next_csi = LO_GetDocumentCharacterSetInfo(next_stream->window_id);
@@ -548,17 +530,17 @@ net_ColorHTMLStream (int format_out,
else
StrAllocCat(new_markup, "<PRE>");
PR_Free(old_url);
FREE(old_url);
status = (*next_stream->put_block)(next_stream,
new_markup,
PL_strlen(new_markup));
PR_Free(new_markup);
XP_STRLEN(new_markup));
FREE(new_markup);
if(status < 0)
{
(*next_stream->abort)(next_stream, status);
PR_Free(next_stream);
FREE(next_stream);
return(NULL);
}
@@ -569,32 +551,30 @@ net_ColorHTMLStream (int format_out,
* and attach the next stream to it
*/
new_stream = PR_NEW(NET_StreamClass);
new_stream = XP_NEW(NET_StreamClass);
if(new_stream == NULL)
{
(*next_stream->abort)(next_stream, status);
PR_Free(next_stream);
FREE(next_stream);
return(NULL);
}
obj = PR_NEW(DataObject);
obj = XP_NEW(DataObject);
if (obj == NULL)
{
(*next_stream->abort)(next_stream, status);
PR_Free(next_stream);
PR_Free(new_stream);
FREE(next_stream);
FREE(new_stream);
return(NULL);
}
memset(obj, 0, sizeof(DataObject));
XP_MEMSET(obj, 0, sizeof(DataObject));
obj->state = IN_CONTENT;
obj->next_stream = next_stream;
#ifndef MODULAR_NETLIB
obj->tag_type = P_UNKNOWN;
#endif
new_stream->name = "HTML Colorer";
new_stream->complete = (MKStreamCompleteFunc) net_ColorHTMLComplete;

View File

@@ -16,15 +16,14 @@
* Reserved.
*/
/* Please leave outside of ifdef for windows precompiled headers */
#include "xp.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
#include "mkstream.h"
#include "mkgeturl.h"
#include "xp.h"
typedef struct _DataObject {
FILE * fp;
char * filename;
@@ -52,9 +51,9 @@ PRIVATE void net_SaveToDiskComplete (NET_StreamClass *stream)
DataObject *obj=stream->data_object;
fclose(obj->fp);
PR_FREEIF(obj->filename);
FREEIF(obj->filename);
PR_Free(obj);
FREE(obj);
return;
}
@@ -66,7 +65,7 @@ PRIVATE void net_SaveToDiskAbort (NET_StreamClass *stream, int status)
if(obj->filename)
{
remove(obj->filename);
PR_Free(obj->filename);
FREE(obj->filename);
}
return;
@@ -90,11 +89,11 @@ fe_MakeSaveAsStream (int format_out,
PR_snprintf(filename, sizeof(filename), "foo%d.unknown",count++);
fp = fopen(filename,"w");
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
obj = PR_NEW(DataObject);
obj = XP_NEW(DataObject);
if (obj == NULL)
return(NULL);

View File

@@ -18,18 +18,15 @@
/* cvextcon.c --- using external Unix programs as content-encoding filters.
*/
#include "xp.h"
#include "plstr.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkutils.h"
#include "mkstream.h"
#include "mkgeturl.h"
#include "xp.h"
#include "cvextcon.h"
#include "mkformat.h"
#include <fcntl.h>
#include <sys/wait.h>
#include <signal.h>
#ifdef __sgi
#include <bstring.h> /* FD_ZERO uses bzero() which needs this */
@@ -45,7 +42,7 @@ typedef struct _CVG_DataObject {
} CVG_DataObject;
PRIVATE int net_ExtConverterRead (CVG_DataObject *data, PRBool block_p)
PRIVATE int net_ExtConverterRead (CVG_DataObject *data, Bool block_p)
{
char input_buffer [1024];
int bytes_read;
@@ -123,7 +120,7 @@ PRIVATE int net_ExtConverterWrite (NET_StreamClass *stream,
/* Now read as much as possible (until done, or the pipe is drained.)
*/
{
int status = net_ExtConverterRead (data, PR_FALSE);
int status = net_ExtConverterRead (data, FALSE);
/* abort */
if (status < 0)
return status;
@@ -188,7 +185,7 @@ PRIVATE void net_ExtConverterComplete (NET_StreamClass *stream)
of its output to show up on its stdout; then close stdout, and kill
the process. */
close (data->outfd);
net_ExtConverterRead (data, PR_TRUE);
net_ExtConverterRead (data, TRUE);
close (data->infd);
net_KillConverterProcess (data);
@@ -234,13 +231,13 @@ NET_ExtConverterConverter (int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s\n", URL_s->address));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
memset(stream, 0, sizeof(NET_StreamClass));
XP_MEMSET(stream, 0, sizeof(NET_StreamClass));
obj = PR_NEW(CVG_DataObject);
obj = XP_NEW(CVG_DataObject);
if (obj == NULL)
return(NULL);
memset(obj, 0, sizeof(CVG_DataObject));
@@ -266,14 +263,14 @@ NET_ExtConverterConverter (int format_out,
if (ext_con_obj->is_encoding_converter)
{
old = URL_s->content_encoding;
new = PL_strdup (ext_con_obj->new_format);
new = XP_STRDUP (ext_con_obj->new_format);
if (!new) return (NULL);
URL_s->content_encoding = new;
}
else
{
old = URL_s->content_type;
new = PL_strdup (ext_con_obj->new_format);
new = XP_STRDUP (ext_con_obj->new_format);
if (!new) return (NULL);
URL_s->content_type = new;
}
@@ -282,12 +279,12 @@ NET_ExtConverterConverter (int format_out,
if (ext_con_obj->is_encoding_converter)
{
PR_Free (URL_s->content_encoding);
XP_FREE (URL_s->content_encoding);
URL_s->content_encoding = old;
}
else
{
PR_Free (URL_s->content_type);
XP_FREE (URL_s->content_type);
URL_s->content_type = old;
}
}

View File

@@ -17,19 +17,14 @@
*/
/* Please leave outside of ifdef for window precompiled headers */
#include "xp.h"
#include "netutils.h"
#include "mkfe.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include "prmem.h"
#include "plstr.h"
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
#include "xp.h"
#include "mkstream.h"
#include "mkgeturl.h"
#include "cvextcon.h"
#include "mkformat.h"
#include "il_strm.h" /* Image Library stream converters. */
@@ -42,7 +37,7 @@
#include "msgcom.h"
#include "msgnet.h"
#include "mkautocf.h" /* Proxy auto-config */
#include "cvjscfg.h" /* Javascript config */
#include "mkjscfg.h" /* Javascript config */
#include "mkhelp.h"
#include "xlate.h" /* Text and PostScript converters */
@@ -52,7 +47,7 @@
#include "intl_csi.h"
#ifdef MOZ_SMARTUPDATE
#ifdef JAVA
#include "softupdt.h" /* software update converters */
#endif
@@ -64,7 +59,7 @@
#include "xpgetstr.h"
extern int XP_EDITOR_NON_HTML;
#include "marimurl.h"
#include "mkmarimb.h"
#ifdef CRAWLER
/* crawler converters */
@@ -92,7 +87,7 @@ NET_PrintRawToDisk(int format_out,
typedef struct MIME_DataObject {
MimeDecoderData *decoder; /* State used by the decoder */
NET_StreamClass *next_stream; /* Where the output goes */
PRBool partial_p; /* Whether we should close that stream */
XP_Bool partial_p; /* Whether we should close that stream */
} MIME_DataObject;
@@ -139,7 +134,7 @@ PRIVATE void net_MimeEncodingConverterComplete (NET_StreamClass *stream)
if (data->decoder)
{
MimeDecoderDestroy(data->decoder, PR_FALSE);
MimeDecoderDestroy(data->decoder, FALSE);
data->decoder = 0;
}
@@ -147,9 +142,9 @@ PRIVATE void net_MimeEncodingConverterComplete (NET_StreamClass *stream)
if (!data->partial_p && data->next_stream)
{
(*data->next_stream->complete) (data->next_stream);
PR_Free (data->next_stream);
XP_FREE (data->next_stream);
}
PR_Free (data);
XP_FREE (data);
}
PRIVATE void net_MimeEncodingConverterAbort (NET_StreamClass *stream, int status)
@@ -158,7 +153,7 @@ PRIVATE void net_MimeEncodingConverterAbort (NET_StreamClass *stream, int status
if (data->decoder)
{
MimeDecoderDestroy(data->decoder, PR_TRUE);
MimeDecoderDestroy(data->decoder, TRUE);
data->decoder = 0;
}
@@ -166,9 +161,9 @@ PRIVATE void net_MimeEncodingConverterAbort (NET_StreamClass *stream, int status
if (!data->partial_p && data->next_stream)
{
(*data->next_stream->abort) (data->next_stream, status);
PR_Free (data->next_stream);
XP_FREE (data->next_stream);
}
PR_Free (data);
XP_FREE (data);
}
#endif /* MOZ_MAIL_NEWS */
@@ -177,7 +172,7 @@ NET_MimeEncodingConverter_1 (int format_out,
void *data_obj,
URL_Struct *URL_s,
MWContext *window_id,
PRBool partial_p,
XP_Bool partial_p,
NET_StreamClass *next_stream)
{
#ifdef MOZ_MAIL_NEWS
@@ -189,32 +184,32 @@ NET_MimeEncodingConverter_1 (int format_out,
TRACEMSG(("Setting up encoding stream. Have URL: %s\n", URL_s->address));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
memset(stream, 0, sizeof(NET_StreamClass));
XP_MEMSET(stream, 0, sizeof(NET_StreamClass));
obj = PR_NEW(MIME_DataObject);
obj = XP_NEW(MIME_DataObject);
if (obj == NULL)
return(NULL);
memset(obj, 0, sizeof(MIME_DataObject));
if (!PL_strcasecmp (type, ENCODING_QUOTED_PRINTABLE))
if (!strcasecomp (type, ENCODING_QUOTED_PRINTABLE))
fn = &MimeQPDecoderInit;
else if (!PL_strcasecmp (type, ENCODING_BASE64))
else if (!strcasecomp (type, ENCODING_BASE64))
fn = &MimeB64DecoderInit;
else if (!PL_strcasecmp (type, ENCODING_UUENCODE) ||
!PL_strcasecmp (type, ENCODING_UUENCODE2) ||
!PL_strcasecmp (type, ENCODING_UUENCODE3) ||
!PL_strcasecmp (type, ENCODING_UUENCODE4))
else if (!strcasecomp (type, ENCODING_UUENCODE) ||
!strcasecomp (type, ENCODING_UUENCODE2) ||
!strcasecomp (type, ENCODING_UUENCODE3) ||
!strcasecomp (type, ENCODING_UUENCODE4))
fn = &MimeUUDecoderInit;
else
abort ();
obj->decoder = fn (net_mime_decoder_cb, obj);
if (!obj->decoder)
{
PR_Free(obj);
XP_FREE(obj);
return 0;
}
@@ -229,17 +224,17 @@ NET_MimeEncodingConverter_1 (int format_out,
if (partial_p)
{
PR_ASSERT (next_stream);
XP_ASSERT (next_stream);
obj->next_stream = next_stream;
TRACEMSG(("Using existing stream in NET_MimeEncodingConverter\n"));
}
else
{
PR_ASSERT (!next_stream);
XP_ASSERT (!next_stream);
/* open next stream
*/
PR_FREEIF (URL_s->content_encoding);
FREEIF (URL_s->content_encoding);
obj->next_stream = NET_StreamBuilder (format_out, URL_s, window_id);
if (!obj->next_stream)
@@ -261,7 +256,7 @@ NET_MimeEncodingConverter_1 (int format_out,
return stream;
#else
PR_ASSERT(0);
XP_ASSERT(0);
return(NULL);
#endif /* MOZ_MAIL_NEWS */
}
@@ -274,7 +269,7 @@ NET_MimeEncodingConverter (int format_out,
MWContext *window_id)
{
return NET_MimeEncodingConverter_1 (format_out, data_obj, URL_s, window_id,
PR_FALSE, 0);
FALSE, 0);
}
NET_StreamClass *
@@ -285,7 +280,7 @@ NET_MimeMakePartialEncodingConverterStream (int format_out,
NET_StreamClass *next_stream)
{
return NET_MimeEncodingConverter_1 (format_out, data_obj, URL_s, window_id,
PR_TRUE, next_stream);
TRUE, next_stream);
}
/* Registers the default things that should be registered cross-platform.
@@ -301,7 +296,7 @@ EDT_ErrorOut (int format_out,
MWContext *window_id)
{
NET_Alert(window_id, XP_GetString(XP_EDITOR_NON_HTML));
FE_Alert(window_id, XP_GetString(XP_EDITOR_NON_HTML));
return(NULL);
}
@@ -441,7 +436,7 @@ net_RegisterDefaultDecoders (void)
NET_RegisterContentTypeConverter (APPLICATION_APPLEFILE, FO_SAVE_AS,
NULL, fe_MakeAppleSingleDecodeStream_1);
#endif
#if defined(XP_MAC) || defined(XP_UNIX) || defined(XP_PC)
#if defined(XP_MAC) || defined(XP_UNIX) || defined(XP_WIN) || defined(XP_OS2)
/* the new apple single/double and binhex decode. 20oct95 */
NET_RegisterContentTypeConverter (APPLICATION_BINHEX, FO_PRESENT,
NULL, fe_MakeBinHexDecodeStream);
@@ -623,7 +618,7 @@ net_RegisterDefaultDecoders (void)
NET_RegisterContentTypeConverter("*", FO_CACHE_AND_ROBOTS_TXT,
NULL, NET_CacheConverter);
#endif /* CRAWLER */
#ifdef MOZ_SMARTUPDATE
#ifdef JAVA
NET_RegisterContentTypeConverter("*", FO_SOFTWARE_UPDATE, NULL, SU_NewStream);
NET_RegisterContentTypeConverter(APPLICATION_JAVAARCHIVE, FO_PRESENT, NULL, SU_NewStream);
NET_cdataCommit(APPLICATION_JAVAARCHIVE, ".jar");
@@ -884,7 +879,7 @@ typedef struct _NET_PrintRawToDiskStruct {
int16 mail_csid;
int16 win_csid;
CCCDataObject conv;
PRBool doConvert;
XP_Bool doConvert;
} NET_PrintRawToDiskStruct;
/* this converter uses the
@@ -903,11 +898,11 @@ net_PrintRawToDiskWrite (NET_StreamClass *stream, CONST char *str, int32 len)
if (obj->doConvert)
{
char *dupStr = (char *) PR_Malloc(len+1);
char *dupStr = (char *) XP_ALLOC(len+1);
if (dupStr)
{
memcpy(dupStr, str, len);
XP_MEMCPY(dupStr, str, len);
*(dupStr + len) = 0;
newStr = (char *) INTL_CallCharCodeConverter(obj->conv,
(unsigned char *)dupStr,
@@ -915,7 +910,7 @@ net_PrintRawToDiskWrite (NET_StreamClass *stream, CONST char *str, int32 len)
if (!newStr)
newStr = dupStr;
else if (newStr != dupStr)
PR_Free(dupStr);
XP_FREE(dupStr);
if (newStr)
{
@@ -929,7 +924,7 @@ net_PrintRawToDiskWrite (NET_StreamClass *stream, CONST char *str, int32 len)
rv = XP_FileWrite(str, len, obj->fp);
if (newStr)
PR_Free(newStr);
XP_FREE(newStr);
obj->bytes_read += origLen;
@@ -986,7 +981,7 @@ NET_PrintRawToDisk(int format_out,
URL_Struct *url_struct,
MWContext *context)
{
NET_PrintRawToDiskStruct *obj = PR_NEW(NET_PrintRawToDiskStruct);
NET_PrintRawToDiskStruct *obj = XP_NEW(NET_PrintRawToDiskStruct);
NET_StreamClass * stream;
INTL_CharSetInfo csi = NULL;
char *mime_charset = NULL;
@@ -994,11 +989,11 @@ NET_PrintRawToDisk(int format_out,
if(!obj)
return(NULL);
memset(obj, 0, sizeof(NET_PrintRawToDiskStruct));
XP_MEMSET(obj, 0, sizeof(NET_PrintRawToDiskStruct));
if(!context->prSetup || !context->prSetup->out)
{
PR_Free(obj);
FREE(obj);
return NULL;
}
@@ -1007,7 +1002,7 @@ NET_PrintRawToDisk(int format_out,
xpTemporary,
XP_FILE_WRITE_BIN)))
{
PR_Free(obj);
FREE(obj);
return NULL;
}
#endif
@@ -1017,14 +1012,14 @@ NET_PrintRawToDisk(int format_out,
obj->context = context;
obj->content_length = url_struct->content_length;
stream = (NET_StreamClass *) PR_NEW(NET_StreamClass);
stream = (NET_StreamClass *) XP_NEW(NET_StreamClass);
if (!stream)
{
PR_Free(obj);
FREE(obj);
return NULL;
}
memset(stream, 0, sizeof(NET_StreamClass));
XP_MEMSET(stream, 0, sizeof(NET_StreamClass));
stream->name = "PrintRawToDisk";
stream->complete = net_PrintRawToDiskComplete;

View File

@@ -15,16 +15,14 @@
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "xp.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include "mkutils.h"
#include "mkstream.h"
#include "mkgeturl.h"
#include "xp.h"
typedef struct _ProxyObj {
PRBool past_first_line;
PRBool definately_send_headers;
Bool past_first_line;
Bool definately_send_headers;
char *content_type;
char *content_encoding;
} ProxyObj;
@@ -40,17 +38,17 @@ PRIVATE int net_proxy_write (NET_StreamClass *stream, CONST char* s, int32 len)
{
write(1, "HTTP/1.0 200 OK\r\n",17);
write(1, "Content-type: ",14);
write(1, obj->content_type, PL_strlen(obj->content_type));
write(1, obj->content_type, XP_STRLEN(obj->content_type));
if(obj->content_encoding)
{
write(1, "\r\nContent-encoding: ",18);
write(1, obj->content_encoding, PL_strlen(obj->content_encoding));
write(1, obj->content_encoding, XP_STRLEN(obj->content_encoding));
}
write(1, "\r\nServer: MKLib proxy agent\r\n",29);
write(1, "\r\n", 2); /* finish it */
}
obj->past_first_line = PR_TRUE;
obj->past_first_line = TRUE;
}
write(1, s, len);
@@ -95,18 +93,18 @@ NET_ProxyConverter(int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s \n%s\n",
URL_s->address, URL_s->content_type));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
obj = PR_NEW(ProxyObj);
obj = XP_NEW(ProxyObj);
if(obj == NULL)
{
FREE(stream);
return(NULL);
}
memset(obj, 0, sizeof(ProxyObj));
XP_MEMSET(obj, 0, sizeof(ProxyObj));
stream->data_object = obj;
@@ -122,7 +120,7 @@ NET_ProxyConverter(int format_out,
/* send HTTP headers if not already getting an HTTP doc
*/
if(PL_strncasecmp(URL_s->address,"http:",5))
if(strncasecomp(URL_s->address,"http:",5))
{
obj->definately_send_headers = TRUE;
}

View File

@@ -26,7 +26,6 @@
#include "cvsimple.h"
#include "xp.h"
#include "prmem.h"
typedef void (*simple_complete_t)(void* bytes, int32 bytes_written);
@@ -50,8 +49,8 @@ simple_complete(NET_StreamClass *stream)
(obj->complete)(obj->bytes, obj->bytes_written);
}
if ( obj && obj->bytes ) PR_Free(obj->bytes);
if ( obj ) PR_Free(obj);
if ( obj && obj->bytes ) XP_FREE(obj->bytes);
if ( obj ) XP_FREE(obj);
}
@@ -63,8 +62,8 @@ simple_abort(NET_StreamClass *stream, int status)
{
NET_SimpleStreamData* obj = (NET_SimpleStreamData*) stream->data_object;
if ( obj && obj->bytes ) PR_Free(obj->bytes);
if ( obj ) PR_Free(obj);
if ( obj && obj->bytes ) XP_FREE(obj->bytes);
if ( obj ) XP_FREE(obj);
}
@@ -79,10 +78,10 @@ simple_write(NET_StreamClass *stream, const char* str, int32 len)
if ( obj->bytes_written + len > obj->max_bytes ) {
/* Round to nearest 1024 */
obj->max_bytes = ( ( ( (obj->max_bytes + len) >> 10) + 1) << 10);
obj->bytes = PR_Realloc(obj->bytes, obj->max_bytes);
obj->bytes = XP_REALLOC(obj->bytes, obj->max_bytes);
}
memcpy(obj->bytes + obj->bytes_written, str, len);
XP_MEMCPY(obj->bytes + obj->bytes_written, str, len);
obj->bytes_written+= len;
return MK_DATA_LOADED;
@@ -108,7 +107,7 @@ NET_SimpleStream(int fmt, void* data_obj, URL_Struct* URL_s, MWContext* w)
{
NET_SimpleStreamData* obj;
if ( (obj = PR_NEWZAP(NET_SimpleStreamData)) == NULL ) {
if ( (obj = XP_NEW_ZAP(NET_SimpleStreamData)) == NULL ) {
return NULL;
}

View File

@@ -17,17 +17,14 @@
*/
/* Please leave outside of ifdef for windows precompiled headers */
#include "xp.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include "mkutils.h"
#include "cvunzip.h"
#ifdef MOZILLA_CLIENT
#include "mkstream.h"
#include "mkgeturl.h"
#include "xp.h"
#include "zlib.h"
extern int MK_OUT_OF_MEMORY;
@@ -38,11 +35,11 @@ typedef struct _DataObject {
z_stream d_stream; /* decompression stream */
unsigned char *dcomp_buf;
uint32 dcomp_buf_size;
PRBool is_done;
PRBool checking_crc_footer;
XP_Bool is_done;
XP_Bool checking_crc_footer;
unsigned char *incoming_buf;
uint32 incoming_buf_size;
PRBool header_skipped;
XP_Bool header_skipped;
URL_Struct *URL_s;
uint32 crc_check;
} DataObject;
@@ -198,8 +195,8 @@ do_end_crc_check(DataObject *obj)
uint32 crc_int;
uint32 size_int;
obj->checking_crc_footer = PR_FALSE;
obj->is_done = PR_TRUE;
obj->checking_crc_footer = FALSE;
obj->is_done = TRUE;
crc_int = (uint32)obj->incoming_buf[0];
crc_int += (uint32)obj->incoming_buf[1]<<8;
@@ -236,7 +233,7 @@ PRIVATE int net_UnZipWrite (NET_StreamClass *stream, CONST char* s, int32 l)
if(obj->is_done)
{
/* multipart gzip? */
PR_ASSERT(0);
XP_ASSERT(0);
return (1);
}
@@ -259,11 +256,11 @@ PRIVATE int net_UnZipWrite (NET_StreamClass *stream, CONST char* s, int32 l)
{
/* squash the header */
obj->incoming_buf_size -= actual_header_size;
memmove(obj->incoming_buf,
XP_MEMMOVE(obj->incoming_buf,
obj->incoming_buf+actual_header_size,
obj->incoming_buf_size);
obj->header_skipped = PR_TRUE;
obj->header_skipped = TRUE;
}
else if(status == BAD_HEADER)
{
@@ -276,7 +273,7 @@ PRIVATE int net_UnZipWrite (NET_StreamClass *stream, CONST char* s, int32 l)
}
else
{
PR_ASSERT(0);
XP_ASSERT(0);
return 1;
}
}
@@ -322,7 +319,7 @@ PRIVATE int net_UnZipWrite (NET_StreamClass *stream, CONST char* s, int32 l)
if(err == Z_STREAM_END)
{
obj->checking_crc_footer = PR_TRUE;
obj->checking_crc_footer = TRUE;
break;
}
else if(err != Z_OK)
@@ -346,7 +343,7 @@ PRIVATE int net_UnZipWrite (NET_StreamClass *stream, CONST char* s, int32 l)
if(input_left_over > 0)
{
input_used_up = obj->incoming_buf_size - input_left_over;
memmove(obj->incoming_buf, obj->incoming_buf+input_used_up, input_left_over);
XP_MEMMOVE(obj->incoming_buf, obj->incoming_buf+input_used_up, input_left_over);
obj->incoming_buf_size = input_left_over;
}
else
@@ -354,7 +351,7 @@ PRIVATE int net_UnZipWrite (NET_StreamClass *stream, CONST char* s, int32 l)
obj->incoming_buf_size = 0;
}
if(obj->checking_crc_footer == PR_TRUE)
if(obj->checking_crc_footer == TRUE)
{
return do_end_crc_check(obj);
}
@@ -379,17 +376,17 @@ PRIVATE void net_UnZipComplete (NET_StreamClass *stream)
(*obj->next_stream->complete)(obj->next_stream);
err = inflateEnd(&(obj->d_stream));
PR_ASSERT(err == Z_OK);
XP_ASSERT(err == Z_OK);
if(!obj->is_done)
{
/* we didn't complete the crc and size checks */
/* @@@ not sure what to do here yet */
PR_ASSERT(0);
XP_ASSERT(0);
}
PR_Free(obj->dcomp_buf);
PR_Free(obj);
FREE(obj->dcomp_buf);
FREE(obj);
return;
}
@@ -401,10 +398,10 @@ PRIVATE void net_UnZipAbort (NET_StreamClass *stream, int status)
(*obj->next_stream->abort)(obj->next_stream, status);
err = inflateEnd(&(obj->d_stream));
PR_ASSERT(err == Z_OK);
XP_ASSERT(err == Z_OK);
PR_Free(obj->dcomp_buf);
PR_Free(obj);
FREE(obj->dcomp_buf);
FREE(obj);
return;
}
@@ -421,14 +418,14 @@ NET_UnZipConverter (int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s\n", URL_s->address));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
obj = PR_NEWZAP(DataObject);
obj = XP_NEW_ZAP(DataObject);
if (obj == NULL)
{
PR_Free(stream);
FREE(stream);
return(NULL);
}
@@ -440,13 +437,13 @@ NET_UnZipConverter (int format_out,
stream->data_object = obj; /* document info object */
stream->window_id = window_id;
obj->dcomp_buf = PR_Malloc(DECOMP_BUF_SIZE);
obj->dcomp_buf = XP_ALLOC(DECOMP_BUF_SIZE);
obj->dcomp_buf_size = DECOMP_BUF_SIZE;
if(!obj->dcomp_buf)
{
PR_Free(stream);
PR_Free(obj);
FREE(stream);
FREE(obj);
return NULL;
}
@@ -460,21 +457,20 @@ NET_UnZipConverter (int format_out,
if(err != Z_OK)
{
PR_Free(stream);
PR_Free(obj);
FREE(stream);
FREE(obj);
return NULL;
}
/* create the next stream, but strip the compressed encoding */
PR_FREEIF(URL_s->content_encoding);
URL_s->content_encoding = NULL;
FREE_AND_CLEAR(URL_s->content_encoding);
obj->next_stream = NET_StreamBuilder(format_out, URL_s, window_id);
if(!obj->next_stream)
{
inflateEnd(&obj->d_stream);
PR_Free(stream);
PR_Free(obj);
FREE(stream);
FREE(obj);
return NULL;
}

View File

@@ -17,18 +17,13 @@
*/
/* Please leave outside of ifdef for windows precompiled headers */
#include "xp.h"
#include "plstr.h"
#include "netutils.h"
#include "mkfe.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkgeturl.h"
#include <signal.h>
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
#include "mkstream.h"
#include "mkgeturl.h"
#include "xp.h"
#include "mkparse.h"
#include "cvview.h"
@@ -114,7 +109,7 @@ build_viewer_cmd(char *template, ...)
ret = (char*) realloc(ret, len + 1);
if (ret == NULL)
return NULL;
PL_strcpy(ret + off, argv);
XP_STRCPY(ret + off, argv);
to = ret + off + arglen;
break;
}
@@ -157,7 +152,7 @@ PRIVATE int net_ExtViewWriteReady (NET_StreamClass * stream)
timeout.tv_sec = 0;
timeout.tv_usec = 1; /* minimum hopefully */
memset(&write_fds, 0, sizeof(fd_set));
XP_MEMSET(&write_fds, 0, sizeof(fd_set));
FD_SET(fileno(obj->fp), &write_fds);
@@ -217,16 +212,16 @@ PRIVATE void net_ExtViewComplete (NET_StreamClass *stream)
TRACEMSG(("Invoking: %s", command));
system(command);
PR_FREEIF(obj->command);
FREEIF(obj->command);
}
else
{
pclose(obj->fp);
}
PR_FREEIF(obj->filename);
PR_FREEIF(obj->url);
PR_Free(obj);
FREEIF(obj->filename);
FREEIF(obj->url);
FREE(obj);
return;
}
@@ -240,13 +235,13 @@ PRIVATE void net_ExtViewAbort (NET_StreamClass *stream, int status)
if(obj->filename)
{
remove(obj->filename);
PR_Free(obj->filename);
FREE(obj->filename);
}
PR_FREEIF(obj->url);
PR_FREEIF(obj->command);
FREEIF(obj->url);
FREEIF(obj->command);
PR_Free(obj);
FREE(obj);
return;
}
@@ -284,13 +279,13 @@ NET_ExtViewerConverter (int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s\n", URL_s->address));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
memset(stream, 0, sizeof(NET_StreamClass));
obj = PR_NEW(CV_DataObject);
obj = XP_NEW(CV_DataObject);
if (obj == NULL)
return(NULL);
memset(obj, 0, sizeof(CV_DataObject));
@@ -327,7 +322,7 @@ NET_ExtViewerConverter (int format_out,
we're about to execute a shell, pop up a dialog box first.
*/
{
char *prog = PL_strdup (view_struct->system_command);
char *prog = XP_STRDUP (view_struct->system_command);
char *s, *start, *end;
int danger = 0;
@@ -335,11 +330,11 @@ NET_ExtViewerConverter (int format_out,
end = XP_StripLine(prog);
/* Extract the leaf name of the program: " /bin/sh -foo" ==> "sh". */
for (; *end && !NET_IS_SPACE(*end); end++)
for (; *end && !XP_IS_SPACE(*end); end++)
;
*end = 0;
if ((start = PL_strrchr (prog, '/')))
if ((start = XP_STRRCHR (prog, '/')))
start++;
else
start = XP_StripLine(prog); /* start at first non-white space */
@@ -353,18 +348,18 @@ NET_ExtViewerConverter (int format_out,
*s = 0;
/* These are things known to be shells - very bad. */
if (!PL_strcmp (start, "ash") ||
!PL_strcmp (start, "bash") ||
!PL_strcmp (start, "csh") ||
!PL_strcmp (start, "jsh") ||
!PL_strcmp (start, "ksh") ||
!PL_strcmp (start, "pdksh") ||
!PL_strcmp (start, "sh") ||
!PL_strcmp (start, "tclsh") ||
!PL_strcmp (start, "tcsh") ||
!PL_strcmp (start, "wish") || /* a tcl thing */
!PL_strcmp (start, "wksh") ||
!PL_strcmp (start, "zsh"))
if (!XP_STRCMP (start, "ash") ||
!XP_STRCMP (start, "bash") ||
!XP_STRCMP (start, "csh") ||
!XP_STRCMP (start, "jsh") ||
!XP_STRCMP (start, "ksh") ||
!XP_STRCMP (start, "pdksh") ||
!XP_STRCMP (start, "sh") ||
!XP_STRCMP (start, "tclsh") ||
!XP_STRCMP (start, "tcsh") ||
!XP_STRCMP (start, "wish") || /* a tcl thing */
!XP_STRCMP (start, "wksh") ||
!XP_STRCMP (start, "zsh"))
danger = 2;
/* Remote shells are potentially dangerous, in the case of
@@ -374,41 +369,41 @@ NET_ExtViewerConverter (int format_out,
And we don't want to squawk about "rsh somehost playulaw -".
So... allow rsh to possibly be a security hole.
*/
else if (!PL_strcmp (start, "remsh") || /* remote shell */
!PL_strcmp (start, "rksh") ||
!PL_strcmp (start, "rsh") /* remote- or restricted- */
else if (!XP_STRCMP (start, "remsh") || /* remote shell */
!XP_STRCMP (start, "rksh") ||
!XP_STRCMP (start, "rsh") /* remote- or restricted- */
)
danger = 0;
/* These are things which aren't really shells, but can do the
same damage anyway since they can write files and/or execute
other programs. */
else if (!PL_strcmp (start, "awk") ||
!PL_strcmp (start, "e") ||
!PL_strcmp (start, "ed") ||
!PL_strcmp (start, "ex") ||
!PL_strcmp (start, "gawk") ||
!PL_strcmp (start, "m4") ||
!PL_strcmp (start, "sed") ||
!PL_strcmp (start, "vi") ||
!PL_strcmp (start, "emacs") ||
!PL_strcmp (start, "lemacs") ||
!PL_strcmp (start, "xemacs") ||
!PL_strcmp (start, "temacs") ||
else if (!XP_STRCMP (start, "awk") ||
!XP_STRCMP (start, "e") ||
!XP_STRCMP (start, "ed") ||
!XP_STRCMP (start, "ex") ||
!XP_STRCMP (start, "gawk") ||
!XP_STRCMP (start, "m4") ||
!XP_STRCMP (start, "sed") ||
!XP_STRCMP (start, "vi") ||
!XP_STRCMP (start, "emacs") ||
!XP_STRCMP (start, "lemacs") ||
!XP_STRCMP (start, "xemacs") ||
!XP_STRCMP (start, "temacs") ||
/* Other dangerous interpreters */
!PL_strcmp (start, "basic") ||
!PL_strcmp (start, "expect") ||
!PL_strcmp (start, "expectk") ||
!PL_strcmp (start, "perl") ||
!PL_strcmp (start, "python") ||
!PL_strcmp (start, "rexx")
!XP_STRCMP (start, "basic") ||
!XP_STRCMP (start, "expect") ||
!XP_STRCMP (start, "expectk") ||
!XP_STRCMP (start, "perl") ||
!XP_STRCMP (start, "python") ||
!XP_STRCMP (start, "rexx")
)
danger = 1;
/* Be suspicious of anything ending in "sh". */
else if (PL_strlen (start) > 2 &&
!PL_strcmp (start + PL_strlen (start) - 2, "sh"))
else if (XP_STRLEN (start) > 2 &&
!XP_STRCMP (start + XP_STRLEN (start) - 2, "sh"))
danger = 1;
if (danger)
@@ -421,14 +416,14 @@ NET_ExtViewerConverter (int format_out,
);
if (!FE_Confirm (window_id, msg))
{
PR_Free (stream);
PR_Free (obj);
PR_Free (path);
PR_Free (prog);
FREE (stream);
FREE (obj);
FREE (path);
FREE (prog);
return(NULL);
}
}
PR_Free (prog);
FREE (prog);
}
#endif /* XP_UNIX */
@@ -448,9 +443,9 @@ NET_ExtViewerConverter (int format_out,
if(yes_stream == -1)
{
PR_Free(stream);
PR_Free(obj);
PR_Free(path);
FREE(stream);
FREE(obj);
FREE(path);
return(NULL);
}
}
@@ -462,7 +457,7 @@ NET_ExtViewerConverter (int format_out,
if(!obj->fp)
{
NET_Alert(window_id, XP_GetString(XP_ALERT_UNABLE_INVOKEVIEWER));
FE_Alert(window_id, XP_GetString(XP_ALERT_UNABLE_INVOKEVIEWER));
return(NULL);
}
@@ -474,7 +469,7 @@ NET_ExtViewerConverter (int format_out,
else
{
dot = PL_strrchr(path, '.');
dot = XP_STRRCHR(path, '.');
#ifdef XP_UNIX
/* Gag. foo.ps.gz --> tmpXXXXX.ps, not tmpXXXXX.gz. */
@@ -483,7 +478,7 @@ NET_ExtViewerConverter (int format_out,
int i = 0;
while (fe_encoding_extensions [i])
{
if (!PL_strcmp (dot, fe_encoding_extensions [i]))
if (!XP_STRCMP (dot, fe_encoding_extensions [i]))
{
*dot = 0;
dot--;
@@ -500,8 +495,8 @@ NET_ExtViewerConverter (int format_out,
tmp_filename = WH_TempName(xpTemporary, "MO");
if (!tmp_filename) {
PR_FREEIF(stream);
PR_FREEIF(obj);
FREEIF(stream);
FREEIF(obj);
return NULL;
}
if (dot)
@@ -538,8 +533,8 @@ NET_ExtViewerConverter (int format_out,
StrAllocCopy(obj->filename, tmp_filename);
}
PR_Free(path);
PR_Free(tmp_filename);
FREE(path);
XP_FREE(tmp_filename);
obj->fp = XP_FileOpen(obj->filename, xpTemporary, XP_FILE_WRITE);
@@ -551,8 +546,8 @@ NET_ExtViewerConverter (int format_out,
obj->filename);
if (s)
{
NET_Alert (window_id, s);
PR_Free (s);
FE_Alert (window_id, s);
XP_FREE (s);
}
return(NULL);
}

File diff suppressed because it is too large Load Diff

View File

View File

@@ -17,12 +17,9 @@
*/
/* Please leave outside of ifdef for window precompiled headers */
#include "mkcache.h"
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
#include "mktrace.h"
#include "prmem.h"
#include "plstr.h"
/* Publicly released Netscape cache access routines.
*
@@ -33,6 +30,7 @@
* Modifications/Addition: Gagan Saksena, 97
*/
#include "plstr2.h"
#ifndef EXT_DB_ROUTINES
#include "secnav.h"
#include "sechash.h"
@@ -68,21 +66,21 @@ typedef struct {
MODULE_PRIVATE DBT *
net_CacheDBTDup(DBT *obj)
{
DBT * rv = PR_NEW(DBT);
DBT * rv = XP_NEW(DBT);
if(!rv)
return(NULL);
rv->size = obj->size;
rv->data = PR_Malloc(rv->size);
rv->data = XP_ALLOC(rv->size);
if(!rv->data)
{
PR_Free(rv);
FREE(rv);
return(NULL);
}
memcpy(rv->data, obj->data, rv->size);
XP_MEMCPY(rv->data, obj->data, rv->size);
return(rv);
@@ -93,20 +91,20 @@ net_CacheDBTDup(DBT *obj)
MODULE_PRIVATE void net_freeCacheObj (net_CacheObject * cache_obj)
{
PR_FREEIF(cache_obj->address);
PR_FREEIF(cache_obj->post_data);
PR_FREEIF(cache_obj->post_headers);
PR_FREEIF(cache_obj->content_type);
PR_FREEIF(cache_obj->charset);
PR_FREEIF(cache_obj->content_encoding);
PR_FREEIF(cache_obj->page_services_url);
PR_FREEIF(cache_obj->filename);
FREEIF(cache_obj->address);
FREEIF(cache_obj->post_data);
FREEIF(cache_obj->post_headers);
FREEIF(cache_obj->content_type);
FREEIF(cache_obj->charset);
FREEIF(cache_obj->content_encoding);
FREEIF(cache_obj->page_services_url);
FREEIF(cache_obj->filename);
#ifndef EXT_DB_ROUTINES
PR_FREEIF(cache_obj->sec_info);
FREEIF(cache_obj->sec_info);
#endif
PR_Free(cache_obj);
FREE(cache_obj);
}
/* returns true if this DBT looks like a valid
@@ -115,7 +113,7 @@ MODULE_PRIVATE void net_freeCacheObj (net_CacheObject * cache_obj)
*/
#define MAX_VALID_DBT_SIZE 10000
MODULE_PRIVATE PRBool
MODULE_PRIVATE Bool
net_IsValidCacheDBT(DBT *obj)
{
char *cur_ptr, *max_ptr;
@@ -170,7 +168,7 @@ net_CacheStructToDBData(net_CacheObject * old_obj)
int32 total_size;
DBT *rv;
rv = PR_NEW(DBT);
rv = XP_NEW(DBT);
if(!rv)
return(NULL);
@@ -178,7 +176,7 @@ net_CacheStructToDBData(net_CacheObject * old_obj)
total_size = sizeof(net_CacheObject);
#define ADD_STRING_SIZE(string) \
total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
total_size += old_obj->string ? XP_STRLEN(old_obj->string)+1 : 0
ADD_STRING_SIZE(address);
total_size += old_obj->post_data_size+1;
@@ -193,15 +191,15 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
#undef ADD_STRING_SIZE
new_obj = PR_Malloc(total_size * sizeof(char));
new_obj = XP_ALLOC(total_size * sizeof(char));
if(!new_obj)
{
PR_Free(rv);
FREE(rv);
return NULL;
}
memset(new_obj, 0, total_size * sizeof(char));
XP_MEMSET(new_obj, 0, total_size * sizeof(char));
/*
* order is:
@@ -213,7 +211,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
* time_t last_accessed;
* time_t expires;
* uint32 content_length;
* XP_Bool is_netsite;
* Bool is_netsite;
*
* time_t lock_date;
*
@@ -235,7 +233,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
* char * content_encoding;
* char * charset;
*
* XP_Bool incomplete_file;
* Bool incomplete_file;
* uint32 total_content_length;
*
* char * page_services_url;
@@ -253,11 +251,11 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
#define STUFF_STRING(string) \
{ \
len = (old_obj->string ? PL_strlen(old_obj->string)+1 : 0); \
len = (old_obj->string ? XP_STRLEN(old_obj->string)+1 : 0); \
COPY_INT32((void *)cur_ptr, &len); \
cur_ptr = cur_ptr + sizeof(int32); \
if(len) \
memcpy((void *)cur_ptr, old_obj->string, len); \
XP_MEMCPY((void *)cur_ptr, old_obj->string, len); \
cur_ptr += len; \
}
@@ -324,7 +322,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
COPY_INT32((void *)cur_ptr, &len);
cur_ptr = cur_ptr + sizeof(int32);
memcpy((void *)cur_ptr, old_obj->sec_info, len);
XP_MEMCPY((void *)cur_ptr, old_obj->sec_info, len);
cur_ptr += len;
} else
#endif
@@ -346,7 +344,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
*/
if(old_obj->post_data_size)
{
memcpy(cur_ptr, old_obj->post_data, old_obj->post_data_size+1);
XP_MEMCPY(cur_ptr, old_obj->post_data, old_obj->post_data_size+1);
cur_ptr += old_obj->post_data_size+1;
}
@@ -383,7 +381,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
MODULE_PRIVATE net_CacheObject *
net_DBDataToCacheStruct(DBT * db_obj)
{
net_CacheObject * rv = PR_NEW(net_CacheObject);
net_CacheObject * rv = XP_NEW(net_CacheObject);
char * cur_ptr;
char * max_ptr;
uint32 len;
@@ -392,7 +390,7 @@ net_DBDataToCacheStruct(DBT * db_obj)
if(!rv)
return NULL;
memset(rv, 0, sizeof(net_CacheObject));
XP_MEMSET(rv, 0, sizeof(net_CacheObject));
/* if any strings are larger than this then
* there was a serious database error
@@ -415,13 +413,13 @@ net_DBDataToCacheStruct(DBT * db_obj)
net_freeCacheObj(rv); \
return(NULL); \
} \
rv->string = (char*)PR_Malloc(len); \
rv->string = (char*)XP_ALLOC(len); \
if(!rv->string) \
{ \
net_freeCacheObj(rv); \
return(NULL); \
} \
memcpy(rv->string, cur_ptr, len); \
XP_MEMCPY(rv->string, cur_ptr, len); \
cur_ptr += len; \
} \
}
@@ -466,7 +464,7 @@ net_DBDataToCacheStruct(DBT * db_obj)
if(len != db_obj->size)
{
TRACEMSG(("Size going in is not the same as size coming out"));
PR_Free(rv);
FREE(rv);
return(NULL);
}
@@ -480,7 +478,7 @@ net_DBDataToCacheStruct(DBT * db_obj)
if(version != CACHE_FORMAT_VERSION)
{
TRACEMSG(("Version of cache structure is wrong!: %d", version));
PR_Free(rv);
FREE(rv);
return(NULL);
}
@@ -508,12 +506,12 @@ net_DBDataToCacheStruct(DBT * db_obj)
if ( len == 0 ) {
rv->sec_info = NULL;
} else {
rv->sec_info = PR_Malloc(len);
rv->sec_info = XP_ALLOC(len);
if ( rv->sec_info == NULL ) {
return(rv);
}
memcpy(rv->sec_info, cur_ptr, len);
XP_MEMCPY(rv->sec_info, cur_ptr, len);
cur_ptr += len;
}
@@ -530,9 +528,9 @@ net_DBDataToCacheStruct(DBT * db_obj)
*/
if(rv->post_data_size)
{
rv->post_data = PR_Malloc(rv->post_data_size+1);
rv->post_data = XP_ALLOC(rv->post_data_size+1);
if(rv->post_data)
memcpy(rv->post_data, cur_ptr, rv->post_data_size+1);
XP_MEMCPY(rv->post_data, cur_ptr, rv->post_data_size+1);
cur_ptr += rv->post_data_size+1;
}
@@ -565,20 +563,20 @@ cache_test_me()
int32 total_size;
DBT *db_obj;
memset(&test, 0, sizeof(net_CacheObject));
XP_MEMSET(&test, 0, sizeof(net_CacheObject));
StrAllocCopy(test.address, "test1");
db_obj = net_CacheStructToDBData(&test);
rv = net_DBDataToCacheStruct(db_obj);
printf("test1: %s\n", rv->address);
memset(&test, 0, sizeof(net_CacheObject));
XP_MEMSET(&test, 0, sizeof(net_CacheObject));
StrAllocCopy(test.address, "test2");
StrAllocCopy(test.charset, "test2");
db_obj = net_CacheStructToDBData(&test);
rv = net_DBDataToCacheStruct(db_obj);
printf("test2: %s %s\n", rv->address, rv->charset);
memset(&test, 0, sizeof(net_CacheObject));
XP_MEMSET(&test, 0, sizeof(net_CacheObject));
StrAllocCopy(test.address, "test3");
StrAllocCopy(test.charset, "test3");
test.content_length = 3 ;
@@ -605,7 +603,7 @@ cache_test_me()
MODULE_PRIVATE DBT *
net_GenCacheDBKey(char *address, char *post_data, int32 post_data_size)
{
DBT *rv = PR_NEW(DBT);
DBT *rv = XP_NEW(DBT);
char *hash;
char *data_ptr;
int32 str_len;
@@ -618,18 +616,18 @@ net_GenCacheDBKey(char *address, char *post_data, int32 post_data_size)
if(!address)
{
PR_ASSERT(0);
XP_ASSERT(0);
rv->size = 0;
return(rv);
}
hash = PL_strchr(address, '#');
hash = XP_STRCHR(address, '#');
/* don't include '#' in a key */
if(hash)
*hash = '\0';
str_len = PL_strlen(address)+1;
str_len = XP_STRLEN(address)+1;
size = sizeof(int32); /* for check sum */
size += sizeof(int32); /* for size of address */
@@ -640,11 +638,11 @@ net_GenCacheDBKey(char *address, char *post_data, int32 post_data_size)
size += MD5_HASH_SIZE;
rv->size = size;
rv->data = PR_Malloc(size);
rv->data = XP_ALLOC(size);
if(!rv->data)
{
PR_Free(rv);
FREE(rv);
return NULL;
}
@@ -659,7 +657,7 @@ net_GenCacheDBKey(char *address, char *post_data, int32 post_data_size)
data_ptr = data_ptr + sizeof(int32);
/* put in the address string data */
memcpy(data_ptr, address, str_len);
XP_MEMCPY(data_ptr, address, str_len);
data_ptr = data_ptr + str_len;
/* set the address back to it's original form */
@@ -678,7 +676,7 @@ net_GenCacheDBKey(char *address, char *post_data, int32 post_data_size)
data_ptr = data_ptr + sizeof(int32);
/* put in the post data if there is any */
memcpy(data_ptr, post_data_hash, sizeof(post_data_hash));
XP_MEMCPY(data_ptr, post_data_hash, sizeof(post_data_hash));
}
else
{
@@ -809,10 +807,10 @@ net_GetFilenameInCacheDBT(DBT *data)
|| size > MAX_FILE_SIZE)
return(NULL);
rv = (char *)PR_Malloc(size);
rv = (char *)XP_ALLOC(size);
if(!rv)
return(NULL);
memcpy(rv, ptr+FILENAME_BYTE_POSITION, size);
XP_MEMCPY(rv, ptr+FILENAME_BYTE_POSITION, size);
TRACEMSG(("Got filename: %s from DBT", rv));
@@ -853,8 +851,8 @@ net_FreeCacheDBTdata(DBT *stuff)
{
if(stuff)
{
PR_Free(stuff->data);
PR_Free(stuff);
FREE(stuff->data);
FREE(stuff);
}
}

View File

@@ -24,20 +24,12 @@
#endif
#ifdef EXT_DB_ROUTINES
#define PRBool char
#define Bool char
#define uint32 unsigned int
#define int32 int
#define PR_NEW(structure) ((structure *) malloc(sizeof(structure)))
#define PR_Malloc (void *) malloc
#define memcpy memcpy
#define memset memset
#define TRACEMSG(x) printf x
#define FREEIF(x) do { if(x) free(x); } while(0)
#define FREE free
#define PL_strlen strlen
#define PL_strchr strchr
#define PL_strcmp strcmp
#define PR_ASSERT assert
#define MODULE_PRIVATE
#define PRIVATE static
#define TRUE !0
@@ -49,13 +41,8 @@
#endif
#ifndef EXT_DB_ROUTINES
#ifndef NSPR20
#include "prosdep.h" /* for IS_LITTLE_ENDIAN / IS_BIG_ENDIAN */
#else
#include "mkutils.h"
#include "prtypes.h"
#endif
#endif /* EXT_DB_ROUTINES */
#if !defined(IS_LITTLE_ENDIAN) && !defined(IS_BIG_ENDIAN)
@@ -63,7 +50,7 @@ ERROR! Must have a byte order
#endif
#ifdef IS_LITTLE_ENDIAN
#define COPY_INT32(_a,_b) memcpy(_a, _b, sizeof(int32));
#define COPY_INT32(_a,_b) PL_memcpy(_a, _b, sizeof(int32));
#else
#define COPY_INT32(_a,_b) /* swap */ \
do { \
@@ -85,12 +72,12 @@ typedef struct _net_CacheObject {
time_t last_modified;
time_t last_accessed;
time_t expires;
PRBool is_netsite;
Bool is_netsite;
uint32 content_length;
char * filename; /* cache file name */
int32 filename_len; /* optimization */
PRBool is_relative_path; /* is the path relative? */
Bool is_relative_path; /* is the path relative? */
/* Security information */
int32 security_on; /* is security on? */
@@ -113,7 +100,7 @@ typedef struct _net_CacheObject {
char * content_encoding;
char * charset;
PRBool incomplete_file; /* means that the whole
Bool incomplete_file; /* means that the whole
* file is not there.
* This can only be true
* if the server supports byteranges
@@ -267,6 +254,6 @@ extern net_CacheObject * net_Fast_DBDataToCacheStruct(DBT *obj);
* entry. It looks at the checksum and the
* version number to see if it's valid
*/
extern PRBool net_IsValidCacheDBT(DBT *obj);
extern Bool net_IsValidCacheDBT(DBT *obj);
#endif /* EXT_CACHE_H */

View File

@@ -21,8 +21,8 @@
/********************************************************************
$Revision: 1.2 $
$Date: 1998-05-19 00:53:23 $
$Revision: 3.1 $
$Date: 1998-03-28 03:31:31 $
*********************************************************************/
@@ -135,7 +135,7 @@ PR_IMPLEMENT(char*) CRAWL_GetNthAttributeValue(CRAWL_Tag tag, uint16 n) {
PR_IMPLEMENT(char*) CRAWL_GetAttributeValue(CRAWL_Tag tag, char *attributeName) {
int count = 0;
while (count < tag->numNames) {
if (PL_strcasecmp(attributeName, *(tag->attributeNames + count)) == 0)
if (XP_STRCASECMP(attributeName, *(tag->attributeNames + count)) == 0)
return *(tag->attributeValues + count);
count++;
}
@@ -212,7 +212,7 @@ int crawl_appendString(char **str, uint16 *len, uint16 *size, char c) {
char *newName = (char*)PR_MALLOC(*size + STRING_EXPANSION_INCREMENT);
char *old = *str;
if (newName == NULL) return -1;
memcpy(newName, *str, *size);
XP_MEMCPY(newName, *str, *size);
*str = newName;
if (old != NULL) PR_Free(old);
*size += STRING_EXPANSION_INCREMENT;
@@ -231,7 +231,7 @@ int crawl_appendStringList(char ***list_p, uint16 *len, uint16 *size, char *str)
char **newList = (char**)PR_MALLOC(sizeof(char*) * (*size + STRINGLIST_EXPANSION_INCREMENT));
char **old = list;
if (newList == NULL) return -1;
memcpy(newList, list, (sizeof(char*) * (*size)));
XP_MEMCPY(newList, list, (sizeof(char*) * (*size)));
list = newList;
if (old != NULL) PR_Free(old);
*size += STRINGLIST_EXPANSION_INCREMENT;

View File

@@ -26,8 +26,8 @@
parser calls this function whenever a begin or end tag, or run of
character data has been scanned, and does not build a tree.
$Revision: 1.1 $
$Date: 1998-04-30 20:53:21 $
$Revision: 3.1 $
$Date: 1998-03-28 03:31:31 $
*********************************************************************/

View File

@@ -20,15 +20,15 @@
#include <time.h>
#include "jsautocf.h"
#include "xp_mem.h" /* PR_NEWZAP() */
#include "xp_mem.h" /* XP_NEW_ZAP() */
#ifndef XP_MAC
#include <sys/types.h>
#endif
#include "libi18n.h"
#include "mkgeturl.h"
#include "mkstream.h"
#include "mkfe.h"
#include "mkgeturl.h"
#include "cvextcon.h"
#include "mkformat.h"
/* acharya: This file is obsolete and not used in this file.
#include "il.h"
@@ -38,6 +38,7 @@
#include "gui.h"
#include "msgcom.h"
#include "xp_reg.h"
#if defined(XP_UNIX) || defined(XP_WIN32)
#include "prnetdb.h"
#else
@@ -125,7 +126,7 @@ PRIVATE int jsacf_read_config(void)
return -1;
jsacf_src_len = st.st_size;
jsacf_src_buf = (char *)PR_Malloc(jsacf_src_len + 1);
jsacf_src_buf = (char *)XP_ALLOC(jsacf_src_len + 1);
if (!jsacf_src_buf) {
XP_FileClose(fp);
jsacf_src_len = 0;
@@ -138,7 +139,7 @@ PRIVATE int jsacf_read_config(void)
}
else
{
PR_Free(jsacf_src_buf);
XP_FREE(jsacf_src_buf);
jsacf_src_buf = NULL;
jsacf_src_len = 0;
}
@@ -161,9 +162,9 @@ PRIVATE int jsacf_write(NET_StreamClass *stream, CONST char *buf, int32 len)
JSACF_Object *obj=stream->data_object;
if (len > 0) {
if (!jsacf_src_buf)
jsacf_src_buf = (char*)PR_Malloc(len + 1);
jsacf_src_buf = (char*)XP_ALLOC(len + 1);
else
jsacf_src_buf = (char*)PR_Realloc(jsacf_src_buf,
jsacf_src_buf = (char*)XP_REALLOC(jsacf_src_buf,
jsacf_src_len + len + 1);
if (!jsacf_src_buf) { /* Out of memory */
@@ -171,7 +172,7 @@ PRIVATE int jsacf_write(NET_StreamClass *stream, CONST char *buf, int32 len)
return MK_DATA_LOADED;
}
memcpy(jsacf_src_buf + jsacf_src_len, buf, len);
XP_MEMCPY(jsacf_src_buf + jsacf_src_len, buf, len);
jsacf_src_len += len;
jsacf_src_buf[jsacf_src_len] = '\0';
}
@@ -190,7 +191,7 @@ PRIVATE void jsacf_complete(NET_StreamClass *stream)
{
JSACF_Object *obj=stream->data_object;
int err = PREF_EvaluateJSBuffer(jsacf_src_buf,jsacf_src_len);
if (jsacf_src_buf) PR_Free(jsacf_src_buf);
if (jsacf_src_buf) XP_FREE(jsacf_src_buf);
}
@@ -198,8 +199,8 @@ PRIVATE void jsacf_abort(NET_StreamClass *stream, int status)
{
JSACF_Object *obj=stream->data_object;
jsacf_loading = FALSE;
// NET_Alert(obj->context, CONFIG_LOAD_ABORTED);
PR_Free(obj);
// FE_Alert(obj->context, CONFIG_LOAD_ABORTED);
XP_FREE(obj);
}
/*
@@ -229,16 +230,16 @@ NET_JavaScriptAutoConfig(int fmt, void *data_obj, URL_Struct *URL_s, MWContext *
#endif
if (jsacf_src_buf) {
PR_Free(jsacf_src_buf);
XP_FREE(jsacf_src_buf);
jsacf_src_buf = NULL;
jsacf_src_len = 0;
}
if (!(stream = PR_NEWZAP(NET_StreamClass)))
if (!(stream = XP_NEW_ZAP(NET_StreamClass)))
return NULL;
if (!(obj = PR_NEWZAP(JSACF_Object))) {
PR_Free(stream);
if (!(obj = XP_NEW_ZAP(JSACF_Object))) {
XP_FREE(stream);
return NULL;
}

View File

@@ -23,16 +23,18 @@
*/
#include "mkutils.h"
#include "mkfe.h"
#include "mkutils.h"
#include "mkparse.h"
#include "mkgeturl.h"
#include "cookies.h"
#include "mkaccess.h"
#include "prefapi.h"
#include "jsapi.h"
#include "xp_core.h"
#include "xp_mcom.h"
#include "jscookie.h"
#include "ds.h"
#if !defined(B1M)
#include "htmldlgs.h"
#endif
#include "xpgetstr.h"
extern int MK_ACCESS_JAVASCRIPT_COOKIE_FILTER;
@@ -299,7 +301,7 @@ cookie_confirm(JSContext *cx, JSObject *obj, uint argc, jsval *argv, jsval * rva
if (!msg)
return JS_FALSE;
result = NET_Confirm(context, msg);
result = FE_Confirm(context, msg);
FREEIF(msg);
*rval = BOOLEAN_TO_JSVAL(result);
@@ -379,8 +381,8 @@ initializeJSCookieFilterStuff()
/* create our "global" object. We make the message object a child of this */
filter_obj = JS_NewObject(filter_context, &global_class, NULL, NULL);
/* MLM - don't do JS_InitStandardClasses() twice */
if (!filter_obj
|| !JS_InitStandardClasses(filter_context, filter_obj)
|| !JS_DefineFunctions(filter_context, filter_obj, filter_methods))
{
destroyJSCookieFilterStuff();
@@ -445,7 +447,7 @@ jscookie_ErrorReporter(JSContext *cx, const char *message, JSErrorReport *report
if (!msg)
return;
NET_Alert(context, msg);
FE_Alert(context, msg);
PR_Free(msg);
return;
@@ -465,7 +467,7 @@ compileJSCookieFilters(void)
filename = WH_FileName("", xpJSCookieFilters);
PR_LogPrint("+Filename for script filter is %s\n", filename);
XP_Trace("+Filename for script filter is %s\n", filename);
/* If we can't get to the file, get the hell outa dodge. */
if(XP_Stat(filename, &stats, xpJSCookieFilters))
@@ -502,12 +504,12 @@ compileJSCookieFilters(void)
XP_FileClose(fp);
PR_LogPrint("+Compiling filters.js...\n");
XP_Trace("+Compiling filters.js...\n");
ret_val = JS_EvaluateScript(filter_context, filter_obj, buffer, fileLength,
filename, 1, &rval);
PR_LogPrint("+Done.\n");
XP_Trace("+Done.\n");
PR_Free(buffer);

View File

@@ -24,13 +24,12 @@ IGNORE_MANIFEST = 1
MODULE = netlib
EXPORTS = nsIStreamListener.h \
nsINetService.h \
nsINetSupport.h \
nsIURL.h \
nsIPostToServer.h \
nsIHttpUrl.h \
$(NULL)
DIRS = tests
#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
@@ -56,16 +55,37 @@ DEFFILE=net.def
#//
#//------------------------------------------------------------------------
OBJS= \
.\$(OBJDIR)\nsNetIDs.obj \
.\$(OBJDIR)\nsNetService.obj \
.\$(OBJDIR)\nsNetStream.obj \
.\$(OBJDIR)\nsURL.obj \
.\$(OBJDIR)\pllist.obj \
.\$(OBJDIR)\plstr2.obj \
.\$(OBJDIR)\bamwrap.obj \
.\$(OBJDIR)\net_serv.obj \
.\$(OBJDIR)\net_strm.obj \
.\$(OBJDIR)\nsurl.obj \
.\$(OBJDIR)\nsHttpUrl.obj \
.\$(OBJDIR)\nsStubContext.obj \
.\$(OBJDIR)\nsNetStubs.obj \
.\$(OBJDIR)\nsNetFE.obj \
.\$(OBJDIR)\depend.obj \
.\$(OBJDIR)\moz_depend.obj \
.\$(OBJDIR)\mkgeturl.obj \
.\$(OBJDIR)\mkconect.obj \
.\$(OBJDIR)\mksockrw.obj \
.\$(OBJDIR)\mkselect.obj \
.\$(OBJDIR)\mkcache.obj \
.\$(OBJDIR)\mkmemcac.obj \
.\$(OBJDIR)\extcache.obj \
.\$(OBJDIR)\mkextcac.obj \
.\$(OBJDIR)\mkpadpac.obj \
.\$(OBJDIR)\mkautocf.obj \
.\$(OBJDIR)\mkaccess.obj \
.\$(OBJDIR)\mkformat.obj \
.\$(OBJDIR)\jscookie.obj \
.\$(OBJDIR)\mkparse.obj \
.\$(OBJDIR)\mkutils.obj \
.\$(OBJDIR)\mkfsort.obj \
.\$(OBJDIR)\mksort.obj \
.\$(OBJDIR)\mkmessag.obj \
.\$(OBJDIR)\mktrace.obj \
.\$(OBJDIR)\mkhttp.obj \
.\$(OBJDIR)\mkfile.obj \
$(NULL)
#//------------------------------------------------------------------------
#//
#// Define any Public Targets here (ie. PROGRAM, LIBRARY, DLL, ...)
@@ -81,33 +101,14 @@ DLL=.\$(OBJDIR)\$(DLLNAME)
#// (ie. LCFLAGS, LLFLAGS, LLIBS, LINCS)
#//
#//------------------------------------------------------------------------
LCFLAGS=-DNETSCAPE -D_IMPL_NS_NET
NETLIBS=\
$(DIST)\lib\abouturl.lib \
$(DIST)\lib\fileurl.lib \
$(DIST)\lib\ftpurl.lib \
$(DIST)\lib\gophurl.lib \
$(DIST)\lib\httpurl.lib \
$(DIST)\lib\remoturl.lib \
$(DIST)\lib\netcache.lib \
$(DIST)\lib\netcnvts.lib \
$(DIST)\lib\mimetype.lib \
$(DIST)\lib\netutil.lib \
$(DIST)\lib\network.lib \
$(NULL)
LCFLAGS=-DNETSCAPE -DB1M -D_IMPL_NS_NET
LLIBS=$(LLIBS) $(LIBNSPR) \
$(DIST)\lib\secfreenav32.lib \
$(DIST)\lib\libpwcac.lib \
$(DIST)\lib\libplc21.lib \
$(DIST)\lib\js3240.lib \
$(DIST)\lib\xppref32.lib \
$(DIST)\lib\xpcom32.lib \
$(DIST)\lib\xplib.lib \
$(DIST)\lib\raptorbase.lib \
$(NETLIBS) \
$(NULL)
$(DIST)\lib\xplib.lib \
$(DIST)\lib\raptorbase.lib
LINCS=$(LINCS) -I. \
-I$(PUBLIC)\raptor \
@@ -115,16 +116,6 @@ LINCS=$(LINCS) -I. \
-I$(PUBLIC)\pref \
-I$(PUBLIC)\js \
-I$(PUBLIC)\xpcom \
-I$(PUBLIC)\httpurl \
-I$(PUBLIC)\netcache \
-I$(PUBLIC)\network \
-I$(PUBLIC)\netcnvts \
-I$(PUBLIC)\abouturl \
-I$(PUBLIC)\fileurl \
-I$(PUBLIC)\ftpurl \
-I$(PUBLIC)\gophurl \
-I$(PUBLIC)\httpurl \
-I$(PUBLIC)\remoturl \
$(NULL)
# clobber and clobber_all will remove the following garbage:
@@ -138,9 +129,6 @@ GARBAGE = $(GARBAGE) _gen
#//------------------------------------------------------------------------
include <$(DEPTH)/config/rules.mak>
$(DLL): $(NETLIBS)
libs:: $(DLL)
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME) $(DIST)\bin
$(MAKE_INSTALL) .\$(OBJDIR)\netlib.lib $(DIST)\lib

View File

@@ -22,9 +22,11 @@
//
//
#include "xp.h"
#include "mkutils.h"
#include "xp.h"
#include "xp_str.h"
#include "mkgeturl.h"
#include "mkabook.h"
#include "addrbook.h"
@@ -38,8 +40,8 @@ extern "C" int32 net_AddressBookLoad (ActiveEntry *ce)
char * url = ce->URL_s->address;
char * path = NET_ParseURL(url, GET_PATH_PART);
char * search = NET_ParseURL(url, GET_SEARCH_PART);
if (!PL_strncasecmp(path,"add",3)) {
if (!PL_strncasecmp (search, "?vcard=", 7)) {
if (!XP_STRNCASECMP(path,"add",3)) {
if (!XP_STRNCASECMP (search, "?vcard=", 7)) {
ABook* addressbook = FE_GetAddressBook(NULL);
if (addressbook)
AB_ImportFromVcardURL(addressbook, ce->window_id, NET_UnEscape(search+7));
@@ -52,14 +54,14 @@ extern "C" int32 net_AddressBookLoad (ActiveEntry *ce)
extern "C" int32 net_ProcessAddressBook (ActiveEntry *ce)
{
PR_ASSERT(0);
XP_ASSERT(0);
return -1;
}
extern "C" int32 net_InterruptAddressBook (ActiveEntry * ce)
{
PR_ASSERT(0);
XP_ASSERT(0);
return -1;
}
@@ -78,6 +80,6 @@ NET_InitAddressBookProtocol(void)
abook_proto_impl.interrupt = net_InterruptAddressBook;
abook_proto_impl.cleanup = net_CleanupAddressBook;
NET_RegisterProtocolImplementation(&abook_proto_impl, ADDRESS_BOOK_PROTOCOL);
NET_RegisterProtocolImplementation(&abook_proto_impl, ADDRESS_BOOK_TYPE_URL);
}

View File

@@ -18,10 +18,10 @@
#ifndef MKABOOK_H
#define MKABOOK_H
PR_BEGIN_EXTERN_C
XP_BEGIN_PROTOS
void NET_InitAddressBookProtocol(void);
PR_END_EXTERN_C
XP_END_PROTOS
#endif

View File

@@ -41,6 +41,52 @@ extern Bool NET_AskForAuthString(MWContext * context,
*/
extern char * NET_BuildAuthString(MWContext * context, URL_Struct *URL_s);
/* removes all authorization structs from the auth list */
extern void
NET_RemoveAllAuthorizations();
/* removes all cookies structs from the cookie list */
extern void
NET_RemoveAllCookies();
/* returns TRUE if authorization is required
*/
extern char *
NET_GetCookie(MWContext * context, char * address);
extern void
NET_SetCookieString(MWContext * context,
char * cur_url,
char * set_cookie_header);
/* wrapper of NET_SetCookieString for netlib use. We need outformat and url_struct to determine
* whether we're dealing with inline cookies */
extern void
NET_SetCookieStringFromHttp(FO_Present_Types outputFormat,
URL_Struct * URL_s,
MWContext * context,
char * cur_url,
char * set_cookie_header);
/* saves out the HTTP cookies to disk
*
* on entry pass in the name of the file to save
*
* returns 0 on success -1 on failure.
*
*/
extern int NET_SaveCookies(char * filename);
/* reads HTTP cookies from disk
*
* on entry pass in the name of the file to read
*
* returns 0 on success -1 on failure.
*
*/
extern int NET_ReadCookies(char * filename);
/*
* Builds the Proxy-authorization string
*/
@@ -60,6 +106,19 @@ NET_AskForProxyAuth(MWContext * context,
char * pauth_params,
PRBool already_sent_auth);
/*
* Figure out better of two {WWW,Proxy}-Authenticate headers;
* SimpleMD5 is better than Basic. Uses the order of AuthType
* enum values.
*
*/
extern PRBool
net_IsBetterAuth(char *new_auth, char *old_auth);
/* create an HTML stream and push a bunch of HTML about cookies */
extern void
NET_DisplayCookieInfoAsHTML(ActiveEntry * cur_entry);
MODULE_PRIVATE int PR_CALLBACK
NET_CookieBehaviorPrefChanged(const char * newpref, void * data);

View File

@@ -79,7 +79,7 @@ FE_EditMailMessage (MWContext *context,
URL_Struct * URL_s;
char buffer[356];
sprintf(buffer, "mailto:%.256s", to_address);
XP_SPRINTF(buffer, "mailto:%.256s", to_address);
URL_s = NET_CreateURLStruct(buffer, FALSE);
@@ -149,7 +149,7 @@ return(0);
void
PR_LogPrint (const char* message, ...)
XP_Trace (const char* message, ...)
{
int actualLen;
static char xp_Buffer[2048];
@@ -241,7 +241,7 @@ PUBLIC Bool TESTFE_Confirm (MWContext * window_id, CONST char * mess)
/* call an it became evaluated twice because */
}
if ((PL_strcmp(Reply,"YES")==0) || (PL_strcmp(Reply,"Y")==0))
if ((XP_STRCMP(Reply,"YES")==0) || (XP_STRCMP(Reply,"Y")==0))
return(YES);
else
return(NO);
@@ -258,7 +258,7 @@ PUBLIC char * TESTFE_Prompt (MWContext * window_id, CONST char * mess, CONST cha
if (deflt) fprintf(stderr, " (RETURN for [%s]) ", deflt);
fgets(temp, 200, stdin);
temp[PL_strlen(temp)-1] = (char)0; /* Overwrite newline */
temp[XP_STRLEN(temp)-1] = (char)0; /* Overwrite newline */
StrAllocCopy(t_string, *temp ? temp : deflt);
return t_string;

View File

@@ -22,21 +22,20 @@
* Updated and Documented by Judson Valeski 11/19/1997
*/
#include "mkutils.h" /* LF */
#include "mkfe.h"
#include "mktcp.h"
#include "netutils.h"
#include "prsystem.h"
#include "mkpadpac.h"
#include "plstr.h"
#include "plstr2.h"
#include "pllist.h"
#include "prmem.h"
#include <time.h>
#include "mkautocf.h"
#include "xp_mem.h" /* PR_NEWZAP() */
#ifndef XP_MAC
#include <sys/types.h>
#endif
#include "libi18n.h"
#include "mkgeturl.h"
#include "mkstream.h"
#include "mkgeturl.h"
#include "cvextcon.h"
#include "mkformat.h"
#include "mime.h"
#include "cvactive.h"
@@ -46,17 +45,9 @@
#define WANT_ENUM_STRING_IDS
#include "allxpstr.h"
#undef WANT_ENUM_STRING_IDS
#include "mkreg.h"
#include "xp_reg.h"
#ifndef NSPR20
#if defined(XP_UNIX) || defined(XP_WIN32)
#include "prnetdb.h"
#else
#define PRHostEnt struct hostent
#endif
#else
#include "prnetdb.h"
#endif
#include "net.h"
#include "libmocha.h"
@@ -155,7 +146,7 @@ typedef enum {
/* Declared in mkgeturl.c. NET_GetURL uses these variables to determine
* whether or not the pac file has been loaded. */
extern XP_Bool NET_GlobalAcLoaded;
extern PRBool NET_GlobalAcLoaded;
extern PRBool NET_ProxyAcLoaded;
/* Private proxy auto-config variables */
@@ -166,11 +157,11 @@ PRIVATE Bool pacf_ok = FALSE;
PRIVATE char * pacf_url = NULL;
PRIVATE char * pacf_src_buf = NULL;
PRIVATE int pacf_src_len = 0;
PRIVATE XP_List*pacf_all_nodes = NULL;
PRIVATE PLList *pacf_all_nodes = NULL;
PRIVATE time_t pacf_direct_until = (time_t)0;
PRIVATE int pacf_direct_cnt = 0;
PRIVATE PACF_QueuedState *queued_state = NULL;
PRIVATE XP_List*pacf_bad_keywords = NULL;
PRIVATE PLList *pacf_bad_keywords = NULL;
PRIVATE Bool pacf_find_proxy_undefined = FALSE;
@@ -272,7 +263,7 @@ PRIVATE Bool confirm2(MWContext *context, char *fmt, char *prm) {
Bool rv = TRUE;
char *msg = msg2(fmt, prm);
if (msg) {
rv = NET_Confirm(context, msg);
rv = FE_Confirm(context, msg);
PR_Free(msg);
}
return rv;
@@ -281,7 +272,7 @@ PRIVATE Bool confirm2(MWContext *context, char *fmt, char *prm) {
PRIVATE void alert2(MWContext *context, char *fmt, char *prm) {
char *msg = msg2(fmt, prm);
if (msg) {
NET_Alert(context, msg);
FE_Alert(context, msg);
PR_Free(msg);
}
}
@@ -291,7 +282,7 @@ PRIVATE void alert2(MWContext *context, char *fmt, char *prm) {
* was already created for that address. */
PRIVATE PACF_Node *lookup_create_node(PACF_Type type, char *addr) {
if (!pacf_all_nodes)
pacf_all_nodes = XP_ListNew();
pacf_all_nodes = PL_ListNew();
/* Truncate at 64 characters -- gethostbyname() is evil */
if (addr && PL_strlen(addr) > 64)
@@ -304,10 +295,10 @@ PRIVATE PACF_Node *lookup_create_node(PACF_Type type, char *addr) {
}
else
{
XP_List *cur = pacf_all_nodes;
PACF_Node *node;
while ((node = (PACF_Node *)XP_ListNextObject(cur)) != NULL) {
PL_ListEnumReset(pacf_all_nodes);
while ((node = (PACF_Node *)PL_ListEnumNext(pacf_all_nodes)) != NULL) {
if (node->type == type &&
((!node->addr && !addr) ||
( node->addr && addr && !strcmp(node->addr, addr))))
@@ -321,7 +312,7 @@ PRIVATE PACF_Node *lookup_create_node(PACF_Type type, char *addr) {
node->type = type;
node->addr = PL_strdup(addr);
XP_ListAddObject(pacf_all_nodes, node);
PL_ListAdd(pacf_all_nodes, node);
}
return node;
@@ -333,10 +324,10 @@ PRIVATE PACF_Node * pacf_proxy_is_down(MWContext *context,
char *proxy_addr,
u_long socks_addr,
short socks_port) {
XP_List *cur = pacf_all_nodes;
PACF_Node *node;
while ((node = (PACF_Node *)XP_ListNextObject(cur)) != NULL) {
PL_ListEnumReset(pacf_all_nodes);
while ((node = (PACF_Node *)PL_ListEnumNext(pacf_all_nodes)) != NULL) {
if ((proxy_addr && node->addr && !PL_strcmp(node->addr, proxy_addr)) ||
(socks_addr &&
node->socks_addr == socks_addr &&
@@ -365,9 +356,6 @@ PRIVATE Bool fill_return_values(PACF_Type type,
*ret_socks_addr = 0;
*ret_socks_port = 0;
if(!node)
return FALSE;
if (type == PACF_TYPE_PROXY) {
*ret_proxy_addr = node->addr;
}
@@ -391,34 +379,20 @@ PRIVATE Bool fill_return_values(PACF_Type type,
node->socks_addr = inet_addr(host);
}
else {
#ifdef NSPR20
PRStatus rv;
PRHostEnt *hp;
PRHostEnt hpbuf;
char dbbuf[PR_NETDB_BUF_SIZE];
#else
struct hostent *hp;
#if defined(XP_UNIX) || defined(XP_WIN32)
struct hostent hpbuf;
char dbbuf[PR_NETDB_BUF_SIZE];
#endif
#endif /* NSPR20 */
NET_InGetHostByName++; /* global semaphore */
#ifdef NSPR20
rv = PR_GetHostByName(host, dbbuf, sizeof(dbbuf), &hpbuf);
hp = (rv == PR_SUCCESS ? &hpbuf : NULL);
#elif defined(XP_UNIX) || defined(XP_WIN32)
hp = PR_gethostbyname(host, &hpbuf, dbbuf, sizeof(dbbuf), 0);
#else
hp = gethostbyname(host);
#endif
NET_InGetHostByName--; /* global semaphore */
if (!hp)
return FALSE; /* Fail? */
memcpy(&node->socks_addr, hp->h_addr, hp->h_length);
PL_memcpy(&node->socks_addr, hp->h_addr, hp->h_length);
}
}
@@ -511,15 +485,15 @@ pacf_get_proxy_addr(MWContext *context, char *list, char **ret_proxy_addr,
if (p) {
do {
*p++ = '\0';
} while (*p && NET_IS_SPACE(*p));
} while (*p && XP_IS_SPACE(*p));
}
for (addr=cur; *addr && !NET_IS_SPACE(*addr); addr++)
for (addr=cur; *addr && !XP_IS_SPACE(*addr); addr++)
;
if (*addr) {
do {
*addr++ = '\0';
} while (*addr && NET_IS_SPACE(*addr));
} while (*addr && XP_IS_SPACE(*addr));
}
type = ((!PL_strcasecmp(cur, "DIRECT")) ? PACF_TYPE_DIRECT :
@@ -587,22 +561,23 @@ pacf_get_proxy_addr(MWContext *context, char *list, char **ret_proxy_addr,
if (!pacf_bad_keywords)
{
pacf_bad_keywords = XP_ListNew();
pacf_bad_keywords = PL_ListNew();
}
else
{
XP_List *ptr = pacf_bad_keywords;
PL_ListEnumReset(pacf_bad_keywords);
while ((key = (char *)XP_ListNextObject(ptr)) != NULL) {
while ((key = (char *)PL_ListEnumNext(pacf_bad_keywords))
!= NULL) {
if (!strcmp(key, cur))
break;
}
}
if (!key && XP_ListCount(pacf_bad_keywords) < 3)
if (!key && PL_ListCount(pacf_bad_keywords) < 3)
{
key = PL_strdup(cur);
XP_ListAddObject(pacf_bad_keywords, key);
PL_ListAdd(pacf_bad_keywords, key);
alert2(context, XP_GetString(XP_BAD_KEYWORD_IN_PROXY_AUTOCFG), cur);
}
}
@@ -629,7 +604,7 @@ pacf_get_proxy_addr(MWContext *context, char *list, char **ret_proxy_addr,
{
return TRUE;
}
else if (!NET_Confirm(context,
else if (!FE_Confirm(context,
!socks_cnt ? XP_GetString(XP_RETRY_AGAIN_PROXY) :
!proxy_cnt ? XP_GetString(XP_RETRY_AGAIN_SOCKS) : XP_GetString(XP_RETRY_AGAIN_PROXY_OR_SOCKS)))
{
@@ -646,7 +621,7 @@ pacf_get_proxy_addr(MWContext *context, char *list, char **ret_proxy_addr,
if (smallest &&
(retry_now ||
now - smallest > PACF_MIN_RETRY_AFTER ||
(sm_ptr && !sm_ptr->retrying &&
(!sm_ptr->retrying &&
now - smallest > PACF_MIN_RETRY_ASK &&
confirm2(context,
(!socks_cnt && proxy_cnt==1 ? XP_GetString(XP_PROXY_UNAVAILABLE_TRY_AGAIN) :
@@ -661,7 +636,7 @@ pacf_get_proxy_addr(MWContext *context, char *list, char **ret_proxy_addr,
sm_ptr->retries++;
return TRUE;
}
else if (pacf_do_failover && NET_Confirm(context,
else if (pacf_do_failover && FE_Confirm(context,
!pacf_direct_cnt ?
(!socks_cnt ? XP_GetString(XP_OVERRIDE_PROXY) :
!proxy_cnt ? XP_GetString(XP_OVERRIDE_SOCKS) : XP_GetString(XP_OVERRIDE_MIX)) :
@@ -758,7 +733,7 @@ PRIVATE int pacf_write(NET_StreamClass *stream, CONST char *buf, int32 len) {
return MK_DATA_LOADED;
}
memcpy(pacf_src_buf + pacf_src_len, buf, len);
PL_memcpy(pacf_src_buf + pacf_src_len, buf, len);
pacf_src_len += len;
pacf_src_buf[pacf_src_len] = '\0';
}
@@ -821,11 +796,11 @@ retry:
if (!pacf_src_buf) {
if ( pacf_do_failover == FALSE && !NET_UsingPadPac() ) {
/* Don't failover to using no proxies */
NET_Alert(obj->context, XP_GetString(XP_NO_CONFIG_RECEIVED_NO_FAILOVER));
FE_Alert(obj->context, XP_GetString(XP_NO_CONFIG_RECEIVED_NO_FAILOVER));
}
else if (obj->flag != 2 && (XP_Stat("", &st, xpProxyConfig) == -1) && !NET_UsingPadPac())
{
NET_Alert(obj->context, XP_GetString(XP_NO_CONFIG_RECIEVED));
FE_Alert(obj->context, XP_GetString(XP_NO_CONFIG_RECIEVED));
}
else
{
@@ -856,7 +831,7 @@ retry:
goto out;
}
if (obj->flag) {
NET_Alert(obj->context, XP_GetString(XP_EVEN_SAVED_IS_BAD));
FE_Alert(obj->context, XP_GetString(XP_EVEN_SAVED_IS_BAD));
} else if (XP_Stat("", &st, xpProxyConfig) == -1) {
alert2(obj->context, XP_GetString(XP_BAD_CONFIG_IGNORED), pacf_url);
} else if (confirm2(obj->context, XP_GetString(XP_BAD_CONFIG_USE_PREV), pacf_url)) {
@@ -884,7 +859,7 @@ out:
PRIVATE void pacf_abort(NET_StreamClass *stream, int status) {
PACF_Object *obj=stream->data_object;
pacf_loading = FALSE;
NET_Alert(obj->context, XP_GetString(XP_GLOBAL_CONFIG_LOAD_ABORTED));
FE_Alert(obj->context, XP_GetString(XP_GLOBAL_CONFIG_LOAD_ABORTED));
PR_Free(obj);
}
@@ -905,8 +880,6 @@ NET_ProxyAutoConfig(int fmt, void *data_obj, URL_Struct *URL_s,
* The Navigator didn't start this config retrieve
* intentionally. Discarding the config.
*/
if(!URL_s)
return NULL;
alert2(w, XP_GetString(XP_CONFIG_BLAST_WARNING), URL_s->address);
return NULL;
}
@@ -959,12 +932,12 @@ static void pacf_restart_queued(URL_Struct *URL_s, int status,
if ( pacf_do_failover == FALSE ) {
/* Don't failover to using no proxies */
NET_Alert(window_id, XP_GetString(XP_CONF_LOAD_FAILED_NO_FAILOVER));
FE_Alert(window_id, XP_GetString(XP_CONF_LOAD_FAILED_NO_FAILOVER));
}
else if (XP_Stat("", &st, xpProxyConfig) == -1)
{
if (status < 0)
NET_Alert(window_id, XP_GetString(XP_CONF_LOAD_FAILED_IGNORED));
FE_Alert(window_id, XP_GetString(XP_CONF_LOAD_FAILED_IGNORED));
else {
alert2(window_id, XP_GetString(XP_BAD_TYPE_CONFIG_IGNORED), pacf_url);
}
@@ -976,7 +949,7 @@ static void pacf_restart_queued(URL_Struct *URL_s, int status,
NET_GlobalAcLoaded = FALSE;
}
else if (status < 0
? NET_Confirm(window_id, XP_GetString(XP_CONF_LOAD_FAILED_USE_PREV))
? FE_Confirm(window_id, XP_GetString(XP_CONF_LOAD_FAILED_USE_PREV))
: confirm2(window_id, XP_GetString(XP_BAD_TYPE_USE_PREV), pacf_url))
{
PACF_Object *obj = PR_NEWZAP(PACF_Object);
@@ -991,21 +964,22 @@ static void pacf_restart_queued(URL_Struct *URL_s, int status,
}
pacf_loading = FALSE;
} else {
/* Call this only if everything succeeded -- otherwise
the netlib has already freed the URL_s, and there isn't
a clean fix, so for now we'll just forget the URL load
if proxy config load went foul.
*/
if(queued_state) {
NET_GetURL(queued_state->URL_s,
queued_state->output_format,
queued_state->window_id,
queued_state->exit_routine);
}
}
PR_FREEIF(queued_state);
queued_state = NULL;
}
else {
/* Call this only if everything succeeded -- otherwise
the netlib has already freed the URL_s, and there isn't
a clean fix, so for now we'll just forget the URL load
if proxy config load went foul.
*/
NET_GetURL(queued_state->URL_s,
queued_state->output_format,
queued_state->window_id,
queued_state->exit_routine);
}
PR_Free(queued_state);
queued_state = NULL;
}
#endif /* MOCHA */
@@ -1039,27 +1013,21 @@ MODULE_PRIVATE int NET_LoadProxyConfig(char *autoconf_url,
return -1;
if (!PL_strcmp(autoconf_url,"BAD-NOAUTOADMNLIB")) {
NET_Alert(window_id, XP_GetString( XP_AUTOADMIN_MISSING ));
FE_Alert(window_id, XP_GetString( XP_AUTOADMIN_MISSING ));
return -1;
}
StrAllocCopy(pacf_url, autoconf_url);
my_url_s = NET_CreateURLStruct(autoconf_url, NET_SUPER_RELOAD);
if (exit_routine) {
if (exit_routine) {
queued_state = PR_NEWZAP(PACF_QueuedState);
if(!queued_state)
return -1;
queued_state->URL_s = URL_s;
queued_state->output_format = output_format;
queued_state->window_id = window_id;
queued_state->exit_routine = exit_routine;
if(!my_url_s)
return -1;
my_url_s->pre_exit_fn = pacf_restart_queued;
}
@@ -1093,18 +1061,12 @@ MODULE_PRIVATE char *pacf_find_proxies_for_url(MWContext *context,
char *p, *q, *r;
int i, len = 0;
char *safe_url = NULL;
char *orig_url = NULL;
char *method = NULL;
char *orig_url = URL_s->address;
char *method = mkMethodString(URL_s->method);
char *bad_url = NULL;
char *result = NULL;
JSBool ok;
if(!URL_s)
return NULL;
orig_url=URL_s->address;
method=mkMethodString(URL_s->method);
/* If proxy failover is not allowed, and we weren't
* able to autoload the proxy, return a string that
* pacf_get_proxy_addr will always fail with. */
@@ -1360,27 +1322,16 @@ proxy_isResolvable(JSContext *mc, JSObject *obj, unsigned int argc,
if (argc >= 1 && JSVAL_IS_STRING(argv[0])) {
const char *h = JS_GetStringBytes(JSVAL_TO_STRING(argv[0]));
PRHostEnt *hp = NULL;
#ifdef NSPR20
PRStatus rv;
PRHostEnt hpbuf;
char dbbuf[PR_NETDB_BUF_SIZE];
#elif defined(XP_UNIX) || defined(XP_WIN32)
PRHostEnt hpbuf;
char dbbuf[PR_NETDB_BUF_SIZE];
#endif
if (h) {
char *safe = PL_strdup(h);
if (PL_strlen(safe) > 64)
safe[64] = '\0';
#ifdef NSPR20
rv = PR_GetHostByName(safe, dbbuf, sizeof(dbbuf), &hpbuf);
hp = (rv == PR_SUCCESS ? &hpbuf : NULL);
#elif defined(XP_UNIX) || defined(XP_WIN32)
hp = PR_gethostbyname(safe, &hpbuf, dbbuf, sizeof(dbbuf), 0);
#else
hp = gethostbyname(safe);
#endif
PR_Free(safe);
}
@@ -1405,26 +1356,18 @@ proxy_isResolvable(JSContext *mc, JSObject *obj, unsigned int argc,
PRIVATE char *proxy_dns_resolve(const char *host) {
static char *cache_host = NULL;
static char *cache_ip = NULL;
#ifdef NSPR20
PRStatus rv;
PRHostEnt *hp = NULL;
PRHostEnt hpbuf;
char dbbuf[PR_NETDB_BUF_SIZE];
#else
struct hostent *hp = NULL;
#if defined(XP_UNIX) || defined(XP_WIN32)
struct hostent hpbuf;
char dbbuf[PR_NETDB_BUF_SIZE];
#endif
#endif /* xNSPR20 */
if (host) {
const char *p;
char *safe = NULL;
XP_Bool is_numeric_ip = TRUE;
PRBool is_numeric_ip = TRUE;
for(p=host; *p; p++) {
if (!NET_IS_DIGIT(*p) && *p != '.') {
if (!XP_IS_DIGIT(*p) && *p != '.') {
is_numeric_ip = FALSE;
break;
}
@@ -1441,21 +1384,15 @@ PRIVATE char *proxy_dns_resolve(const char *host) {
if (PL_strlen(safe) > 64)
safe[64] = '\0';
#ifdef NSPR20
rv = PR_GetHostByName(safe, dbbuf, sizeof(dbbuf), &hpbuf);
hp = (rv == PR_SUCCESS ? &hpbuf : NULL);
#elif defined(XP_UNIX) || defined(XP_WIN32)
hp = PR_gethostbyname(safe, &hpbuf, dbbuf, sizeof(dbbuf), 0);
#else
hp = gethostbyname(safe);
#endif
PR_Free(safe);
}
if (hp) {
char *ip = NULL;
struct in_addr in;
memcpy(&in.s_addr, hp->h_addr, hp->h_length);
PL_memcpy(&in.s_addr, hp->h_addr, hp->h_length);
ip = inet_ntoa(in);
if (ip) {
@@ -1496,22 +1433,16 @@ proxy_dnsResolve(JSContext *mc, JSObject *obj, unsigned int argc,
MODULE_PRIVATE JSBool PR_CALLBACK
proxy_myIpAddress(JSContext *mc, JSObject *obj, unsigned int argc,
jsval *argv, jsval *rval) {
static XP_Bool initialized = FALSE;
static PRBool initialized = FALSE;
static char *my_address = NULL;
if (!initialized) {
char name[100];
initialized = TRUE;
#ifndef NSPR20
if (gethostname(name, sizeof(name)) == 0) {
my_address = proxy_dns_resolve(name);
}
#else
if (PR_GetSystemInfo(PR_SI_HOSTNAME, name, sizeof(name)) == PR_SUCCESS) {
my_address = proxy_dns_resolve(name);
}
#endif
}
TRACEMSG(("~~~~~~~~~~~~~~~~~~ myIpAddress() returns %s\n", my_address ? my_address : "(null)"));
@@ -1607,8 +1538,8 @@ proxy_regExpMatch(JSContext *mc, JSObject *obj, unsigned int argc,
const char *url = JS_GetStringBytes(JSVAL_TO_STRING(argv[0]));
const char *pat = JS_GetStringBytes(JSVAL_TO_STRING(argv[1]));
if (url && pat && NET_RegExpValid((char *) pat) && /* XXX */
!NET_RegExpMatch((char *) url, (char *) pat, TRUE)) {/* XXX */
if (url && pat && XP_RegExpValid((char *) pat) && /* XXX */
!XP_RegExpMatch((char *) url, (char *) pat, TRUE)) {/* XXX */
*rval = JSVAL_TRUE;
return JS_TRUE;
}

View File

@@ -22,29 +22,30 @@
* Modifications/additions by Gagan Saksena '97
*/
/* Please leave outside of ifdef for windows precompiled headers */
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
/* dbm code */
#include "mkcache.h"
#include "mkfe.h"
#include "extcache.h"
#include "mkgeturl.h"
#include "netutils.h"
#include "netcache.h"
#include "mkcache.h"
#include "plstr.h"
#include "plstr2.h"
#include "plctype.h"
#include "plhash.h"
#include "glhist.h"
#include "xp_hash.h"
#include "xp_mcom.h"
#include "client.h"
#include "mkgeturl.h"
#include "mkstream.h"
#include "secnav.h"
#include "mcom_db.h"
#include "prclist.h"
#include "prmem.h"
#include "plstr.h"
#include "mkextcac.h"
#include "fileurl.h"
#include "mkfile.h"
#include "mkmemcac.h"
#include "merrors.h"
@@ -59,9 +60,6 @@ extern int XP_LazyFileRemove(const char * name, XP_FileType type);
#define XP_LazyFileRemove XP_FileRemove
#endif
/* For Mac */
#include <errno.h>
/* for XP_GetString() */
#include "xpgetstr.h"
extern int XP_CACHE_CLEANUP;
@@ -105,9 +103,9 @@ PRIVATE uint32 net_MaxMemoryCacheSize=0;
#endif /* NO_MEMORY_CACHE */
/* trace variable for cache testing */
MODULE_PRIVATE PRBool NET_CacheTraceOn = PR_FALSE;
MODULE_PRIVATE PRBool NET_CacheTraceOn = FALSE;
PRIVATE PRBool net_dont_disk_cache_ssl = PR_FALSE;
PRIVATE PRBool net_dont_disk_cache_ssl = FALSE;
PRIVATE DB * cache_database = 0;
/* PRIVATE XXX Mac CodeWarrior bug */ PRCList active_cache_data_objects
= PR_INIT_STATIC_CLIST(&active_cache_data_objects);
@@ -128,17 +126,11 @@ PRIVATE void net_RemoveAllDiskCacheObjects(void);
* of SSL documents
*/
PUBLIC void
NET_DontDiskCacheSSL(XP_Bool set)
NET_DontDiskCacheSSL(PRBool set)
{
net_dont_disk_cache_ssl = set;
}
PUBLIC PRBool
NET_IsCacheTraceOn(void)
{
return NET_CacheTraceOn;
}
/* return the size of the file on
* disk based on the block size
*/
@@ -162,7 +154,7 @@ net_GetDiskCacheSize(void)
if(!net_DiskCacheSizeKey)
{
net_DiskCacheSizeKey = PR_NEW(DBT);
net_DiskCacheSizeKey = XP_NEW(DBT);
if(!net_DiskCacheSizeKey)
return;
@@ -194,7 +186,7 @@ net_GetDiskCacheSize(void)
if(!net_DiskCacheNumberKey)
{
net_DiskCacheNumberKey = PR_NEW(DBT);
net_DiskCacheNumberKey = XP_NEW(DBT);
if(!net_DiskCacheNumberKey)
return;
@@ -231,7 +223,7 @@ PRIVATE int
net_OpenCacheFatDB(void)
{
char* filename;
static XP_Bool have_tried_open=FALSE;
static Bool have_tried_open=FALSE;
if(!cache_database)
{
@@ -329,7 +321,7 @@ net_OpenCacheFatDB(void)
net_GetDiskCacheSize();
}
#ifndef XP_PC
#if !defined(XP_WIN) && !defined(XP_OS2)
/* if we don't know the standard block size yet
* get it now
*/
@@ -360,20 +352,20 @@ cache_test_me()
int32 total_size;
DBT *db_obj;
memset(&test, 0, sizeof(net_CacheObject));
PL_memset(&test, 0, sizeof(net_CacheObject));
StrAllocCopy(test.address, "test1");
db_obj = net_CacheStructToDBData(&test);
rv = net_DBDataToCacheStruct(db_obj);
printf("test1: %s\n", rv->address);
memset(&test, 0, sizeof(net_CacheObject));
PL_memset(&test, 0, sizeof(net_CacheObject));
StrAllocCopy(test.address, "test2");
StrAllocCopy(test.charset, "test2");
db_obj = net_CacheStructToDBData(&test);
rv = net_DBDataToCacheStruct(db_obj);
printf("test2: %s %s\n", rv->address, rv->charset);
memset(&test, 0, sizeof(net_CacheObject));
PL_memset(&test, 0, sizeof(net_CacheObject));
StrAllocCopy(test.address, "test3");
StrAllocCopy(test.charset, "test3");
test.content_length = 3 ;
@@ -400,7 +392,7 @@ net_StoreDiskCacheSize(void)
if(!net_DiskCacheSizeKey)
{
net_DiskCacheSizeKey = PR_NEW(DBT);
net_DiskCacheSizeKey = XP_NEW(DBT);
if(!net_DiskCacheSizeKey)
return;
@@ -413,7 +405,7 @@ net_StoreDiskCacheSize(void)
if(!net_DiskCacheNumberKey)
{
net_DiskCacheNumberKey = PR_NEW(DBT);
net_DiskCacheNumberKey = XP_NEW(DBT);
if(!net_DiskCacheNumberKey)
return;
@@ -430,7 +422,7 @@ net_StoreDiskCacheSize(void)
* if it is read as an external cache
* we will know what created it
*/
net_DiskCacheNameKey = PR_NEW(DBT);
net_DiskCacheNameKey = XP_NEW(DBT);
if(!net_DiskCacheNameKey)
return;
@@ -463,10 +455,10 @@ net_StoreDiskCacheSize(void)
/* returns TRUE if the object gets stored
* FALSE if not
*/
PRIVATE XP_Bool
PRIVATE Bool
net_CacheStore(net_CacheObject * obj,
URL_Struct * URL_s,
XP_Bool accept_partial_files,
Bool accept_partial_files,
store_type_enum store_type)
{
DBT *data, *key;
@@ -475,7 +467,7 @@ net_CacheStore(net_CacheObject * obj,
XP_StatStruct stat_entry;
/* larubbio */
XP_Bool SARCache = FALSE;
Bool SARCache = FALSE;
XP_FileType fileType;
DB *local_cache_database = NULL;
@@ -689,7 +681,7 @@ net_CacheStore(net_CacheObject * obj,
#else
XP_FileRemove(filename, fileType);
#endif
PR_Free(filename);
FREE(filename);
}
/* larubbio file size checks for SARCache */
@@ -730,7 +722,7 @@ net_CacheStore(net_CacheObject * obj,
#else
XP_FileRemove(filename, fileType);
#endif
PR_Free(filename);
FREE(filename);
}
if ( !SARCache ) {
@@ -745,80 +737,77 @@ net_CacheStore(net_CacheObject * obj,
local_cache_database = 0;
}
if (store_type == NEW_CACHE_STORE)
{
if ( !SARCache )
{
/* add the size of the new file
* size_on_disk can be in error, use content_length
* when missized
*/
net_DiskCacheSize += net_calc_real_file_size(obj->content_length);
net_NumberInDiskCache++;
if ( !SARCache )
{
/* add the size of the new file
* size_on_disk can be in error, use content_length
* when missized
*/
net_DiskCacheSize += net_calc_real_file_size(obj->content_length);
net_NumberInDiskCache++;
if (++cache_sync_count >= CACHE_SYNC_RATE)
{
/* sync the database everytime to guarentee
* consistancy
*/
if(local_cache_database && -1 == (*local_cache_database->sync)(local_cache_database, 0))
{
TRACEMSG(("Error syncing cache database"));
if (++cache_sync_count >= CACHE_SYNC_RATE)
{
/* sync the database everytime to guarentee
* consistancy
*/
if(local_cache_database && -1 == (*local_cache_database->sync)(local_cache_database, 0))
{
TRACEMSG(("Error syncing cache database"));
/* close the database */
(*local_cache_database->close)(local_cache_database);
cache_database = 0;
local_cache_database = 0;
}
/* close the database */
(*local_cache_database->close)(local_cache_database);
cache_database = 0;
local_cache_database = 0;
}
cache_sync_count = 0;
cache_sync_count = 0;
}
}
else
{
/* larubbio */
/* add the size of the new file
* size_on_disk can be in error, use content_length
* when missized
*/
URL_s->SARCache->DiskCacheSize += net_calc_real_file_size(obj->content_length);
URL_s->SARCache->NumberInDiskCache++;
}
}
else
{
/* larubbio */
/* add the size of the new file
* size_on_disk can be in error, use content_length
* when missized
*/
URL_s->SARCache->DiskCacheSize += net_calc_real_file_size(obj->content_length);
URL_s->SARCache->NumberInDiskCache++;
if(URL_s->SARCache->DiskCacheSize > URL_s->SARCache->MaxSize && -1 != URL_s->SARCache->MaxSize )
{
TRACEMSG(("MaxSize exceeded!!!"));
/* delete the file since we wont remember it
*/
XP_FileRemove(obj->filename, fileType);
if(URL_s->SARCache->DiskCacheSize > URL_s->SARCache->MaxSize && -1 != URL_s->SARCache->MaxSize )
{
TRACEMSG(("MaxSize exceeded!!!"));
/* delete the file since we wont remember it
*/
XP_FileRemove(obj->filename, fileType);
URL_s->SARCache->DiskCacheSize -= net_calc_real_file_size(obj->content_length);
URL_s->SARCache->NumberInDiskCache--;
URL_s->SARCache->DiskCacheSize -= net_calc_real_file_size(obj->content_length);
URL_s->SARCache->NumberInDiskCache--;
return FALSE;
}
return FALSE;
}
/* sync the database every time to guarentee
* consistancy
*/
if(local_cache_database && -1 == (*local_cache_database->sync)(local_cache_database, 0))
{
TRACEMSG(("Error syncing cache database"));
/* sync the database every time to guarentee
* consistancy
*/
if(local_cache_database && -1 == (*local_cache_database->sync)(local_cache_database, 0))
{
TRACEMSG(("Error syncing cache database"));
/* close the database */
(*local_cache_database->close)(local_cache_database);
CACHE_CloseCache(URL_s->SARCache);
local_cache_database = 0;
}
else
{
/* This is inefficent to do each time, but it keeps us in synch, and this is for
offline browsing, which is not a performance intensive task */
CACHE_SaveCacheInfoToDB(URL_s->SARCache);
}
}
}
/* close the database */
(*local_cache_database->close)(local_cache_database);
CACHE_CloseCache(URL_s->SARCache);
local_cache_database = 0;
}
else
{
/* This is inefficent to do each time, but it keeps us in synch, and this is for
offline browsing, which is not a performance intensive task */
CACHE_SaveCacheInfoToDB(URL_s->SARCache);
}
}
net_FreeCacheDBTdata(key);
net_FreeCacheDBTdata(data);
@@ -828,10 +817,10 @@ net_CacheStore(net_CacheObject * obj,
}
/* Public accesor function for Netcaster */
PUBLIC PRBool
PUBLIC Bool
NET_CacheStore(net_CacheObject * obj,
URL_Struct * URL_s,
PRBool accept_partial_files)
Bool accept_partial_files)
{
return net_CacheStore(obj, URL_s, accept_partial_files, NEW_CACHE_STORE);
}
@@ -912,7 +901,7 @@ NET_RemoveDiskCacheObjects(uint32 remove_num)
if(!old_array)
return(net_DiskCacheSize);
memset(old_array, 0, sizeof(DatePlusDBT) * remove_num);
PL_memset(old_array, 0, sizeof(DatePlusDBT) * remove_num);
/* We need to delete the oldest items in the database.
* Sequentailly go throught the DB and remove
@@ -1072,7 +1061,7 @@ NET_RemoveDiskCacheObjects(uint32 remove_num)
#else
XP_FileRemove(filename, xpCache);
#endif
PR_Free(filename);
FREE(filename);
}
net_DiskCacheSize -= net_calc_real_file_size(
net_GetInt32InCacheDBT(&data,
@@ -1310,7 +1299,7 @@ net_RemoveAllDiskCacheObjects(void)
#else
XP_FileRemove(filename, xpCache);
#endif
PR_Free(filename);
FREE(filename);
}
/* We don't acctually need to do the
* del since we will del the database
@@ -1431,12 +1420,12 @@ PRIVATE void net_CacheComplete (NET_StreamClass *stream)
if(obj->next_stream)
{
(*obj->next_stream->complete)(obj->next_stream);
PR_Free(obj->next_stream);
FREE(obj->next_stream);
}
net_freeCacheObj(obj->cache_object);
PR_REMOVE_LINK(&obj->links);
PR_Free(obj);
FREE(obj);
return;
}
@@ -1456,7 +1445,7 @@ PRIVATE void net_CacheAbort (NET_StreamClass *stream, int status)
if(obj->next_stream)
{
(*obj->next_stream->abort)(obj->next_stream, status);
PR_Free(obj->next_stream);
FREE(obj->next_stream);
}
/* fp might be null if we had a file write error */
@@ -1514,7 +1503,7 @@ PRIVATE void net_CacheAbort (NET_StreamClass *stream, int status)
net_freeCacheObj(obj->cache_object);
PR_REMOVE_LINK(&obj->links);
PR_Free(obj);
FREE(obj);
return;
}
@@ -1537,17 +1526,17 @@ NET_CacheConverter (FO_Present_Types format_out,
NET_StreamClass * stream=0;
char *filename=0, *new_filename=0;
char *org_content_type = 0;
XP_Bool do_disk_cache=FALSE;
XP_Bool want_to_cache=FALSE;
Bool do_disk_cache=FALSE;
Bool want_to_cache=FALSE;
XP_File fp=0;
NET_StreamClass * next_stream=0;
/* XXX brendan will #define this hack after 3.0 ships! */
XP_Bool dont_hold_URL_s = (converter_obj != NULL);
PRBool dont_hold_URL_s = (converter_obj != NULL);
TRACEMSG(("Setting up cache stream. Have URL: %s\n", URL_s->address));
NET_EnableClicking(window_id);
FE_EnableClicking(window_id);
#ifdef MOZILLA_CLIENT
/* add this new url to the Global history since we must be getting it now
@@ -1566,7 +1555,7 @@ NET_CacheConverter (FO_Present_Types format_out,
next_stream = NET_StreamBuilder(format_out, URL_s, window_id);
if(!next_stream)
{
PR_FREEIF(org_content_type);
FREEIF(org_content_type);
return(NULL);
}
}
@@ -1575,7 +1564,7 @@ NET_CacheConverter (FO_Present_Types format_out,
* this is because some streams muck with it and
* dont set it back and we need it intact
*/
PR_Free(URL_s->content_type);
FREE(URL_s->content_type);
URL_s->content_type = org_content_type;
org_content_type = 0;
@@ -1635,14 +1624,14 @@ NET_CacheConverter (FO_Present_Types format_out,
TRACEMSG(("Object has not been cached before"));
cache_object = PR_NEW(net_CacheObject);
cache_object = XP_NEW(net_CacheObject);
if (!cache_object)
{
return(NULL);
}
/* assign and init the cache object */
memset(cache_object, 0, sizeof(net_CacheObject));
PL_memset(cache_object, 0, sizeof(net_CacheObject));
/* copy the contents of the URL structure
*/
@@ -1768,10 +1757,10 @@ NET_CacheConverter (FO_Present_Types format_out,
}
#ifdef XP_PC
#if defined(XP_WIN) || defined(XP_OS2) /* IBM - SAH */
/* Remove any suffix that the temp filename currently has
*/
strtok(filename, ".");
PL_strtok(filename, ".");
#endif
if (suffix && (end - suffix) < 20)
@@ -1784,14 +1773,14 @@ NET_CacheConverter (FO_Present_Types format_out,
*junk = 0;
}
StrAllocCopy(new_filename, filename);
#ifdef XP_PC
/* the comment */
/* say 16 bit */
/* 32 bit Win */
/* goes thru */
/* here, so do */
/* the same for*/
/* OS2 */
#if defined(XP_WIN) || defined(XP_OS2) /* IBM - SAH - even though */
/* the comment */
/* say 16 bit */
/* 32 bit Win */
/* goes thru */
/* here, so do */
/* the same for*/
/* OS2 */
/* make all suffixes be UPPERCASE for win16
* since the operating system will make
* them so and we need to know the exact
@@ -1809,7 +1798,7 @@ NET_CacheConverter (FO_Present_Types format_out,
*/
for(i=0; *cp && i < 4; i++)
{
*cp = NET_TO_UPPER(*cp);
*cp = PL_TO_UPPER(*cp);
cp++;
}
*cp = '\0'; /* make sure it's terminated */
@@ -1850,7 +1839,7 @@ NET_CacheConverter (FO_Present_Types format_out,
net_freeCacheObj(cache_object);
cache_object = 0;
do_disk_cache = FALSE;
PR_FREEIF(new_filename);
FREEIF(new_filename);
}
else
{
@@ -1886,23 +1875,23 @@ NET_CacheConverter (FO_Present_Types format_out,
{
TRACEMSG(("Caching this URL!!!!"));
data_object = PR_NEW(CacheDataObject);
data_object = XP_NEW(CacheDataObject);
if (!data_object)
{
XP_FileClose(fp);
return(NULL);
}
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(!stream)
{
XP_FileClose(fp);
PR_Free(data_object);
FREE(data_object);
return(NULL);
}
/* init the object */
memset(data_object, 0, sizeof(CacheDataObject));
PL_memset(data_object, 0, sizeof(CacheDataObject));
/* assign the cache object to the stream data object
*/
@@ -1973,8 +1962,8 @@ NET_CacheConverter (FO_Present_Types format_out,
* cache lock is only good for a single
* session
*/
PUBLIC XP_Bool
NET_ChangeCacheFileLock(URL_Struct *URL_s, XP_Bool set)
PUBLIC Bool
NET_ChangeCacheFileLock(URL_Struct *URL_s, Bool set)
{
int status;
DBT data;
@@ -2149,7 +2138,7 @@ MODULE_PRIVATE void NET_RefreshCacheFileExpiration(URL_Struct * URL_s)
/* returns TRUE if the url is in the disk cache
*/
PUBLIC XP_Bool
PUBLIC Bool
NET_IsURLInDiskCache(URL_Struct *URL_s)
{
DBT *key;
@@ -2187,7 +2176,7 @@ NET_RemoveURLFromCache(URL_Struct *URL_s)
DBT *key;
/* larubbio */
XP_Bool SARCache = FALSE;
Bool SARCache = FALSE;
XP_FileType fileType;
DB *local_cache_database = NULL;
@@ -2232,7 +2221,7 @@ NET_RemoveURLFromCache(URL_Struct *URL_s)
#else
XP_FileRemove(filename, fileType);
#endif
PR_Free(filename);
FREE(filename);
}
(*local_cache_database->del)(local_cache_database, key, 0);
@@ -2260,7 +2249,7 @@ NET_RemoveURLFromCache(URL_Struct *URL_s)
/* return TRUE if the URL is in the cache and
* is a partial cache file
*/
MODULE_PRIVATE PRBool
MODULE_PRIVATE Bool
NET_IsPartialCacheFile(URL_Struct *URL_s)
{
net_CacheObject *found_cache_obj;
@@ -2293,13 +2282,12 @@ NET_IsPartialCacheFile(URL_Struct *URL_s)
return(0);
}
PUBLIC char *
PUBLIC int
NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt)
{
net_CacheObject *found_cache_obj;
XP_StatStruct stat_entry;
int status;
char *proto;
int status;
char *byterange;
char byterange_char;
DBT *key;
@@ -2320,10 +2308,10 @@ NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt)
/* can't find it here. Let's look
* in the memory and external caches
*/
proto = NET_FindURLInMemCache(URL_s, ctxt);
status = NET_FindURLInMemCache(URL_s, ctxt);
if(proto)
return(proto);
if(status)
return(status);
else
return(NET_FindURLInExtCache(URL_s, ctxt));
}
@@ -2430,10 +2418,10 @@ NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt)
/* can't find it here. Let's look
* in the memory and external caches
*/
proto = NET_FindURLInMemCache(URL_s, ctxt);
status = NET_FindURLInMemCache(URL_s, ctxt);
if(proto)
return(proto);
if(status)
return(status);
else
return(NET_FindURLInExtCache(URL_s, ctxt));
}
@@ -2632,14 +2620,14 @@ NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt)
TRACEMSG(("Using Disk Copy"));
return PL_strdup(FILE_CACHE_PROTOCOL);
return(FILE_CACHE_TYPE_URL);
}
/* read the Cache File allocation table.
*/
PUBLIC void
NET_ReadCacheFAT(char * cachefatfile, XP_Bool stat_files)
NET_ReadCacheFAT(char * cachefatfile, Bool stat_files)
{
if(net_MaxDiskCacheSize > 0)
net_OpenCacheFatDB();
@@ -2647,12 +2635,6 @@ NET_ReadCacheFAT(char * cachefatfile, XP_Bool stat_files)
return;
}
PUBLIC void
NET_CacheInit(void)
{
NET_ReadCacheFAT("", TRUE);
}
/* unload the disk cache FAT list to disk
*
* set final_call to true if this is the last call to
@@ -2663,7 +2645,7 @@ NET_CacheInit(void)
* shutdown.
*/
PUBLIC void
NET_WriteCacheFAT(char *filename, XP_Bool final_call)
NET_WriteCacheFAT(char *filename, Bool final_call)
{
net_StoreDiskCacheSize();
@@ -2710,13 +2692,6 @@ NET_NumberOfFilesInDiskCache()
return(net_NumberInDiskCache);
}
static int
net_cache_strcmp (const void *a, const void *b)
{
return PL_strcmp ((const char *) a, (const char *) b);
}
/* this function recurses through all directories in
* the cache directory and stuffs all the files into
* the hash table. Any directory names below the
@@ -2726,7 +2701,7 @@ net_cache_strcmp (const void *a, const void *b)
* returns 0 on success, -1 on failure
*/
PRIVATE int
net_cache_recursive_file_finder(XP_HashList *hash_table,
net_cache_recursive_file_finder(PLHashTable *hash_table,
const char *prefix,
char *cur_dir,
char *base_dir,
@@ -2738,7 +2713,7 @@ net_cache_recursive_file_finder(XP_HashList *hash_table,
int prefix_len, d_len, status;
char *dir_prefix=0;
char *d_name;
XP_Bool add_dir_prefix=TRUE;
Bool add_dir_prefix=TRUE;
/* compute the difference between base_dir and
* cur_dir. The difference should be prepended
@@ -2758,7 +2733,7 @@ net_cache_recursive_file_finder(XP_HashList *hash_table,
if(!(dir_ptr = XP_OpenDir (cur_dir, xpCache)))
{
PR_Free(dir_prefix);
FREE(dir_prefix);
return(-1);
}
@@ -2827,7 +2802,7 @@ net_cache_recursive_file_finder(XP_HashList *hash_table,
new_dir,
base_dir,
buffer);
PR_Free(new_dir);
FREE(new_dir);
}
continue;
}
@@ -2835,20 +2810,37 @@ net_cache_recursive_file_finder(XP_HashList *hash_table,
if(add_dir_prefix)
{
sprintf(buffer, "%.250s/%.250s", dir_prefix, d_name);
XP_HashListAddObject(hash_table, PL_strdup(buffer));
PL_HashTableAdd(hash_table, PL_strdup(buffer), "x");
}
else
{
XP_HashListAddObject(hash_table, PL_strdup(d_name));
PL_HashTableAdd(hash_table, PL_strdup(d_name), "x");
}
}
PR_Free(dir_prefix);
FREE(dir_prefix);
XP_CloseDir(dir_ptr);
return 0;
}
PRIVATE PRIntn
net_hash_cleanup_enumerator(PLHashEntry *he, PRIntn i, void *arg)
{
char *filename = (char *) he->key;
#ifdef XP_OS2
XP_LazyFileRemove(filename, xpCache);
#else
XP_FileRemove(filename, xpCache);
#endif
TRACEMSG(("Unknown cache file %s found! -- deleteing...",
filename));
FREE(filename);
return HT_ENUMERATE_REMOVE;
}
/* cleans up the cache directory by listing every
* file and deleting the ones it doesn't know about
* that begin with the cacheing prefix
@@ -2859,7 +2851,7 @@ NET_CleanupCacheDirectory(char * dir_name, const char * prefix)
#define REMOVE_LIST_SIZE 1000
DBT *remove_list[REMOVE_LIST_SIZE];
char *filename, *d_name;
XP_HashList *hash_table;
PLHashTable *hash_table;
DBT key, data;
int status;
char buffer[512];
@@ -2894,7 +2886,8 @@ NET_CleanupCacheDirectory(char * dir_name, const char * prefix)
TRACEMSG(("cleaning up cache directory of unknown cache files"));
hash_table = XP_HashListNew(1597, XP_StringHash, net_cache_strcmp);
hash_table = PL_NewHashTable(1597, PL_HashString, PL_CompareStrings,
PL_CompareStrings, NULL, NULL);
if(!hash_table)
return(-1);
@@ -2943,13 +2936,13 @@ NET_CleanupCacheDirectory(char * dir_name, const char * prefix)
{
num_files++; /* keep a count of all the files in the database */
d_name = (char*) XP_HashListRemoveObject(hash_table, filename);
d_name = (char*) PL_HashTableRemove(hash_table, filename);
if(d_name)
{
PR_Free(d_name);
FREE(d_name);
}
}
PR_Free(filename);
FREE(filename);
}
else
{
@@ -2976,31 +2969,9 @@ NET_CleanupCacheDirectory(char * dir_name, const char * prefix)
* @@@@ Manipulate the hash table directly
*/
{
int list_count;
XP_List *list_ptr;
for(list_count=0; list_count < hash_table->size; list_count++)
{
list_ptr = hash_table->list[list_count];
if(list_ptr)
{
while((filename =
(char *) XP_ListRemoveTopObject(list_ptr)) != 0)
{
#ifdef XP_OS2
XP_LazyFileRemove(filename, xpCache);
#else
XP_FileRemove(filename, xpCache);
#endif
TRACEMSG(("Unknown cache file %s found! -- deleteing...",
filename));
PR_Free(filename);
}
XP_ListDestroy(list_ptr); /* free the list */
}
}
XP_HashListDestroy(hash_table);
PL_HashTableEnumerateEntries(hash_table, net_hash_cleanup_enumerator,
NULL);
PL_HashTableDestroy(hash_table);
}
/* remove the entries that are no longer needed or
@@ -3066,7 +3037,7 @@ NET_DisplayCacheInfoAsHTML(ActiveEntry * cur_entry)
NET_StreamClass * stream;
net_CacheObject * cache_obj;
DBT key, data;
XP_Bool long_form = FALSE;
Bool long_form = FALSE;
int i;
if(!buffer)
@@ -3092,7 +3063,7 @@ NET_DisplayCacheInfoAsHTML(ActiveEntry * cur_entry)
if(!stream)
{
cur_entry->status = MK_UNABLE_TO_CONVERT;
PR_Free(buffer);
FREE(buffer);
return;
}
@@ -3218,7 +3189,7 @@ PUT_PART(buffer);
PUT_PART(buffer);
escaped = NET_EscapeHTML(address);
PUT_PART(escaped);
PR_Free(escaped);
FREE(escaped);
PL_strcpy(buffer, "</A>");
PUT_PART(buffer);
TABLE_BOTTOM;
@@ -3333,7 +3304,7 @@ PUT_PART(buffer);
while(0 == (*cache_database->seq)(cache_database, &key, &data, R_NEXT));
END:
PR_Free(buffer);
FREE(buffer);
if(cur_entry->status < 0)
(*stream->abort)(stream, cur_entry->status);
else
@@ -3342,10 +3313,10 @@ END:
return;
}
#define SANE_BUFLEN 1024
#include "libmocha.h"
#define SANE_BUFLEN 1024
NET_StreamClass *
NET_CloneWysiwygCacheFile(MWContext *window_id, URL_Struct *URL_s,
uint32 nbytes, const char * wysiwyg_url,
@@ -3436,13 +3407,13 @@ found:
break;
nbytes -= len;
}
PR_Free(buf);
FREE(buf);
XP_FileClose(fromfp);
if (nbytes != 0)
{
/* NB: Our caller must clear top_state->mocha_write_stream. */
stream->abort(stream, MK_UNABLE_TO_CONVERT);
PR_Free(stream);
PR_DELETE(stream);
return 0;
}
return stream;

View File

@@ -16,23 +16,24 @@
* Reserved.
*/
#ifndef NETCACHE_H
#define NETCACHE_H
#ifndef MKCACHE_H
#define MKCACHE_H
#include "mkgeturl.h"
PR_BEGIN_EXTERN_C
#ifndef EXT_CACHE_H
#include "extcache.h"
#endif
XP_BEGIN_PROTOS
extern void NET_CleanupCache (char * filename);
extern char *NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt);
extern int NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt);
extern void NET_RefreshCacheFileExpiration(URL_Struct * URL_s);
extern void NET_CacheInit(void);
extern void NET_InitMemCacProtocol(void);
extern PRBool NET_IsCacheTraceOn(void);
/* read the Cache File allocation table.
*/
extern void NET_ReadCacheFAT(char * cachefatfile, Bool stat_files);
/* remove a URL from the cache
*/
@@ -43,10 +44,16 @@ extern void NET_RemoveURLFromCache(URL_Struct *URL_s);
*/
extern void NET_DisplayCacheInfoAsHTML(ActiveEntry * cur_entry);
/* trace variable for cache testing */
extern PRBool NET_CacheTraceOn;
/* public accessor function for netcaster */
extern Bool NET_CacheStore(net_CacheObject *cacheObject, URL_Struct *url_s, Bool accept_partial_files);
/* return TRUE if the URL is in the cache and
* is a partial cache file
*/
extern PRBool NET_IsPartialCacheFile(URL_Struct *URL_s);
extern Bool NET_IsPartialCacheFile(URL_Struct *URL_s);
/* encapsulated access to the first object in cache_database */
extern int NET_FirstCacheObject(DBT *key, DBT *data);
@@ -57,34 +64,6 @@ extern int NET_NextCacheObject(DBT *key, DBT *data);
/* Max size for displaying in the cache browser */
extern int32 NET_GetMaxDiskCacheSize();
extern void
NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions);
XP_END_PROTOS
extern void
CACHE_CloseAllOpenSARCache();
extern void
CACHE_OpenAllSARCache();
/* create an HTML stream and push a bunch of HTML about
* the memory cache
*/
extern void
NET_DisplayMemCacheInfoAsHTML(ActiveEntry * cur_entry);
extern char *
NET_FindURLInMemCache(URL_Struct * URL_s, MWContext *ctxt);
/* lookup routine
*
* builds a key and looks for it in
* the database. Returns an access
* method and sets a filename in the
* URL struct if found
*/
extern char *
NET_FindURLInExtCache(URL_Struct * URL_s, MWContext *ctxt);
PR_END_EXTERN_C
#endif /* NETCACHE_H */
#endif /* MKCACHE_H */

View File

@@ -42,7 +42,7 @@ net_CertLdapLoad(ActiveEntry *ce)
#ifdef NSPR20_DISABLED /* need to convert to PRFileDesc */
ce->socket = connData->fd;
#endif
PR_ASSERT(0);
XP_ASSERT(0);
#ifdef XP_UNIX
NET_SetConnectSelect(ce->window_id, ce->socket);
@@ -126,6 +126,6 @@ NET_InitCertLdapProtocol(void)
certldap_proto_impl.interrupt = net_InterruptCertLdap;
certldap_proto_impl.cleanup = net_CleanupCertLdap;
NET_RegisterProtocolImplementation(&certldap_proto_impl, INTERNAL_CERTLDAP_PROTOCOL);
NET_RegisterProtocolImplementation(&certldap_proto_impl, INTERNAL_CERTLDAP_TYPE_URL);
}

View File

@@ -20,12 +20,12 @@
/*
* mkcertld.h - api to cert ldap protocol code
*
* $Id: mkcertld.h,v 1.2 1998-05-19 00:53:44 scullin Exp $
* $Id: mkcertld.h,v 3.1 1998-03-28 03:31:36 ltabb Exp $
*/
PR_BEGIN_EXTERN_C
XP_BEGIN_PROTOS
void NET_InitCertLdapProtocol(void);
PR_END_EXTERN_C
XP_END_PROTOS
#endif /* _MKCERTLD_H_ */

View File

@@ -26,15 +26,16 @@
#include "rosetta.h"
#include "mkutils.h"
#include "netutils.h"
#include "mkfe.h"
#include "prerror.h"
#include "prsystem.h"
#include "plstr.h"
#include "plstr2.h"
#include "pllist.h"
#include "prefapi.h"
#include "mkpadpac.h"
#if defined(XP_WIN) && !defined(MODULAR_NETLIB)
#if defined(XP_WIN)
#if !defined(B1M)
#define ASYNC_DNS
#endif /* B1M */
#endif
#include "mktcp.h"
@@ -45,19 +46,9 @@
#include "secnav.h"
#endif /* MOZILLA_CLIENT */
#include "merrors.h"
#ifndef NSPR20
#if defined(XP_UNIX) || defined(XP_WIN32)
#include "prnetdb.h"
#else
#define PRHostEnt struct hostent
#define PR_NETDB_BUF_SIZE 5
#endif
#else
#include "prnetdb.h"
#endif
#include "ssl.h"
#include "xp_error.h"
#if defined(XP_OS2) /*DSR072196 - use os2sock.h*/
#include "os2sock.h"
@@ -88,6 +79,8 @@
#endif /* XP_UNIX */
#include "xp_error.h"
/* for XP_GetString() */
#include "xpgetstr.h"
extern int MK_CONNECTION_REFUSED;
@@ -123,7 +116,7 @@ typedef enum {
struct _TCP_ConData {
TCPStatesEnum next_state; /* states of the machine */
PRNetAddr net_addr;
XP_Bool use_security;
PRBool use_security;
time_t begin_time;
};
@@ -157,7 +150,7 @@ typedef struct _DNSEntry {
} DNSEntry;
PRIVATE char * net_local_hostname=0; /* The name of this host */
PRIVATE XP_List * dns_list=0;
PRIVATE PLList * dns_list=0;
#define pref_dnsExpiration "network.dnsCacheExpiration"
PRIVATE int32 dnsCacheExpiration=0;
@@ -185,7 +178,7 @@ NET_SetTCPConnectTimeout(uint32 seconds) {
*/
int NET_SetSocksHost(char * host)
{
XP_Bool is_numeric_ip;
PRBool is_numeric_ip;
char *host_cp;
#ifdef MOZ_OFFLINE
@@ -200,7 +193,7 @@ int NET_SetSocksHost(char * host)
if(host && *host)
{
char *cp;
TRACEMSG(("Trying to set Socks host: %s\n", host));
XP_LTRACE(MKLib_trace_flag,1,("Trying to set Socks host: %s\n", host));
/* If there's no port or it's zero, fail out so user gets
* an error and checks his configuration.
@@ -215,14 +208,14 @@ int NET_SetSocksHost(char * host)
NET_SocksPort = 0;
PR_FREEIF(NET_SocksHostName);
NET_SocksHostName = 0;
TRACEMSG(("Couldn't find a socks port. :(\n"));
XP_LTRACE(MKLib_trace_flag,1,("Couldn't find a socks port. :(\n"));
socksFailure=TRUE;
return 0; /* Fail? */
}
is_numeric_ip = TRUE; /* init positive */
for(host_cp = host; *host_cp; host_cp++)
if(!NET_IS_DIGIT(*host_cp) && *host_cp != '.')
if(!XP_IS_DIGIT(*host_cp) && *host_cp != '.')
{
is_numeric_ip = FALSE;
break;
@@ -252,18 +245,18 @@ int NET_SetSocksHost(char * host)
if (!hp)
{
TRACEMSG(("mktcp.c: Can't find Socks host name `%s'\n", host));
XP_LTRACE(MKLib_trace_flag,1,("mktcp.c: Can't find Socks host name `%s'\n", host));
NET_SocksHost = 0;
if (NET_SocksHostName) PR_Free (NET_SocksHostName);
NET_SocksHostName = 0;
TRACEMSG(("Socks host is bad. :(\n"));
XP_LTRACE(MKLib_trace_flag,1,("Socks host is bad. :(\n"));
if (cp) {
*cp = ':';
}
socksFailure=TRUE;
return 0; /* Fail? */
}
memcpy(&NET_SocksHost, hp->h_addr, hp->h_length);
PL_memcpy(&NET_SocksHost, hp->h_addr, hp->h_length);
}
if (cp) {
*cp = ':';
@@ -275,7 +268,7 @@ int NET_SetSocksHost(char * host)
if (NET_SocksHostName) PR_Free (NET_SocksHostName);
NET_SocksHostName = NULL;
NET_SocksPort = 0;
TRACEMSG(("Clearing Socks Host\n"));
XP_LTRACE(MKLib_trace_flag,1,("Clearing Socks Host\n"));
}
socksFailure=FALSE;
return(1);
@@ -297,17 +290,17 @@ NET_FreeDNSStruct(DNSEntry * theVictim)
PRIVATE void
NET_DeleteDNSList(void)
{
XP_List * list_obj = dns_list;
DNSEntry * dns_entry;
if(!list_obj)
if(!dns_list)
return;
while((dns_entry = (DNSEntry *)XP_ListNextObject(list_obj)) != 0)
PL_ListEnumReset(dns_list);
while((dns_entry = (DNSEntry *)PL_ListEnumNext(dns_list)) != 0)
{
XP_ListRemoveObject(dns_list, dns_entry);
PL_ListRemove(dns_list, dns_entry);
NET_FreeDNSStruct(dns_entry);
}
XP_ListDestroy(dns_list);
PL_ListDestroy(dns_list);
return;
}
@@ -363,7 +356,7 @@ net_CacheDNSEntry(char * hostname,
/* Determine whether or not we've got a list going yet. If not, get one */
if(!dns_list)
dns_list = XP_ListNew();
dns_list = PL_ListNew();
if(!dns_list)
return;
@@ -392,7 +385,7 @@ net_CacheDNSEntry(char * hostname,
PR_ASSERT(host_pointer->h_length == 4);
for(i=0; i < addrCount; i++)
{
memcpy(&new_entry->ips[i], host_pointer->h_addr_list[i], 4);
PL_memcpy(&new_entry->ips[i], host_pointer->h_addr_list[i], 4);
}
/* Copy all the other data. */
@@ -400,13 +393,13 @@ net_CacheDNSEntry(char * hostname,
new_entry->h_length = host_pointer->h_length;
new_entry->expirationTime = time(NULL) + (net_GetDNSExpiration()); /* Current time plus expiration */
XP_ListAddObject(dns_list, new_entry);
PL_ListAdd(dns_list, new_entry);
# ifdef MAX_DNS_LIST_SIZE
/* check to make sure the list is not overflowing the maximum size. */
if(XP_ListCount(dns_list) > MAX_DNS_LIST_SIZE)
if(PL_ListCount(dns_list) > MAX_DNS_LIST_SIZE)
{
DNSEntry * first_entry = (DNSEntry *) XP_ListRemoveEndObject(dns_list);
DNSEntry * first_entry = (DNSEntry *) PL_ListRemoveLast(dns_list);
NET_FreeDNSStruct(first_entry);
}
# endif /* defined(MAX_DNS_LIST_SIZE) */
@@ -424,13 +417,13 @@ net_CacheDNSEntry(char * hostname,
PRIVATE DNSEntry *
net_CheckDNSCache(CONST char * hostname)
{
XP_List *list_obj = dns_list;
DNSEntry * dns_entry;
if(!hostname || !dns_list)
return(0);
while((dns_entry = (DNSEntry *)XP_ListNextObject(list_obj)) != 0)
PL_ListEnumReset(dns_list);
while((dns_entry = (DNSEntry *)PL_ListEnumNext(dns_list)) != 0)
{
TRACEMSG(("net_CheckDNSCache: comparing %s and %s", hostname, dns_entry->hostname));
if(dns_entry->hostname && !PL_strcasecmp(hostname, dns_entry->hostname))
@@ -438,7 +431,7 @@ net_CheckDNSCache(CONST char * hostname)
/* See if the dns entry has expired, if so, get rid of it */
if(dns_entry->expirationTime < time(NULL))
{
XP_ListRemoveObject(dns_list, dns_entry);
PL_ListRemove(dns_list, dns_entry);
NET_FreeDNSStruct(dns_entry);
return 0;
}
@@ -570,11 +563,11 @@ net_FindAddress (const char *host_ptr,
/* acts as a flag to determine whether or not this is the first failure. If it is, we want to sanityCheckDNS
which determines whether or not we've got a good net connection, sort of */
static XP_Bool first_dns_failure=TRUE;
static PRBool first_dns_failure=TRUE;
static int random_host_number = -1;
static time_t random_host_expiration = 0;
static XP_Bool tryPAD=TRUE;
XP_Bool is_numeric_ip;
static PRBool tryPAD=TRUE;
PRBool is_numeric_ip;
if(!host_ptr || !*host_ptr)
return -1;
@@ -634,7 +627,7 @@ net_FindAddress (const char *host_ptr,
port = PL_strchr(host_port, ':');
if (port) {
*port++ = 0;
if (NET_IS_DIGIT(*port)) {
if (XP_IS_DIGIT(*port)) {
unsigned short port_num = (unsigned short) atol(port);
int i;
@@ -648,7 +641,7 @@ net_FindAddress (const char *host_ptr,
if(port_num == net_bad_ports_table[i]) {
char *error_msg = PL_strdup(XP_GetString(MK_PORT_ACCESS_NOT_ALLOWED));
if(error_msg) {
NET_Alert(window_id, error_msg);
FE_Alert(window_id, error_msg);
PR_Free(error_msg);
}
@@ -685,7 +678,7 @@ net_FindAddress (const char *host_ptr,
/* Determine whether or not we're dealing with an ip address as the host */
is_numeric_ip = TRUE; /* init positive */
for(host_cp = host_port; *host_cp; host_cp++)
if(!NET_IS_DIGIT(*host_cp) && *host_cp != '.') {
if(!XP_IS_DIGIT(*host_cp) && *host_cp != '.') {
is_numeric_ip = FALSE;
break;
}
@@ -714,7 +707,7 @@ net_FindAddress (const char *host_ptr,
|| PL_strcasestr(host_port+2, ".mcom.com"))) {
time_t cur_time = time(NULL);
char temp_string[32];
XP_Bool is_rl_host;
PRBool is_rl_host;
*temp_string = '\0';
@@ -802,10 +795,10 @@ net_FindAddress (const char *host_ptr,
* This function is only implemented on for XP_UNIX. */
NET_SanityCheckDNS(window_id);
}
TRACEMSG(("mktcp.c: Can't find host name `%s'. Errno #%d\n",
XP_LTRACE(MKLib_trace_flag,1,("mktcp.c: Can't find host name `%s'. Errno #%d\n",
host_port, PR_GetError()));
PR_Free(host_port);
TRACEMSG(("gethostbyname failed with error: %d\n", PR_GetError()));
XP_LTRACE(MKLib_trace_flag,1,("gethostbyname failed with error: %d\n", PR_GetError()));
return -1; /* Fail? */
}
@@ -821,7 +814,7 @@ net_FindAddress (const char *host_ptr,
/* Copy the first address in the list to the sin. char ** h_addr_list */
PR_ASSERT(hoststruct_pointer->h_length == 4);
memcpy(&net_addr->inet.ip, hoststruct_pointer->h_addr_list[0], 4);
PL_memcpy(&net_addr->inet.ip, hoststruct_pointer->h_addr_list[0], 4);
/* if NET_GetDNSExpiration() returns 0 we are considering the cache disabled */
if(net_GetDNSExpiration() > 0)
@@ -932,7 +925,7 @@ net_start_first_connect(const char *host,
{
*error_msg = NET_ExplainErrorDetails(MK_CONNECTION_REFUSED, host);
TRACEMSG(("connect: refused\n"));
XP_LTRACE(MKLib_trace_flag,1,("connect: refused\n"));
return(MK_CONNECTION_REFUSED);
}
@@ -940,7 +933,7 @@ net_start_first_connect(const char *host,
{
*error_msg = NET_ExplainErrorDetails(MK_CONNECTION_TIMED_OUT);
TRACEMSG(("connect: timed out\n"));
XP_LTRACE(MKLib_trace_flag,1,("connect: timed out\n"));
return(MK_CONNECTION_TIMED_OUT);
}
@@ -948,7 +941,7 @@ net_start_first_connect(const char *host,
{
*error_msg = NET_ExplainErrorDetails(MK_UNABLE_TO_CONNECT, rv);
TRACEMSG(("connect: unable to connect %i\n", rv));
XP_LTRACE(MKLib_trace_flag,1,("connect: unable to connect %i\n", rv));
return (MK_UNABLE_TO_CONNECT);
}
@@ -962,7 +955,7 @@ net_start_first_connect(const char *host,
/* Finds the DNSEntry with hostname in it, removes it if it only has one address, otherwise
removes the first address and shifts the other(s) forward so they can be tried. */
PRIVATE XP_Bool
PRIVATE PRBool
net_connection_failed(CONST char *hostname)
{
DNSEntry *dns_entry = 0;
@@ -989,7 +982,7 @@ net_connection_failed(CONST char *hostname)
blow the entire entry away */
if (dns_entry->addressCount == 1)
{
XP_ListRemoveObject(dns_list, dns_entry);
PL_ListRemove(dns_list, dns_entry);
NET_FreeDNSStruct(dns_entry);
return FALSE;
}
@@ -997,7 +990,7 @@ net_connection_failed(CONST char *hostname)
{
dns_entry->addressCount--;
/* Shift addresses up one, overwriting the first one */
memmove(dns_entry->ips,
PL_memmove(dns_entry->ips,
&dns_entry->ips[1],
sizeof(PRUint32) * dns_entry->addressCount );
/* Null terminate the array */
@@ -1083,7 +1076,7 @@ NET_BeginConnect (CONST char *url,
return(MK_OUT_OF_MEMORY);
}
memset(*tcp_con_data, 0, sizeof(TCP_ConData));
PL_memset(*tcp_con_data, 0, sizeof(TCP_ConData));
/* Set up Internet defaults and port*/
PR_InitializeNetAddr(PR_IpAddrNull, (PRUint16) def_port, &(*tcp_con_data)->net_addr);
@@ -1373,7 +1366,7 @@ NET_FinishConnect (CONST char *url,
if(status < 0)
{
net_connection_failed(host);
TRACEMSG(("mktcp.c: Error during connect %d\n", PR_GetError()));
XP_LTRACE(MKLib_trace_flag,1,("mktcp.c: Error during connect %d\n", PR_GetError()));
PR_Close(*sock);
*sock = NULL;
}
@@ -1441,7 +1434,7 @@ error_out:
*/
/* At this point we know there was a problem with the ip address we tried. */
TRACEMSG(("mktcp.c: Error during connect: %d\n", error));
XP_LTRACE(MKLib_trace_flag,1,("mktcp.c: Error during connect: %d\n", error));
host = NET_ParseURL(url, GET_HOST_PART);
if(!host)
@@ -1555,12 +1548,12 @@ NET_CleanupTCP(void)
{
DNSEntry * tmp_entry;
while((tmp_entry = (DNSEntry *)XP_ListRemoveTopObject(dns_list)) != NULL)
while((tmp_entry = (DNSEntry *)PL_ListRemoveFirst(dns_list)) != NULL)
{
NET_FreeDNSStruct(tmp_entry);
}
XP_ListDestroy(dns_list);
PL_ListDestroy(dns_list);
dns_list = 0;
}

View File

@@ -16,17 +16,10 @@
* Reserved.
*/
#include "xp.h"
#include "plstr.h"
#include "prmem.h"
#include "net.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "mkutils.h"
#include "mkgeturl.h"
#include "mkstream.h"
#include "dataurl.h"
#include "cvmime.h"
#include "mkdaturl.h"
extern int MK_OUT_OF_MEMORY;
extern int MK_MALFORMED_URL_ERROR;
@@ -43,11 +36,11 @@ net_DataURLLoad (ActiveEntry * ce)
NET_StreamClass *stream;
char *comma;
StrAllocCopy(ce->protocol, DATA_PROTOCOL);
ce->protocol = DATA_TYPE_URL;
/* we need a buffer equal to or smaller than the size of the URL
*/
data_buffer = (char *)PR_Malloc(PL_strlen(ce->URL_s->address)+1);
data_buffer = (char *)XP_ALLOC(XP_STRLEN(ce->URL_s->address)+1);
if(!data_buffer)
return(MK_OUT_OF_MEMORY);
@@ -55,7 +48,7 @@ net_DataURLLoad (ActiveEntry * ce)
/* determine the content type */
/* find the first comma */
comma = PL_strchr(ce->URL_s->address, ',');
comma = XP_STRCHR(ce->URL_s->address, ',');
/* if no comma abort */
if(!comma)
@@ -68,14 +61,14 @@ net_DataURLLoad (ActiveEntry * ce)
StrAllocCopy(ce->URL_s->content_type, TEXT_PLAIN);
/* check for a content type */
if(comma != ce->URL_s->address + PL_strlen("data:"))
if(comma != ce->URL_s->address + XP_STRLEN("data:"))
{
*comma = '\0';
PL_strcpy(data_buffer, ce->URL_s->address + PL_strlen("data:"));
XP_STRCPY(data_buffer, ce->URL_s->address + XP_STRLEN("data:"));
*comma = ',';
/* check for base 64 encoding */
if(PL_strcasestr(data_buffer, "base64"))
if(strcasestr(data_buffer, "base64"))
is_base64 = TRUE;
/* parse the rest as a content-type */
@@ -104,11 +97,11 @@ net_DataURLLoad (ActiveEntry * ce)
/* @@@@ bug: ignore is_write_ready */
/* copy the data part of the URL into a scratch buffer */
PL_strcpy(data_buffer, comma+1);
XP_STRCPY(data_buffer, comma+1);
ce->status = (*stream->put_block)(stream,
data_buffer,
PL_strlen(data_buffer));
XP_STRLEN(data_buffer));
if(ce->status < 0)
{
(*stream->abort)(stream, ce->status);
@@ -128,7 +121,7 @@ net_DataURLLoad (ActiveEntry * ce)
PRIVATE int32
net_ProcessDataURL (ActiveEntry * cur_entry)
{
PR_ASSERT(0);
XP_ASSERT(0);
return(-1);
}
@@ -138,7 +131,7 @@ net_ProcessDataURL (ActiveEntry * cur_entry)
PRIVATE int32
net_InterruptDataURL (ActiveEntry * cur_entry)
{
PR_ASSERT(0);
XP_ASSERT(0);
return(-1);
}
@@ -158,6 +151,6 @@ NET_InitDataURLProtocol(void)
dataurl_proto_impl.interrupt = net_InterruptDataURL;
dataurl_proto_impl.cleanup = net_CleanupDataURL;
NET_RegisterProtocolImplementation(&dataurl_proto_impl, DATA_PROTOCOL);
NET_RegisterProtocolImplementation(&dataurl_proto_impl, DATA_TYPE_URL);
}

View File

@@ -18,15 +18,15 @@
/* Created: Lou Montulli */
/* Modifications/Additions: Gagan Saksena */
/* Please leave outside of ifdef for windows precompiled headers. */
#include "mkutils.h"
#ifdef MOZILLA_CLIENT
#include "xp.h"
#include "mkfe.h"
#include "mktrace.h"
#include "mkcache.h"
#include "plstr.h"
#include "plstr2.h"
#include "pllist.h"
#include "glhist.h"
#include "xp_hash.h"
#include "xp_mcom.h"
#include "client.h"
#include "mkgeturl.h"
@@ -34,11 +34,11 @@
#include "secnav.h"
#include "extcache.h"
#include "mkextcac.h"
#include "prmem.h"
#include "plstr.h"
/* For 197 java hookup */
#if defined(JAVA)
#include "jri.h"
#endif /* JAVA */
#ifdef PROFILE
#pragma profile on
@@ -50,8 +50,8 @@ extern int XP_DATABASE_CANT_BE_VALIDATED_MISSING_NAME_ENTRY;
extern int XP_DB_SELECTED_DB_NAMED;
extern int XP_REQUEST_EXTERNAL_CACHE;
PRIVATE XP_List * ext_cache_database_list = 0;
PRIVATE XP_Bool AtLeastOneOpenCache = FALSE;
PRIVATE PLList * ext_cache_database_list = 0;
PRIVATE Bool AtLeastOneOpenCache = FALSE;
/* ************************************ Defines ************************************** */
@@ -66,8 +66,8 @@ PRIVATE XP_Bool AtLeastOneOpenCache = FALSE;
/* ************************************ Proto's ************************************** */
/* Modified existing functions to call these (read Cut n Paste with passed in args) */
PRIVATE void cache_ReadCacheInfo(XP_File fp, XP_List **list_ptr, int type);
PRIVATE void cache_SaveCacheInfo(XP_File fp, XP_List *list_ptr, int type);
PRIVATE void cache_ReadCacheInfo(XP_File fp, PLList **list_ptr, int type);
PRIVATE void cache_SaveCacheInfo(XP_File fp, PLList *list_ptr, int type);
PRIVATE void cache_SaveSARCacheInfo(void);
/* Newly written functions */
@@ -78,8 +78,8 @@ MODULE_PRIVATE ExtCacheDBInfo * cache_DBDataToExtCacheDBInfoStruct(DBT * db_obj)
MODULE_PRIVATE void cache_freeExtCacheDBInfoObj (ExtCacheDBInfo * cache_obj);
/* ************************************ Variables ************************************** */
PRIVATE XP_List * SAR_cache_database_list = 0;
PRIVATE XP_Bool SARCacheIndexOpen = FALSE;
PRIVATE PLList * SAR_cache_database_list = 0;
PRIVATE Bool SARCacheIndexOpen = FALSE;
/* close an external cache
@@ -127,12 +127,12 @@ net_GetExtCacheNameFromDB(ExtCacheDBInfo *db_info)
* Returns a True if successfully opened
* Returns False if not.
*/
PRIVATE XP_Bool
PRIVATE Bool
net_OpenExtCacheFat(MWContext *ctxt, ExtCacheDBInfo *db_info)
{
char *slash;
char *db_name;
XP_Bool close_db=FALSE;
PRBool close_db=FALSE;
if(!db_info->database)
{
@@ -144,12 +144,12 @@ net_OpenExtCacheFat(MWContext *ctxt, ExtCacheDBInfo *db_info)
0600,
DB_HASH,
0);
#ifdef XP_PC
#ifdef XP_WIN
/* This is probably the last checkin into Akbar */
/* What really needs to be fixed is that Warren's implementation */
/* of WH_FilePlatformName needs to return a malloc'd string */
/* Right now, on Mac & X, it does not. See xp_file.c */
PR_FREEIF(filename);
FREEIF(filename);
#endif
if(!db_info->database)
return(FALSE);
@@ -159,7 +159,7 @@ net_OpenExtCacheFat(MWContext *ctxt, ExtCacheDBInfo *db_info)
StrAllocCopy(db_info->path, db_info->filename);
/* figure out the path to the database */
#ifdef XP_PC
#if defined(XP_WIN) || defined(XP_OS2) /* IBM-SAH */
slash = PL_strrchr(db_info->path, '\\');
#elif defined(XP_MAC)
slash = PL_strrchr(db_info->path, '/');
@@ -180,7 +180,7 @@ net_OpenExtCacheFat(MWContext *ctxt, ExtCacheDBInfo *db_info)
if(!db_name)
{
close_db = !NET_Confirm(ctxt,
close_db = !FE_Confirm(ctxt,
XP_GetString( XP_DATABASE_CANT_BE_VALIDATED_MISSING_NAME_ENTRY ) );
}
else if(PL_strcmp(db_name, db_info->name))
@@ -191,7 +191,7 @@ net_OpenExtCacheFat(MWContext *ctxt, ExtCacheDBInfo *db_info)
XP_GetString( XP_DB_SELECTED_DB_NAMED ),
db_name, db_info->name);
close_db = !NET_Confirm(ctxt, buffer);
close_db = !FE_Confirm(ctxt, buffer);
}
if(close_db)
@@ -210,7 +210,7 @@ PRIVATE void
net_SaveExtCacheInfo(void)
{
XP_File fp;
XP_List *list_ptr;
PLList *list_ptr;
fp = XP_FileOpen("", xpExtCacheIndex, XP_FILE_WRITE);
list_ptr = ext_cache_database_list;
@@ -248,7 +248,7 @@ net_OpenExtCacheFATCallback(MWContext *ctxt, char * filename, void *closure)
}
else
{
if(NET_Confirm(ctxt, "Unable to open External Cache. Try again?"))
if(FE_Confirm(ctxt, "Unable to open External Cache. Try again?"))
{
/* try and open again */
@@ -272,8 +272,7 @@ PUBLIC void
NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions)
{
ExtCacheDBInfo *db_info=0, *db_ptr;
XP_Bool done = FALSE;
XP_List *list_ptr;
Bool done = FALSE;
if(!ext_cache_database_list)
{
@@ -285,8 +284,9 @@ NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions)
/* look up the name in a list and open the file
* if it's not open already
*/
list_ptr = ext_cache_database_list;
while((db_ptr = (ExtCacheDBInfo *)XP_ListNextObject(list_ptr)) != NULL)
PL_ListEnumReset(ext_cache_database_list);
while((db_ptr = (ExtCacheDBInfo *)
PL_ListEnumNext(ext_cache_database_list)) != NULL)
{
if(db_ptr->name && !PL_strcmp(db_ptr->name, cache_name))
{
@@ -300,10 +300,10 @@ NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions)
db_info = PR_NEW(ExtCacheDBInfo);
if(!db_info)
return;
memset(db_info, 0, sizeof(ExtCacheDBInfo));
PL_memset(db_info, 0, sizeof(ExtCacheDBInfo));
StrAllocCopy(db_info->name, cache_name);
XP_ListAddObject(ext_cache_database_list, db_info);
PL_ListAdd(ext_cache_database_list, db_info);
}
else if(db_info->queried_this_session)
{
@@ -323,7 +323,7 @@ NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions)
PR_snprintf(buffer, sizeof(buffer),
"Now using external cache: %.900s",
db_info->name);
if(!NET_Confirm(ctxt, buffer))
if(!FE_Confirm(ctxt, buffer))
net_CloseExtCacheFat(db_info);
}
}
@@ -335,9 +335,9 @@ NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions)
{
if(instructions)
done = !NET_Confirm(ctxt, instructions);
done = !FE_Confirm(ctxt, instructions);
else
done = !NET_Confirm(ctxt, XP_GetString( XP_REQUEST_EXTERNAL_CACHE ) );
done = !FE_Confirm(ctxt, XP_GetString( XP_REQUEST_EXTERNAL_CACHE ) );
if(!done)
FE_PromptForFileName (ctxt, /* context */
@@ -361,7 +361,7 @@ NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions)
* method and sets a filename in the
* URL struct if found
*/
MODULE_PRIVATE char *
MODULE_PRIVATE int
NET_FindURLInExtCache(URL_Struct * URL_s, MWContext *ctxt)
{
return CACHE_FindURLInCache(URL_s, ctxt);
@@ -374,7 +374,7 @@ NET_FindURLInExtCache(URL_Struct * URL_s, MWContext *ctxt)
/*
* allows java to enumerate through all of the managed cache
*/
PUBLIC XP_List *
PUBLIC PLList *
CACHE_GetManagedCacheList()
{
XP_File fp;
@@ -408,7 +408,8 @@ CACHE_CloseAllOpenSARCache()
if (!SAR_cache_database_list) return;
while(NULL != (db_info = (ExtCacheDBInfo *)XP_ListNextObject(SAR_cache_database_list)))
PL_ListEnumReset(SAR_cache_database_list);
while(NULL != (db_info = (ExtCacheDBInfo *)PL_ListEnumNext(SAR_cache_database_list)))
{
CACHE_CloseCache(db_info);
@@ -424,10 +425,12 @@ CACHE_CloseAllOpenSARCache()
*/
TRACEMSG(("Error! Cache db file missing: %s", db_info->filename));
#ifdef MK_UNKNOWN_PURPOSE
if ( NULL != SAR_cache_database_list->prev )
SAR_cache_database_list = SAR_cache_database_list->prev;
XP_ListRemoveObject(SAR_cache_database_list, db_info);
#endif
PL_ListRemove(SAR_cache_database_list, db_info);
}
cache_freeExtCacheDBInfoObj(db_info);
}
@@ -442,7 +445,6 @@ MODULE_PRIVATE void
CACHE_OpenAllSARCache()
{
XP_File fp;
XP_List *tmpList;
ExtCacheDBInfo *db_info,
*tmpDB_info;
char * filename, /* The platform specific filename returned by WH_PlatformFileName */
@@ -463,8 +465,9 @@ CACHE_OpenAllSARCache()
if (!SAR_cache_database_list) return;
tmpList = SAR_cache_database_list;
while(NULL != (db_info = (ExtCacheDBInfo *)XP_ListNextObject(tmpList)))
PL_ListEnumReset(SAR_cache_database_list);
while(NULL != (db_info = (ExtCacheDBInfo *)
PL_ListEnumNext(SAR_cache_database_list)))
{
if ( !db_info->database )
{
@@ -482,7 +485,7 @@ CACHE_OpenAllSARCache()
if ( NULL == db_info->database )
{
CACHE_CloseCache(db_info);
PR_FREEIF(db_info);
FREEIF(db_info);
db_info = NULL;
}
@@ -499,8 +502,8 @@ CACHE_OpenAllSARCache()
db_info->logFile = NULL;
cache_freeExtCacheDBInfoObj(tmpDB_info);
#ifdef XP_PC
PR_FREEIF(filename);
#ifdef XP_WIN
FREEIF(filename);
#endif
}
}
@@ -557,9 +560,8 @@ CACHE_GetCache(ExtCacheDBInfo *db)
ExtCacheDBInfo *db_info,
*tmpDB_info;
XP_Bool inIndex = FALSE,
PRBool inIndex = FALSE,
add2Index = FALSE;
XP_List *tmpList;
uint32 maxSize;
/* If there is no Cache Struct return */
@@ -618,7 +620,7 @@ CACHE_GetCache(ExtCacheDBInfo *db)
else
{
/* I guess the index isn't there, let's make a new one */
SAR_cache_database_list = XP_ListNew();
SAR_cache_database_list = PL_ListNew();
if(!SAR_cache_database_list)
return NULL;
@@ -645,8 +647,9 @@ CACHE_GetCache(ExtCacheDBInfo *db)
/* If I have to add it, I already know it's not there */
if ( !add2Index )
{
tmpList = SAR_cache_database_list;
while( NULL != (db_info = (ExtCacheDBInfo *)XP_ListNextObject(tmpList)))
PL_ListEnumReset(SAR_cache_database_list);
while( NULL != (db_info = (ExtCacheDBInfo *)
PL_ListEnumNext(SAR_cache_database_list)))
{
if(!PL_strcmp(db->filename, db_info->filename) ) /* && !PL_strcmp(db->path, db_info->path) ) */
{
@@ -710,7 +713,7 @@ CACHE_GetCache(ExtCacheDBInfo *db)
if ( NULL == db_info->database )
{
CACHE_CloseCache(db_info);
PR_FREEIF(db_info);
FREEIF(db_info);
db_info = NULL;
@@ -733,7 +736,7 @@ CACHE_GetCache(ExtCacheDBInfo *db)
if ( PL_strcmp(db->name, tmpDB_info->name) )
{
CACHE_CloseCache(db_info);
PR_FREEIF(db_info);
FREEIF(db_info);
db_info = NULL;
}
@@ -753,15 +756,15 @@ CACHE_GetCache(ExtCacheDBInfo *db)
if ( add2Index )
{
/* Since this is not in the index, add it */
XP_ListAddObject(SAR_cache_database_list, db_info);
PL_ListAdd(SAR_cache_database_list, db_info);
cache_SaveSARCacheInfo();
}
/* This might cause problems for FileName routins
PR_FREEIF(tmpName);
FREEIF(tmpName);
*/
#ifdef XP_PC
PR_FREEIF(filename);
#ifdef XP_WIN
FREEIF(filename);
#endif
if (db_info != NULL)
@@ -770,17 +773,17 @@ CACHE_GetCache(ExtCacheDBInfo *db)
/* free the struct they passed in, and have it point to the new
* struct we will be using.
*/
PR_FREEIF(db);
FREEIF(db);
db = db_info;
return db_info;
}
PUBLIC XP_Bool
PUBLIC Bool
CACHE_Put(char *filename, URL_Struct *url_s)
{
net_CacheObject *cacheObject = PR_NEW(net_CacheObject);
memset(cacheObject, 0, sizeof(net_CacheObject));
PL_memset(cacheObject, 0, sizeof(net_CacheObject));
cacheObject->last_modified = url_s->last_modified;
cacheObject->content_length = url_s->content_length;
@@ -808,10 +811,10 @@ PUBLIC ExtCacheDBInfo *
CACHE_GetCacheStruct(char * path, char * filename, char * name)
{
ExtCacheDBInfo * db_info;
XP_List *tmpList;
tmpList = SAR_cache_database_list;
while( NULL != (db_info = (ExtCacheDBInfo *)XP_ListNextObject(tmpList)))
PL_ListEnumReset(SAR_cache_database_list);
while( NULL != (db_info = (ExtCacheDBInfo *)
PL_ListEnumNext(SAR_cache_database_list)))
{
if(!PL_strcmp(path, db_info->path) && !PL_strcmp(filename, db_info->filename) && !PL_strcmp(name, db_info->name) )
{
@@ -826,7 +829,7 @@ CACHE_GetCacheStruct(char * path, char * filename, char * name)
* New Cache version to allow for different files, and cache lists
*/
PRIVATE void
cache_SaveCacheInfo(XP_File fp, XP_List *list_ptr, int type)
cache_SaveCacheInfo(XP_File fp, PLList *list_ptr, int type)
{
ExtCacheDBInfo *db_info;
int32 len = 0;
@@ -850,7 +853,8 @@ cache_SaveCacheInfo(XP_File fp, XP_List *list_ptr, int type)
/* file format is:
* Filename <TAB> database_name
*/
while((db_info = (ExtCacheDBInfo *)XP_ListNextObject(list_ptr)) != NULL)
PL_ListEnumReset(list_ptr);
while((db_info = (ExtCacheDBInfo *)PL_ListEnumNext(list_ptr)) != NULL)
{
if( !db_info->filename && ( (type == EXTCACHE && !db_info->name) || (type == SARCACHE && !db_info->path) ) )
@@ -893,7 +897,7 @@ PRIVATE void
cache_SaveSARCacheInfo(void)
{
XP_File fp;
XP_List *list_ptr;
PLList *list_ptr;
fp = XP_FileOpen("", xpSARCacheIndex, XP_FILE_WRITE);
list_ptr = SAR_cache_database_list;
@@ -905,7 +909,7 @@ cache_SaveSARCacheInfo(void)
* New Cache version to allow for different files, and cache lists
*/
PRIVATE void
cache_ReadCacheInfo(XP_File fp, XP_List **list_ptr, int type)
cache_ReadCacheInfo(XP_File fp, PLList **list_ptr, int type)
{
ExtCacheDBInfo *new_db_info;
char buf[BUF_SIZE];
@@ -913,7 +917,7 @@ cache_ReadCacheInfo(XP_File fp, XP_List **list_ptr, int type)
if(!*list_ptr)
{
*list_ptr = XP_ListNew();
*list_ptr = PL_ListNew();
if(!*list_ptr)
return;
}
@@ -943,7 +947,7 @@ cache_ReadCacheInfo(XP_File fp, XP_List **list_ptr, int type)
if(!new_db_info)
return;
memset(new_db_info, 0, sizeof(ExtCacheDBInfo));
PL_memset(new_db_info, 0, sizeof(ExtCacheDBInfo));
StrAllocCopy(new_db_info->filename, buf);
@@ -952,7 +956,7 @@ cache_ReadCacheInfo(XP_File fp, XP_List **list_ptr, int type)
else
StrAllocCopy(new_db_info->path, name);
XP_ListAddObject(*list_ptr, new_db_info);
PL_ListAdd(*list_ptr, new_db_info);
}
XP_FileClose(fp);
@@ -995,7 +999,7 @@ PUBLIC int CACHE_EmptyCache(ExtCacheDBInfo *db)
TRACEMSG(("Removing file: %s due to disk"
" cache remove",filename));
XP_FileRemove(filename, xpSARCache); /* *X* What will happen if I pass this */
PR_Free(filename); /* a relative path */
FREE(filename); /* a relative path */
}
}
while(0 == (*db->database->seq)(db->database, &key, &data, R_NEXT));
@@ -1018,7 +1022,6 @@ PUBLIC int CACHE_RemoveCache(ExtCacheDBInfo *db)
{
int ret;
ExtCacheDBInfo *db_info;
XP_List *tmpList;
/* See if the database is open */
if (!db->database) return 0;
@@ -1027,14 +1030,15 @@ PUBLIC int CACHE_RemoveCache(ExtCacheDBInfo *db)
CACHE_CloseCache(db);
/* Find the database object in my internal list */
tmpList = SAR_cache_database_list;
while(NULL != (db_info = (ExtCacheDBInfo *)XP_ListNextObject(tmpList)))
PL_ListEnumReset(SAR_cache_database_list);
while(NULL != (db_info = (ExtCacheDBInfo *)
PL_ListEnumNext(SAR_cache_database_list)))
{
if(!PL_strcmp(db->path, db_info->path) && !PL_strcmp(db->filename, db_info->filename)) break;
}
/* Remove the cache from SAR_cache_database_list */
if ( XP_ListRemoveObject(SAR_cache_database_list, db_info) )
if ( PL_ListRemove(SAR_cache_database_list, db_info) )
ret = XP_FileRemove(db->filename, xpSARCache);
/* This was released in the call to CACHE_CloseCache above */
@@ -1047,7 +1051,7 @@ PUBLIC int CACHE_RemoveCache(ExtCacheDBInfo *db)
return ret;
}
MODULE_PRIVATE char *
MODULE_PRIVATE int
CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
{
DBT *key;
@@ -1057,7 +1061,6 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
int status;
XP_StatStruct stat_entry;
char *filename=0;
XP_List *list_ptr;
/* larubbio */
XP_FileType fileType;
@@ -1086,8 +1089,9 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
/* Search the external caches first */
if (AtLeastOneOpenCache)
{
list_ptr = ext_cache_database_list;
while((db_ptr = (ExtCacheDBInfo *)XP_ListNextObject(list_ptr)) != NULL)
PL_ListEnumReset(ext_cache_database_list);
while((db_ptr = (ExtCacheDBInfo *)
PL_ListEnumNext(ext_cache_database_list)) != NULL)
{
if(db_ptr->database)
{
@@ -1105,8 +1109,9 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
/* Search the SAR caches next */
if (SARCacheIndexOpen && status != 0)
{
list_ptr = SAR_cache_database_list;
while((db_ptr = (ExtCacheDBInfo *)XP_ListNextObject(list_ptr)) != NULL)
PL_ListEnumReset(SAR_cache_database_list);
while((db_ptr = (ExtCacheDBInfo *)
PL_ListEnumNext(SAR_cache_database_list)) != NULL)
{
if(db_ptr->database)
{
@@ -1182,7 +1187,7 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
net_FreeCacheDBTdata(key);
PR_Free(filename);
FREE(filename);
return(0);
@@ -1237,7 +1242,7 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
/* object has expired and cant use IMS. Don't return it */
net_FreeCacheDBTdata(key);
PR_Free(filename);
FREE(filename);
return(0);
}
@@ -1274,7 +1279,7 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
URL_s->ext_cache_file = TRUE;
return PL_strdup(FILE_CACHE_PROTOCOL);
return(FILE_CACHE_TYPE_URL);
}
@@ -1283,12 +1288,12 @@ CACHE_FindURLInCache(URL_Struct *URL_s, MWContext *ctxt)
MODULE_PRIVATE void cache_freeExtCacheDBInfoObj (ExtCacheDBInfo * cache_obj)
{
PR_FREEIF(cache_obj->database);
PR_FREEIF(cache_obj->filename);
PR_FREEIF(cache_obj->path);
PR_FREEIF(cache_obj->name);
FREEIF(cache_obj->database);
FREEIF(cache_obj->filename);
FREEIF(cache_obj->path);
FREEIF(cache_obj->name);
PR_Free(cache_obj);
FREE(cache_obj);
}
@@ -1377,7 +1382,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
ADD_STRING_SIZE(filename);
ADD_STRING_SIZE(path);
ADD_STRING_SIZE(name);
total_size += sizeof(XP_Bool);
total_size += sizeof(Bool);
total_size += sizeof(uint32);
total_size += sizeof(uint32);
total_size += sizeof(uint32);
@@ -1389,11 +1394,11 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
if(!new_obj)
{
PR_Free(rv);
FREE(rv);
return NULL;
}
memset(new_obj, 0, total_size * sizeof(char));
PL_memset(new_obj, 0, total_size * sizeof(char));
/* VERY VERY IMPORTANT. Whenever the
* format of the record structure changes
* you must verify that the byte positions
@@ -1406,7 +1411,7 @@ total_size += old_obj->string ? PL_strlen(old_obj->string)+1 : 0
COPY_INT32((void *)cur_ptr, &len); \
cur_ptr = cur_ptr + sizeof(int32); \
if(len) \
memcpy((void *)cur_ptr, old_obj->string, len); \
PL_memcpy((void *)cur_ptr, old_obj->string, len); \
cur_ptr += len; \
}
@@ -1470,7 +1475,7 @@ cache_DBDataToExtCacheDBInfoStruct(DBT * db_obj)
if(!rv)
return NULL;
memset(rv, 0, sizeof(ExtCacheDBInfo));
PL_memset(rv, 0, sizeof(ExtCacheDBInfo));
/* if any strings are larger than this then
* there was a serious database error
@@ -1499,7 +1504,7 @@ cache_DBDataToExtCacheDBInfoStruct(DBT * db_obj)
cache_freeExtCacheDBInfoObj(rv); \
return(NULL); \
} \
memcpy(rv->string, cur_ptr, len); \
PL_memcpy(rv->string, cur_ptr, len); \
cur_ptr += len; \
} \
}
@@ -1536,7 +1541,7 @@ cache_DBDataToExtCacheDBInfoStruct(DBT * db_obj)
if(len != db_obj->size)
{
TRACEMSG(("Size going in is not the same as size coming out"));
PR_Free(rv);
FREE(rv);
return(NULL);
}

View File

@@ -16,24 +16,25 @@
* Reserved.
*/
#ifndef HTTPAUTH_H
#define HTTPAUTH_H
#ifndef MKEXTCACHE_H
#define MKEXTCACHE_H
#ifndef MKGETURL_H
#include "mkgeturl.h"
#endif
/* removes all authorization structs from the auth list */
extern void
NET_RemoveAllAuthorizations(void);
/*
* Figure out better of two {WWW,Proxy}-Authenticate headers;
* SimpleMD5 is better than Basic. Uses the order of AuthType
* enum values.
/* lookup routine
*
* builds a key and looks for it in
* the database. Returns an access
* method and sets a filename in the
* URL struct if found
*/
extern PRBool
net_IsBetterAuth(char *new_auth, char *old_auth);
extern int NET_FindURLInExtCache(URL_Struct * URL_s, MWContext *ctxt);
#endif /* HTTPAUTH_H */
extern void
NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions);
extern void
CACHE_CloseAllOpenSARCache();
extern void
CACHE_OpenAllSARCache();
#endif /* MKEXTCACHE_H */

View File

@@ -22,35 +22,29 @@
* Designed and implemented by Lou Montulli '94
*/
#include "xp.h"
#include "mkfe.h"
#include "mkutils.h"
#include "plstr.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "plstr2.h"
#include "mkgeturl.h"
#include "mkstream.h"
#include "mkformat.h"
#include "mkparse.h"
#include "mkftp.h"
#include "mkfsort.h"
#include "mkfile.h"
#include "merrors.h"
#include "glhist.h"
#include "il_strm.h" /* Image Lib stream converters. */
#ifndef MODULAR_NETLIB
#if !defined(B1M)
#include "libimg.h" /* Image Lib public API. */
#else
#include "il_types.h"
IL_EXTERN(int)
IL_Type(const char *buf, int32 len);
#endif
#endif /* B1M */
#if defined(XP_WIN) || defined(XP_OS2)
#include "errno.h"
#endif
#include "xp_error.h"
#include "prefapi.h"
/* for XP_GetString() */
@@ -232,7 +226,7 @@ net_check_file_type (ActiveEntry * cur_entry)
{
char * msg;
msg = PR_smprintf("Overwrite file %s?", CD_FILENAME);
if(NET_Confirm(CE_WINDOW_ID, msg))
if(FE_Confirm(CE_WINDOW_ID, msg))
CD_NEXT_STATE = NET_PUT_FILE;
else
CD_NEXT_STATE = NET_FILE_DONE;
@@ -524,8 +518,8 @@ net_open_file (ActiveEntry * cur_entry)
CD_NEXT_STATE = NET_SETUP_FILE_STREAM;
if (!CE_URL_S->load_background) {
NET_GraphProgressInit(CE_WINDOW_ID, CE_URL_S, CE_URL_S->content_length);
CD_DESTROY_GRAPH_PROGRESS = TRUE; /* we will need to destroy it */
FE_GraphProgressInit(CE_WINDOW_ID, CE_URL_S, CE_URL_S->content_length);
CD_DESTROY_GRAPH_PROGRESS = TRUE; /* we will need to destroy it */
}
CD_ORIGINAL_CONTENT_LENGTH = CE_URL_S->content_length;
@@ -719,7 +713,7 @@ net_setup_file_stream (ActiveEntry * cur_entry)
CD_RANGE_LENGTH = (high-low)+1;
if(cp)
memcpy(CD_BYTERANGE_STRING, cp+1, PL_strlen(cp+1)+1);
PL_memcpy(CD_BYTERANGE_STRING, cp+1, PL_strlen(cp+1)+1);
else
CD_BYTERANGE_STRING = 0;
}
@@ -807,7 +801,7 @@ net_open_directory (ActiveEntry * cur_entry)
CD_IS_DIR = TRUE;
NET_GraphProgressInit(CE_WINDOW_ID, CE_URL_S, CE_URL_S->content_length);
FE_GraphProgressInit(CE_WINDOW_ID, CE_URL_S, CE_URL_S->content_length);
CD_DESTROY_GRAPH_PROGRESS = TRUE; /* we will need to destroy it */
CD_ORIGINAL_CONTENT_LENGTH = CE_URL_S->content_length;
NET_Progress(CE_WINDOW_ID, XP_GetString(XP_PROGRESS_READDIR));
@@ -888,7 +882,7 @@ net_read_file_chunk(ActiveEntry * cur_entry)
CE_STATUS = PUTB(NET_Socket_Buffer, count);
if (!CE_URL_S->load_background)
NET_GraphProgress(CE_WINDOW_ID, CE_URL_S, CE_BYTES_RECEIVED, count,
FE_GraphProgress(CE_WINDOW_ID, CE_URL_S, CE_BYTES_RECEIVED, count,
CE_URL_S->content_length);
CD_PAUSE_FOR_READ = TRUE;
@@ -930,7 +924,7 @@ net_read_directory_chunk (ActiveEntry * cur_entry)
/* make a full path */
len = PL_strlen(CD_FILENAME) + PL_strlen(dir_entry->d_name) + 30;
PR_FREEIF(full_path);
FREEIF(full_path);
full_path = (char *)PR_Malloc(len*sizeof(char));
if(!full_path)
@@ -963,7 +957,7 @@ net_read_directory_chunk (ActiveEntry * cur_entry)
}
}
PR_FREEIF(full_path);
FREEIF(full_path);
NET_Progress(CE_WINDOW_ID, XP_GetString(XP_PROGRESS_DIRDONE));
@@ -986,6 +980,70 @@ net_BeginPrintDirectory(ActiveEntry * ce)
return(ce->status);
}
#define PD_PUTS(s) \
do { \
if(status > -1) \
status = (*stream->put_block)(stream, s, PL_strlen(s)); \
} while(0)
PUBLIC int
NET_PrintDirectory(SortStruct **sort_base, NET_StreamClass * stream, char * path, URL_Struct *URL_s)
{
NET_FileEntryInfo * file_entry;
char out_buf[3096];
char *esc_path = NET_Escape(path, URL_PATH);
int i;
int status=0;
NET_DoFileSort(*sort_base);
/* emit 300: URL CRLF */
PL_strcpy(out_buf, "300: ");
PD_PUTS(out_buf);
PR_snprintf(out_buf, sizeof(out_buf), URL_s->address);
PD_PUTS(out_buf);
PL_strcpy(out_buf, CRLF);
PD_PUTS(out_buf);
/* emit 200: Filename Size Content-Type File-type Last-Modified */
PL_strcpy(out_buf, "200: Filename Content-Length Content-Type File-type Last-Modified"CRLF);
PD_PUTS(out_buf);
for(i=0; status > -1 && (file_entry = (NET_FileEntryInfo *)
NET_SortRetrieveNumber(*sort_base, i)) != 0;
i++)
{
char * esc_time = NET_Escape(ctime(&file_entry->date), URL_XALPHAS);
PL_strtok(file_entry->filename, "/");
PR_snprintf(out_buf, sizeof(out_buf), "201: %s %ld %s %s %s"CRLF,
file_entry->filename,
file_entry->size,
file_entry->special_type == NET_DIRECTORY ? "application/http-index-format" :
file_entry->cinfo ? file_entry->cinfo->type : TEXT_PLAIN,
file_entry->special_type == NET_DIRECTORY ? "Directory" : "File",
esc_time);
FREE(esc_time);
PD_PUTS(out_buf);
NET_FreeEntryInfoStruct(file_entry);
}
NET_SortFree(*sort_base);
*sort_base = 0;
FREEIF(esc_path);
if(status < 0)
return(status);
return(MK_DATA_LOADED);
}
/* if the url is a local file this function returns
* the portion of the url that represents the
* file path as a malloc'd string. If the
@@ -1024,7 +1082,7 @@ net_return_local_file_part_from_url(char *address)
if(!host || *host == '\0' || !PL_strcasecmp(host, "LOCALHOST"))
{
PR_FREEIF(host);
FREEIF(host);
return(NET_UnEscape(NET_ParseURL(address, GET_PATH_PART)));
}
@@ -1040,10 +1098,10 @@ net_return_local_file_part_from_url(char *address)
&& isalpha(host[0])
&& (host[1] == '|' || host[1] == ':'))
{
PR_Free(host);
FREE(host);
/* skip "file:/" */
rv = PL_strdup(new_address+6);
PR_Free(new_address);
FREE(new_address);
return(rv);
}
@@ -1056,20 +1114,39 @@ net_return_local_file_part_from_url(char *address)
*/
if(-1 != XP_Stat(address+5, &stat_entry, xpURL))
{
PR_Free(host);
FREE(host);
/* skip "file:" */
rv = PL_strdup(address+5);
PR_Free(new_address);
FREE(new_address);
return(rv);
}
}
#endif /* XP_WIN */
PR_Free(host);
FREE(host);
return(NULL);
}
/* returns TRUE if the url is a local file
* url
*/
PUBLIC PRBool
NET_IsLocalFileURL(char *address)
{
char * cp = net_return_local_file_part_from_url(address);
if(cp)
{
FREE(cp);
return(PR_TRUE);
}
else
{
return(PR_FALSE);
}
}
/* load local files and
* display directories
*
@@ -1084,15 +1161,13 @@ net_FileLoad (ActiveEntry * cur_entry)
char * cp;
FILEConData * connection_data;
#ifndef NSPR20_DISABLED
NET_SetCallNetlibAllTheTime(CE_WINDOW_ID, "mkfile");
#endif /* NSPR20_DISABLED */
/* make space for the connection data */
cur_entry->con_data = PR_NEW(FILEConData);
cur_entry->con_data = XP_NEW(FILEConData);
if(!cur_entry->con_data)
{
NET_Alert(CE_WINDOW_ID, XP_GetString(XP_ALERT_OUTMEMORY));
FE_Alert(CE_WINDOW_ID, XP_GetString(XP_ALERT_OUTMEMORY));
CE_URL_S->error_msg = NET_ExplainErrorDetails(MK_OUT_OF_MEMORY);
CE_STATUS = MK_OUT_OF_MEMORY;
return(CE_STATUS);
@@ -1100,7 +1175,7 @@ net_FileLoad (ActiveEntry * cur_entry)
/* zero out the structure
*/
memset(cur_entry->con_data, 0, sizeof(FILEConData));
PL_memset(cur_entry->con_data, 0, sizeof(FILEConData));
/* set this to make the CD_ macros work */
connection_data = cur_entry->con_data;
@@ -1111,7 +1186,7 @@ net_FileLoad (ActiveEntry * cur_entry)
if(!(path = net_return_local_file_part_from_url(CE_URL_S->address)))
{
PR_Free(cur_entry->con_data);
FREE(cur_entry->con_data);
cur_entry->con_data = 0;
return(MK_USE_FTP_INSTEAD); /* use ftp */
}
@@ -1156,13 +1231,13 @@ net_FileLoad (ActiveEntry * cur_entry)
if (CD_IS_CACHE_FILE && (cp = PL_strcasestr(CE_URL_S->address, URL_BYTERANGE_TOKEN)) != NULL)
{
StrAllocCopy(CD_BYTERANGE_STRING, cp+PL_strlen(URL_BYTERANGE_TOKEN));
strtok(CD_BYTERANGE_STRING, ";");
PL_strtok(CD_BYTERANGE_STRING, ";");
}
else if ((cp = PL_strcasestr(CD_FILENAME, URL_BYTERANGE_TOKEN)) != NULL)
{
*cp = '\0';
/* remove any other weird ; stuff */
strtok(cp+1, ";");
PL_strtok(cp+1, ";");
StrAllocCopy(CD_BYTERANGE_STRING, cp+PL_strlen(URL_BYTERANGE_TOKEN));
}
#endif /* URL_BYTERANGE_METHOD */
@@ -1295,17 +1370,15 @@ net_ProcessFile (ActiveEntry * cur_entry)
}
if(CD_DESTROY_GRAPH_PROGRESS)
NET_GraphProgressDestroy(CE_WINDOW_ID,
FE_GraphProgressDestroy(CE_WINDOW_ID,
CE_URL_S,
CD_ORIGINAL_CONTENT_LENGTH,
CE_BYTES_RECEIVED);
PR_Free(CD_FILENAME);
PR_FREEIF(CD_STREAM);
PR_Free(cur_entry->con_data);
FREE(CD_FILENAME);
FREEIF(CD_STREAM);
FREE(cur_entry->con_data);
#ifndef NSPR20_DISABLED
NET_ClearCallNetlibAllTheTime(CE_WINDOW_ID, "mkfile");
#endif /* NSPR20_DISABLED */
return(-1); /* done */
}
@@ -1356,12 +1429,6 @@ PRIVATE int net_IdxConvWriteReady(NET_StreamClass *stream)
return(MAX_WRITE_READY);
}
#define PD_PUTS(s) \
do { \
if(status > -1) \
status = (*stream->put_block)(stream, s, PL_strlen(s)); \
} while(0)
/* take the parsed data and generate HTML */
PRIVATE void net_IdxConvComplete(NET_StreamClass *inputStream)
{
@@ -1477,8 +1544,8 @@ PRIVATE void net_IdxConvComplete(NET_StreamClass *inputStream)
PD_PUTS(out_buf);
}
PL_strncpyz(out_buf,
XP_GetString(XP_UPTO_HIGHER_LEVEL_DIRECTORY),
sizeof(out_buf));
XP_GetString(XP_UPTO_HIGHER_LEVEL_DIRECTORY),
sizeof(out_buf));
PD_PUTS(out_buf);
}
@@ -1556,7 +1623,7 @@ PRIVATE void net_IdxConvComplete(NET_StreamClass *inputStream)
if(len > max_size_for_this_name)
{
PL_strcpy (out_buf, " ");
memcpy (out_buf + 1, name, max_name_length - 3);
PL_memcpy (out_buf + 1, name, max_name_length - 3);
PL_strcpy (out_buf + 1 + max_name_length - 3, "...</A>");
}
else
@@ -1630,7 +1697,7 @@ PRIVATE void net_IdxConvComplete(NET_StreamClass *inputStream)
cleanup:
NET_HTTPIndexParserFree(obj->parse_data);
PR_FREEIF(path);
FREEIF(path);
}
PRIVATE void net_IdxConvAbort(NET_StreamClass *stream, int32 status)
@@ -1650,25 +1717,25 @@ NET_HTTPIndexFormatToHTMLConverter(int format_out,
TRACEMSG(("Setting up display stream. Have URL: %s\n", URL_s->address));
stream = PR_NEW(NET_StreamClass);
stream = XP_NEW(NET_StreamClass);
if(stream == NULL)
return(NULL);
obj = PR_NEW(index_format_conv_data_object);
obj = XP_NEW(index_format_conv_data_object);
if (obj == NULL)
{
PR_Free(stream);
FREE(stream);
return(NULL);
}
memset(obj, 0, sizeof(index_format_conv_data_object));
PL_memset(obj, 0, sizeof(index_format_conv_data_object));
obj->parse_data = NET_HTTPIndexParserInit();
if(!obj->parse_data)
{
PR_Free(stream);
PR_Free(obj);
FREE(stream);
FREE(obj);
}
obj->context = window_id;
@@ -1705,7 +1772,7 @@ net_CloneWysiwygLocalFile(MWContext *window_id, URL_Struct *URL_s,
if (!filename)
return NULL;
fromfp = XP_FileOpen(filename, xpURL, XP_FILE_READ_BIN);
PR_Free(filename);
FREE(filename);
if (!fromfp)
return NULL;
stream = LM_WysiwygCacheConverter(window_id, URL_s, wysiwyg_url,
@@ -1736,13 +1803,13 @@ net_CloneWysiwygLocalFile(MWContext *window_id, URL_Struct *URL_s,
break;
nbytes -= len;
}
PR_Free(buf);
FREE(buf);
XP_FileClose(fromfp);
if (nbytes != 0)
{
/* NB: Our caller must clear top_state->mocha_write_stream. */
stream->abort(stream, MK_UNABLE_TO_CONVERT);
PR_Free(stream);
XP_DELETE(stream);
return 0;
}
return stream;
@@ -1758,6 +1825,6 @@ NET_InitFileProtocol(void)
file_proto_impl.interrupt = net_InterruptFile;
file_proto_impl.cleanup = net_CleanupFile;
NET_RegisterProtocolImplementation(&file_proto_impl, FILE_PROTOCOL);
NET_RegisterProtocolImplementation(&file_proto_impl, FILE_CACHE_PROTOCOL);
NET_RegisterProtocolImplementation(&file_proto_impl, FILE_TYPE_URL);
NET_RegisterProtocolImplementation(&file_proto_impl, FILE_CACHE_TYPE_URL);
}

View File

@@ -16,14 +16,19 @@
* Reserved.
*/
#ifndef FILEURL_H
#define FILEURL_H
#ifndef MKFILE_H
#define MKFILE_H
#include "mkfsort.h"
extern void NET_InitFileProtocol(void);
extern int
NET_PrintDirectory(SortStruct **sort_base, NET_StreamClass * stream, char * path, URL_Struct *URL_s);
extern NET_StreamClass *
net_CloneWysiwygLocalFile(MWContext *window_id, URL_Struct *URL_s,
uint32 nbytes, const char * wysiwyg_url,
const char * base_href);
#endif /* FILEURL_H */
#endif /* MKFILE_H */

View File

@@ -22,11 +22,11 @@
* then hacked up by Lou.
*/
#include "plstr.h"
#include "prmem.h"
#include "mkutils.h"
#include "mkformat.h"
#include "netutils.h"
#include "plstr.h"
#include "plstr2.h"
#include "pllist.h"
static char *net_default_types [] = {
# include "mktypes.h"
@@ -42,7 +42,7 @@ PRIVATE int net_cinfo_merge(char *fn, Bool is_local);
/* ----------------------------- Static data ------------------------------ */
/* The master database of content info (linked list) */
PRIVATE XP_List * NET_ciMasterList=0;
PRIVATE PLList * NET_ciMasterList=0;
/*
* cinfo.c: Content Information for a file, i.e. its type, etc.
@@ -75,7 +75,7 @@ NET_InitFileFormatTypes(char * personal_file, char *global_file)
#else /* !XP_UNIX */
NET_CleanupFileFormat();
#endif /* !XP_UNIX */
NET_ciMasterList = XP_ListNew();
NET_ciMasterList = PL_ListNew();
TRACEMSG((" Setting up File Format code"));
@@ -143,12 +143,12 @@ PRIVATE void
_cinfo_free(NET_cinfo *ci)
{
PR_FREEIF(ci->type);
PR_FREEIF(ci->encoding);
PR_FREEIF(ci->language);
PR_FREEIF(ci->desc);
PR_FREEIF(ci->icon);
PR_FREEIF(ci->alt_text);
FREEIF(ci->type);
FREEIF(ci->encoding);
FREEIF(ci->language);
FREEIF(ci->desc);
FREEIF(ci->icon);
FREEIF(ci->alt_text);
}
@@ -197,7 +197,7 @@ NET_cdataFree(NET_cdataStruct *cd)
PUBLIC void
NET_cdataAdd(NET_cdataStruct *cd)
{
XP_ListAddObject(NET_ciMasterList, cd);
PL_ListAdd(NET_ciMasterList, cd);
}
/* ---------------------------- NET_cdataRemove ---------------------------- */
@@ -205,7 +205,7 @@ NET_cdataAdd(NET_cdataStruct *cd)
PUBLIC void
NET_cdataRemove(NET_cdataStruct *cd)
{
XP_ListRemoveObject(NET_ciMasterList, cd);
PL_ListRemove(NET_ciMasterList, cd);
NET_cdataFree(cd);
}
@@ -215,14 +215,15 @@ NET_cdataExist(NET_cdataStruct *old_cd )
{
NET_cdataStruct *found_cd = NULL;
NET_cdataStruct *cd = NULL;
XP_List *infoList;
PLList *infoList;
infoList = cinfo_MasterListPointer();
if ( !infoList )
return found_cd;
while ((cd= (NET_cdataStruct *)XP_ListNextObject(infoList)) != NULL)
PL_ListEnumReset(infoList);
while ((cd= (NET_cdataStruct *)PL_ListEnumNext(infoList)) != NULL)
{
if ( old_cd->ci.type &&
cd->ci.type &&
@@ -330,12 +331,12 @@ net_cinfo_merge(char *fn, Bool is_local)
static NET_cinfo *
net_cinfo_find_type_or_encoding (char *uri, XP_Bool type_p)
net_cinfo_find_type_or_encoding (char *uri, PRBool type_p)
{
char *start = uri;
char *end, *c;
NET_cinfo *result = &default_cinfo_type;
XP_Bool saw_encoding = FALSE;
PRBool saw_encoding = FALSE;
c = PL_strrchr (uri, '/');
if (c) start = c;
@@ -354,12 +355,13 @@ AGAIN:
if (c >= uri && *c == '.')
{
int32 i;
XP_List *list_ptr = NET_ciMasterList;
PLList *list_ptr = NET_ciMasterList;
NET_cdataStruct *cdata;
uint32 ext_len;
start = c + 1;
ext_len = end - start;
while ((cdata = (NET_cdataStruct *) XP_ListNextObject (list_ptr)) != NULL)
PL_ListEnumReset(list_ptr);
while ((cdata = (NET_cdataStruct *) PL_ListEnumNext (list_ptr)) != NULL)
for (i = cdata->num_exts - 1; i >= 0; i--)
if (PL_strlen (cdata->exts[i]) == ext_len &&
!PL_strncasecmp (start, cdata->exts [i], ext_len))
@@ -444,12 +446,12 @@ void
print_mime_types()
{
int32 i;
XP_List *list_ptr = NET_ciMasterList;
NET_cdataStruct *cdata;
PL_ListEnumReset(NET_ciMasterList);
fprintf(stderr, "\n---------\n");
while ((cdata = (NET_cdataStruct *) XP_ListNextObject (list_ptr)))
while ((cdata = (NET_cdataStruct *) PL_ListEnumNext(NET_ciMasterList)))
{
fprintf (stderr, "%s%s%s (%s; %s):",
(cdata->ci.type ? cdata->ci.type : ""),
@@ -474,13 +476,14 @@ PRIVATE NET_cdataStruct *
NET_cinfo_find_cdata_by_type(char *mime_type)
{
NET_cdataStruct *cdata;
XP_List * list_ptr;
PLList * list_ptr;
if(!mime_type)
return(NULL);
list_ptr = NET_ciMasterList;
while((cdata = (NET_cdataStruct *) XP_ListNextObject(list_ptr)) != NULL)
PL_ListEnumReset(list_ptr);
while((cdata = (NET_cdataStruct *) PL_ListEnumNext(list_ptr)) != NULL)
{
if(cdata->ci.type && !PL_strcasecmp(mime_type, cdata->ci.type))
return(cdata);
@@ -572,19 +575,19 @@ _cinfo_parse_mimetypes(XP_File fp, char *t, Bool is_local)
StrAllocCopy(src_string, t);
}
while((*t) && (NET_IS_SPACE(*t)))
while((*t) && (XP_IS_SPACE(*t)))
++t;
if(*t && (*t != '#')) {
ext = t;
while((*ext) && (!NET_IS_SPACE(*ext))) ++ext;
while((*ext) && (!XP_IS_SPACE(*ext))) ++ext;
if((*ext))
*ext++ = '\0';
cd = NULL;
while((*ext)) {
while((*ext) && (NET_IS_SPACE(*ext))) ++ext;
while((*ext) && (XP_IS_SPACE(*ext))) ++ext;
if((*ext)) {
if(!cd) {
@@ -598,7 +601,7 @@ _cinfo_parse_mimetypes(XP_File fp, char *t, Bool is_local)
cd->is_modified = FALSE; /* default is not modified in any way */
end = ext+1;
while((*end) && (!NET_IS_SPACE(*end))) ++end;
while((*end) && (!XP_IS_SPACE(*end))) ++end;
if(*end)
*end++ = '\0';
net_cdata_new_ext(ext, cd);
@@ -607,10 +610,10 @@ _cinfo_parse_mimetypes(XP_File fp, char *t, Bool is_local)
}
if(cd) {
NET_cdataStruct *old_cd = NULL;
PR_FREEIF(cd->ci.type);
FREEIF(cd->ci.type);
cd->ci.type = 0;
StrAllocCopy(cd->ci.type, t);
PR_FREEIF(cd->src_string);
FREEIF(cd->src_string);
StrAllocCopy(cd->src_string, src_string);
if ( (old_cd = NET_cdataExist(cd)) != NULL)
@@ -661,7 +664,7 @@ cinfo_parse_mcc_line(char *line, Bool is_external, Bool is_local,
if((*t) && (*t != '#')) {
while(1) {
while(*t && NET_IS_SPACE(*t)) ++t;
while(*t && XP_IS_SPACE(*t)) ++t;
if(!(*t))
break;
name = t;
@@ -673,11 +676,11 @@ cinfo_parse_mcc_line(char *line, Bool is_external, Bool is_local,
NET_cdataFree(cd);
return (-1);
}
for(u = t - 1; NET_IS_SPACE(*u); --u)
for(u = t - 1; XP_IS_SPACE(*u); --u)
;
*(u+1) = '\0'; /* terminate name */
++t;
while(*t && (*t != '\"') && (NET_IS_SPACE(*t))) ++t;
while(*t && (*t != '\"') && (XP_IS_SPACE(*t))) ++t;
if(!(*t)) {
TRACEMSG(("line %d: empty value", ln));
if(cd)
@@ -696,7 +699,7 @@ cinfo_parse_mcc_line(char *line, Bool is_external, Bool is_local,
}
else {
value = t;
while(*t && (!NET_IS_SPACE(*t))) ++t;
while(*t && (!XP_IS_SPACE(*t))) ++t;
/* null t is okay */
}
if(*t) *t++ = '\0';
@@ -708,38 +711,38 @@ cinfo_parse_mcc_line(char *line, Bool is_external, Bool is_local,
cd->is_external = is_external;
cd->is_modified = FALSE; /* default is "not modified yet!*/
cd->is_local = is_local;
PR_FREEIF(cd->src_string);
FREEIF(cd->src_string);
cd->src_string = *src_string;
*src_string = 0;
}
if(!PL_strcasecmp(name, "type")) {
PR_FREEIF(cd->ci.type);
FREEIF(cd->ci.type);
cd->ci.type = 0;
StrAllocCopy(cd->ci.type, value);
} else if(!PL_strcasecmp(name, "enc")) {
PR_FREEIF(cd->ci.encoding);
FREEIF(cd->ci.encoding);
cd->ci.encoding = 0;
StrAllocCopy(cd->ci.encoding, value);
} else if(!PL_strcasecmp(name, "lang")) {
PR_FREEIF(cd->ci.language);
FREEIF(cd->ci.language);
cd->ci.language = 0;
StrAllocCopy(cd->ci.language, value);
} else if(!PL_strcasecmp(name, "desc")) {
PR_FREEIF(cd->ci.desc);
FREEIF(cd->ci.desc);
cd->ci.desc = 0;
StrAllocCopy(cd->ci.desc, value);
} else if(!PL_strcasecmp(name, "alt")) {
PR_FREEIF(cd->ci.alt_text);
FREEIF(cd->ci.alt_text);
cd->ci.alt_text = 0;
StrAllocCopy(cd->ci.alt_text, value);
} else if(!PL_strcasecmp(name, "icon")) {
PR_FREEIF(cd->ci.icon);
FREEIF(cd->ci.icon);
cd->ci.icon = 0;
StrAllocCopy(cd->ci.icon, value);
@@ -870,7 +873,7 @@ _cinfo_parse_mcc(XP_File fp, char *line, Bool is_local)
/* return the master cdata List pointer
*/
PUBLIC XP_List *
PUBLIC PLList *
cinfo_MasterListPointer()
{
return(NET_ciMasterList);
@@ -883,7 +886,7 @@ cinfo_MasterListPointer()
PUBLIC void
NET_cdataCommit(char * mimeType, char * cdataString)
{
XP_List * extensionList;
PLList * extensionList;
NET_cdataStruct * matchInfo = NULL;
int listSize;
int i;
@@ -891,7 +894,7 @@ NET_cdataCommit(char * mimeType, char * cdataString)
extensionList = cinfo_MasterListPointer();
if (!extensionList)
{
NET_ciMasterList = XP_ListNew();
NET_ciMasterList = PL_ListNew();
extensionList = cinfo_MasterListPointer(); /* Lou help me out here,
create the list and
matchInfo */
@@ -899,11 +902,11 @@ NET_cdataCommit(char * mimeType, char * cdataString)
if (!extensionList)
return;
listSize = XP_ListCount(extensionList);
listSize = PL_ListCount(extensionList);
for (i = 1; i<=listSize; i++)
{
NET_cdataStruct * cinfo =
(NET_cdataStruct *)XP_ListGetObjectNum(extensionList, i);
(NET_cdataStruct *)PL_ListEntryAt(extensionList, i);
if (cinfo &&
cinfo->ci.type &&
(PL_strcasecmp(mimeType, cinfo->ci.type) == 0))
@@ -927,7 +930,7 @@ NET_cdataCommit(char * mimeType, char * cdataString)
}
else
{
PR_FREEIF(matchInfo->ci.type);
FREEIF(matchInfo->ci.type);
matchInfo->ci.type = 0;
StrAllocCopy(matchInfo->ci.type, mimeType);
}
@@ -939,17 +942,17 @@ NET_cdataCommit(char * mimeType, char * cdataString)
char newExtension[30]; /* extension limit is 30 chars */
char * citer;
int newExIndex = 0;
memset(newExtension, 0, sizeof(newExtension));
XP_BZERO(newExtension, sizeof(newExtension));
citer = cdataString;
newExtension[0] = 0;
matchInfo->num_exts = 0;
matchInfo->exts = (char**)PR_Malloc(10);
memset(newExtension, 0, 30);
if (matchInfo->exts == NULL)
return;
while (*citer != 0) /* Parse the string. Skip all non-c*/
{
if (isalnum(*citer) && (newExIndex < 29)) /* NET_IS_ALPHA(*citer) */
if (isalnum(*citer) && (newExIndex < 29)) /* XP_IS_ALPHA(*citer) */
newExtension[newExIndex++] = *citer;
else if (PL_strlen(newExtension) > 0)
{
@@ -982,12 +985,13 @@ NET_cdataCommit(char * mimeType, char * cdataString)
}
PUBLIC XP_Bool
NET_IsOldMimeTypes (XP_List *masterList)
PUBLIC PRBool
NET_IsOldMimeTypes (PLList *masterList)
{
NET_cdataStruct *cd;
while((cd = XP_ListNextObject(masterList)) != NULL)
PL_ListEnumReset(masterList);
while((cd = PL_ListEnumNext(masterList)) != NULL)
{
if ( cd->is_local && !cd->is_external )
{ /* This means that this is a old mime types */
@@ -1004,7 +1008,7 @@ net_Real_CleanupFileFormat(char *filename, Bool file_not_open)
NET_cdataStruct * cdata;
XP_File fp = 0;
int len = 0;
XP_Bool failed = FALSE;
PRBool failed = FALSE;
char buffer[512];
int i;
@@ -1014,7 +1018,7 @@ net_Real_CleanupFileFormat(char *filename, Bool file_not_open)
/* Need to remove from the end so that the next time
around, the file will be loaded up into a list in
the consistent way */
while(!failed && ((cdata = (NET_cdataStruct *)XP_ListRemoveEndObject(NET_ciMasterList)) != NULL))
while(!failed && ((cdata = (NET_cdataStruct *)PL_ListRemoveLast(NET_ciMasterList)) != NULL))
{
if(file_not_open &&
@@ -1123,7 +1127,7 @@ Do not delete the above line. It is used to identify the file type.\n#\n");
NET_cdataFree(cdata);
}
XP_ListDestroy(NET_ciMasterList);
PL_ListDestroy(NET_ciMasterList);
NET_ciMasterList = 0;
if(!file_not_open && fp)
@@ -1140,9 +1144,9 @@ NET_CleanupFileFormat(char *filename)
NET_cdataStruct *cdata;
XP_File fp = 0;
int len = 0;
XP_Bool failed = FALSE;
PRBool failed = FALSE;
Bool file_open = FALSE;
XP_List *modifiedList = NULL;
PLList *modifiedList = NULL;
char buffer[512];
Bool first = TRUE;
@@ -1158,8 +1162,8 @@ NET_CleanupFileFormat(char *filename)
if ( fp )
{
file_open = TRUE;
modifiedList = XP_ListNew();
while((cdata = (NET_cdataStruct *) XP_ListRemoveEndObject(NET_ciMasterList)))
modifiedList = PL_ListNew();
while((cdata = (NET_cdataStruct *) PL_ListRemoveLast(NET_ciMasterList)))
{
if ( cdata->is_local )
{
@@ -1194,13 +1198,13 @@ Do not delete the above line. It is used to identify the file type.\n#\n");
}
else if ( cdata->is_modified )
XP_ListAddObject(modifiedList, cdata);
PL_ListAdd(modifiedList, cdata);
else
NET_cdataFree(cdata);
}
while (!failed && (cdata = (NET_cdataStruct *) XP_ListRemoveEndObject(modifiedList)))
while (!failed && (cdata = (NET_cdataStruct *) PL_ListRemoveLast(modifiedList)))
{
if ( first && !NET_IsOldMimeTypes(NET_ciMasterList) )
@@ -1245,10 +1249,10 @@ Do not delete the above line. It is used to identify the file type.\n#\n");
}
else /* Clean up each node before deleting the root node */
{
while((cdata = (NET_cdataStruct *) XP_ListRemoveEndObject(NET_ciMasterList)))
while((cdata = (NET_cdataStruct *) PL_ListRemoveLast(NET_ciMasterList)))
NET_cdataFree(cdata);
}
XP_ListDestroy(NET_ciMasterList);
PL_ListDestroy(NET_ciMasterList);
NET_ciMasterList = 0;
/* This function should really return an error code and deal with any errors when they happen */
}

View File

@@ -26,6 +26,10 @@
#ifndef MKFORMAT_H
#define MKFORMAT_H
#ifndef MKSTREAM_H
#include "mkstream.h"
#endif /* MKSTREAM_H */
/* ------------------------------ Constants ------------------------------- */

View File

@@ -26,6 +26,8 @@
#include "mkutils.h"
#include "mkfsort.h"
#include "mkgeturl.h"
#include "plstr.h"
#include "plstr2.h"
#ifdef PROFILE
#pragma profile on
@@ -78,7 +80,7 @@ MODULE_PRIVATE NET_FileEntryInfo * NET_CreateFileEntryInfoStruct (void)
if(!new_entry)
return(NULL);
memset(new_entry, 0, sizeof(NET_FileEntryInfo));
PL_memset(new_entry, 0, sizeof(NET_FileEntryInfo));
new_entry->permissions = -1;
@@ -147,69 +149,6 @@ NET_DoFileSort(SortStruct * sort_list)
NET_DoSort(sort_list, NET_CompareFileEntryInfoStructs);
}
#define PD_PUTS(s) \
do { \
if(status > -1) \
status = (*stream->put_block)(stream, s, PL_strlen(s)); \
} while(0)
PUBLIC int
NET_PrintDirectory(SortStruct **sort_base, NET_StreamClass * stream, char * path, URL_Struct *URL_s)
{
NET_FileEntryInfo * file_entry;
char out_buf[3096];
char *esc_path = NET_Escape(path, URL_PATH);
int i;
int status=0;
NET_DoFileSort(*sort_base);
/* emit 300: URL CRLF */
PL_strcpy(out_buf, "300: ");
PD_PUTS(out_buf);
PR_snprintf(out_buf, sizeof(out_buf), URL_s->address);
PD_PUTS(out_buf);
PL_strcpy(out_buf, CRLF);
PD_PUTS(out_buf);
/* emit 200: Filename Size Content-Type File-type Last-Modified */
PL_strcpy(out_buf, "200: Filename Content-Length Content-Type File-type Last-Modified"CRLF);
PD_PUTS(out_buf);
for(i=0; status > -1 && (file_entry = (NET_FileEntryInfo *)
NET_SortRetrieveNumber(*sort_base, i)) != 0;
i++)
{
char * esc_time = NET_Escape(ctime(&file_entry->date), URL_XALPHAS);
strtok(file_entry->filename, "/");
PR_snprintf(out_buf, sizeof(out_buf), "201: %s %ld %s %s %s"CRLF,
file_entry->filename,
file_entry->size,
file_entry->special_type == NET_DIRECTORY ? "application/http-index-format" :
file_entry->cinfo ? file_entry->cinfo->type : TEXT_PLAIN,
file_entry->special_type == NET_DIRECTORY ? "Directory" : "File",
esc_time);
PR_Free(esc_time);
PD_PUTS(out_buf);
NET_FreeEntryInfoStruct(file_entry);
}
NET_SortFree(*sort_base);
*sort_base = 0;
PR_FREEIF(esc_path);
if(status < 0)
return(status);
return(MK_DATA_LOADED);
}
#ifdef PROFILE
#pragma profile off
#endif

View File

@@ -32,7 +32,4 @@ extern NET_FileEntryInfo * NET_CreateFileEntryInfoStruct (void);
extern int NET_CompareEntryInfoStructs (void *ent1, void *ent2);
extern void NET_DoFileSort (SortStruct * sort_list);
extern int
NET_PrintDirectory(SortStruct **sort_base, NET_StreamClass * stream, char * path, URL_Struct *URL_s);
#endif /* MKFSORT_H */

View File

@@ -19,7 +19,10 @@
#ifndef MKGETURL_H
#define MKGETURL_H
#include "mkutils.h"
#include "xp.h"
#include "mktcp.h"
#include "nslocks.h"
/* fix Mac warnings about missing prototypes */
@@ -28,13 +31,13 @@ NET_PrefChangedFunc(const char *pref, void *data);
/* Debugging routine prints an URL (and string "header")
*/
PR_BEGIN_EXTERN_C
XP_BEGIN_PROTOS
#ifdef DEBUG
extern void TraceURL (URL_Struct *url, char *header);
#else
#define TraceURL(U,M)
#endif /* DEBUG */
PR_END_EXTERN_C
XP_END_PROTOS
/* forward declared; see below */
typedef struct _NET_ProtoImpl NET_ProtoImpl;
@@ -49,7 +52,7 @@ typedef struct _ActiveEntry {
PRFileDesc *con_sock; /* socket waiting for connection */
Bool local_file; /* are we reading a local file */
Bool memory_file; /* are we reading from memory? */
char* protocol; /* protocol used for transfer */
int protocol; /* protocol used for transfer */
NET_ProtoImpl *proto_impl; /* handle to protocol implemenation */
void *con_data; /* data about the transfer connection and status */
/* routine to call when finished */
@@ -96,7 +99,7 @@ struct _NET_ProtoImpl {
*/
};
PR_BEGIN_EXTERN_C
XP_BEGIN_PROTOS
extern int NET_TotalNumberOfOpenConnections;
extern int NET_MaxNumberOfOpenConnections;
extern CacheUseEnum NET_CacheUseMethod;
@@ -116,15 +119,12 @@ extern void net_SetPACUrl(char *u);
/* return a proxy server host and port to the caller or NULL
*/
extern char * NET_FindProxyHostForUrl(const char *proto, char *urladdress);
extern char * NET_FindProxyHostForUrl(int urltype, char *urladdress);
/* registers a protocol impelementation for a particular url_type
* see NET_URL_Type() for types
*/
extern void NET_RegisterProtocolImplementation(NET_ProtoImpl *impl,
const char *for_proto);
extern void NET_RegisterProtocolImplementation(NET_ProtoImpl *impl, int for_url_type);
#define NET_ProtocolEquals(_a, _b) ((_a) && (PL_strcasecmp(_a, _b) == 0))
PR_END_EXTERN_C
XP_END_PROTOS
#endif /* not MKGetURL_H */

View File

@@ -19,14 +19,8 @@
* Designed and Implemented by Lou Montulli circa '94
*/
#include "xp.h"
#include "mkfe.h"
#include "plstr.h"
#include "prmem.h"
#include "netutils.h"
#include "mkselect.h"
#include "mktcp.h"
#include "prerror.h"
#include "mkutils.h"
#include "ssl.h"
/* Gopher types:
*/
@@ -54,10 +48,14 @@
#include "mkgeturl.h" /* URL Struct */
#include "mkstream.h"
#include "mkformat.h" /* for File Format stuff (cinfo) */
#include "gophurl.h" /* function prototypes */
#include "mkgopher.h" /* function prototypes */
#include "mktcp.h" /* connect, read, etc. */
#include "mkparse.h" /* NET_ParseURL() */
#include "remoturl.h" /* NET_RemoteHostLoad */
#include "mkremote.h" /* NET_RemoteHostLoad */
#include "xp_error.h"
/* for XP_GetString() */
#include "xpgetstr.h"
@@ -94,7 +92,7 @@ typedef struct _GopherConData {
} GopherConData;
#define PUTSTRING(s) (*connection_data->stream->put_block) \
(connection_data->stream, s, PL_strlen(s))
(connection_data->stream, s, XP_STRLEN(s))
#define PUTBLOCK(b, l) (*connection_data->stream->put_block) \
(connection_data->stream, b, l)
#define COMPLETE_STREAM (*connection_data->stream->complete) \
@@ -153,7 +151,7 @@ net_begin_gopher_menu(GopherConData * connection_data)
CD_NEXT_STATE = GOPHER_TRANSFER_MENU;
PL_strcpy(CD_OUTPUT_BUF, "<H1>Gopher Menu</H1>\n<PRE>");
XP_STRCPY(CD_OUTPUT_BUF, "<H1>Gopher Menu</H1>\n<PRE>");
return(PUTSTRING(CD_OUTPUT_BUF));
}
@@ -181,7 +179,7 @@ net_parse_menu (ActiveEntry * cur_entry)
CD_PAUSE_FOR_READ = FALSE;
if(CE_BYTES_RECEIVED < 4)
{
PL_strcpy(CD_OUTPUT_BUF, XP_GetString( XP_SERVER_RETURNED_NO_DATA ) );
XP_STRCPY(CD_OUTPUT_BUF, XP_GetString( XP_SERVER_RETURNED_NO_DATA ) );
PUTSTRING(CD_OUTPUT_BUF);
}
@@ -196,7 +194,7 @@ net_parse_menu (ActiveEntry * cur_entry)
}
else if(CE_STATUS < 0)
{
NET_ExplainErrorDetails(MK_TCP_READ_ERROR, PR_GetOSError());
NET_ExplainErrorDetails(MK_TCP_READ_ERROR, SOCKET_ERRNO);
/* return TCP error
*/
@@ -206,7 +204,7 @@ net_parse_menu (ActiveEntry * cur_entry)
if(CE_STATUS > 1)
{
CE_BYTES_RECEIVED += CE_STATUS;
NET_GraphProgress(CE_WINDOW_ID, CE_URL_S, CE_BYTES_RECEIVED, CE_STATUS, CE_URL_S->content_length);
FE_GraphProgress(CE_WINDOW_ID, CE_URL_S, CE_BYTES_RECEIVED, CE_STATUS, CE_URL_S->content_length);
}
gopher_type = *line;
@@ -223,14 +221,14 @@ net_parse_menu (ActiveEntry * cur_entry)
/* quit when just a dot is found on a line by itself
*/
if(!PL_strcmp(line,"."))
if(!XP_STRCMP(line,"."))
{
CD_NEXT_STATE = GOPHER_DONE;
CD_PAUSE_FOR_READ = FALSE;
if(CE_BYTES_RECEIVED < 4)
{
PL_strcpy(CD_OUTPUT_BUF, XP_GetString( XP_SERVER_RETURNED_NO_DATA ) );
XP_STRCPY(CD_OUTPUT_BUF, XP_GetString( XP_SERVER_RETURNED_NO_DATA ) );
PUTSTRING(CD_OUTPUT_BUF);
}
@@ -240,21 +238,21 @@ net_parse_menu (ActiveEntry * cur_entry)
if (gopher_type && *ptr)
{
name = ptr;
gopher_path = PL_strchr(name, '\t');
gopher_path = XP_STRCHR(name, '\t');
if (gopher_path)
{
*gopher_path++ = 0;
host = PL_strchr(gopher_path, '\t');
host = XP_STRCHR(gopher_path, '\t');
if (host)
{
*host++ = 0;
port = PL_strchr(host, '\t');
port = XP_STRCHR(host, '\t');
if (port)
{
char *tab;
port[0] = ':'; /* fake the port no */
tab = PL_strchr(port, '\t');
tab = XP_STRCHR(port, '\t');
if (tab)
*tab++ = '\0';
@@ -274,8 +272,8 @@ net_parse_menu (ActiveEntry * cur_entry)
if (gopher_type == GTYPE_TEXT)
{
int i=0;
while(NET_IS_SPACE(name[i])) i++;
if(!PL_strlen(name))
while(XP_IS_SPACE(name[i])) i++;
if(!XP_STRLEN(name))
gopher_type = GTYPE_INFO;
}
@@ -290,7 +288,7 @@ net_parse_menu (ActiveEntry * cur_entry)
else if(gopher_type == GTYPE_WWW)
{
/* points to URL */
PL_strcpy(CD_OUTPUT_BUF, "<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-text\">");
XP_STRCPY(CD_OUTPUT_BUF, "<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-text\">");
CE_STATUS = PUTSTRING(CD_OUTPUT_BUF);
if(CE_STATUS < 0)
@@ -312,7 +310,7 @@ net_parse_menu (ActiveEntry * cur_entry)
{
char * temp = NET_Escape(gopher_path, URL_XALPHAS);
PR_snprintf(CD_OUTPUT_BUF, CD_OUTPUT_BUFFER_SIZE, "<A HREF=\"telnet://%s@%s/\"><IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-telnet\"> %s</A>\n", temp, host, name);
PR_Free(temp);
FREE(temp);
}
else
{
@@ -332,7 +330,7 @@ net_parse_menu (ActiveEntry * cur_entry)
{
if(host && gopher_path)
{
if(!PL_strcmp(host, "error.host:70"))
if(!XP_STRCMP(host, "error.host:70"))
{
PR_snprintf(CD_OUTPUT_BUF, CD_OUTPUT_BUFFER_SIZE, "Error: %s", name);
@@ -349,68 +347,68 @@ net_parse_menu (ActiveEntry * cur_entry)
case GTYPE_TEXT:
case GTYPE_HTML:
case GTYPE_HTMLCAPS:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 "
"SRC=\"internal-gopher-text\">");
break;
case GTYPE_MENU:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-menu\">");
break;
case GTYPE_CSO:
case GTYPE_INDEX:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-index\">");
break;
case GTYPE_PCBINARY:
case GTYPE_UUENCODED:
case GTYPE_BINARY:
case GTYPE_MACBINHEX:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-binary\">");
break;
case GTYPE_IMAGE:
case GTYPE_GIF:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-image\">");
break;
case GTYPE_SOUND:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-sound\">");
break;
case GTYPE_MPEG:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-movie\">");
break;
case GTYPE_MIME:
default:
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
"<IMG ALIGN=absbottom BORDER=0 SRC=\"internal-gopher-unknown\">");
break;
}
PR_snprintf(&CD_OUTPUT_BUF[PL_strlen(CD_OUTPUT_BUF)],
PR_snprintf(&CD_OUTPUT_BUF[XP_STRLEN(CD_OUTPUT_BUF)],
CD_OUTPUT_BUFFER_SIZE
- PL_strlen(CD_OUTPUT_BUF),
- XP_STRLEN(CD_OUTPUT_BUF),
" %s</A>\n", name);
PR_Free(newpath);
FREE(newpath);
CE_STATUS = PUTSTRING(CD_OUTPUT_BUF);
}
@@ -429,7 +427,7 @@ net_parse_menu (ActiveEntry * cur_entry)
PRIVATE int
net_begin_gopher_cso(GopherConData * connection_data)
{
PL_strcpy(CD_OUTPUT_BUF, "<H1>CSO Search Results</H1>\n<PRE>");
XP_STRCPY(CD_OUTPUT_BUF, "<H1>CSO Search Results</H1>\n<PRE>");
CD_NEXT_STATE = GOPHER_TRANSFER_CSO;
@@ -459,7 +457,7 @@ net_parse_cso (ActiveEntry * cur_entry)
*/
if(CE_STATUS < 0)
{
NET_ExplainErrorDetails(MK_TCP_READ_ERROR, PR_GetOSError());
NET_ExplainErrorDetails(MK_TCP_READ_ERROR, SOCKET_ERRNO);
/* return TCP error
*/
@@ -473,7 +471,7 @@ net_parse_cso (ActiveEntry * cur_entry)
if(CE_STATUS > 1)
{
CE_BYTES_RECEIVED += CE_STATUS;
NET_GraphProgress(CE_WINDOW_ID, CE_URL_S, CE_BYTES_RECEIVED, CE_STATUS, CE_URL_S->content_length);
FE_GraphProgress(CE_WINDOW_ID, CE_URL_S, CE_BYTES_RECEIVED, CE_STATUS, CE_URL_S->content_length);
}
/* a line beginning with a 2 means the end of data
@@ -499,9 +497,9 @@ net_parse_cso (ActiveEntry * cur_entry)
if(*line == '-')
{
colon1 = PL_strchr(line,':');
colon1 = XP_STRCHR(line,':');
if(colon1)
colon2 = PL_strchr(colon1+1, ':');
colon2 = XP_STRCHR(colon1+1, ':');
else
colon2 = NULL;
@@ -509,20 +507,20 @@ net_parse_cso (ActiveEntry * cur_entry)
{
if (*(colon2-1) != CD_CSO_LAST_CHAR)
{ /* print seperator */
PL_strcpy(CD_OUTPUT_BUF, "</PRE><H2>");
XP_STRCPY(CD_OUTPUT_BUF, "</PRE><H2>");
CE_STATUS = PUTSTRING(CD_OUTPUT_BUF);
}
if(CE_STATUS > -1)
CE_STATUS = PUTSTRING(colon2+1);
PL_strcpy(CD_OUTPUT_BUF, "\n");
XP_STRCPY(CD_OUTPUT_BUF, "\n");
if(CE_STATUS > -1)
CE_STATUS = PUTSTRING(CD_OUTPUT_BUF);
if (*(colon2-1) != CD_CSO_LAST_CHAR)
{
/* end seperator */
PL_strcpy(CD_OUTPUT_BUF, "</H2><PRE>");
XP_STRCPY(CD_OUTPUT_BUF, "</H2><PRE>");
if(CE_STATUS > -1)
CE_STATUS = PUTSTRING(CD_OUTPUT_BUF);
}
@@ -555,7 +553,7 @@ net_display_index_splash_screen (ActiveEntry * cur_entry)
COMPLETE_STREAM;
PR_Free(address_copy);
FREE(address_copy);
return(0);
}
@@ -578,7 +576,7 @@ net_display_cso_splash_screen (ActiveEntry * cur_entry)
COMPLETE_STREAM;
PR_Free(address_copy);
FREE(address_copy);
return(0);
}
@@ -594,13 +592,13 @@ net_send_gopher_request (ActiveEntry * cur_entry)
TRACEMSG(("MKGopher: Connected, writing command `%s' to socket %d\n",
CD_COMMAND, CE_SOCK));
CE_STATUS = (int) NET_BlockingWrite(CE_SOCK, CD_COMMAND, PL_strlen(CD_COMMAND));
CE_STATUS = (int) NET_BlockingWrite(CE_SOCK, CD_COMMAND, XP_STRLEN(CD_COMMAND));
NET_Progress (CE_WINDOW_ID, XP_GetString(XP_PROGRESS_WAITREPLY_GOTHER));
/* start the graph progress indicator
*/
NET_GraphProgressInit(CE_WINDOW_ID, CE_URL_S, CE_URL_S->content_length);
FE_GraphProgressInit(CE_WINDOW_ID, CE_URL_S, CE_URL_S->content_length);
CD_DESTROY_GRAPH_PROGRESS = TRUE; /* we will need to destroy it */
CD_ORIGINAL_CONTENT_LENGTH = CE_URL_S->content_length;
@@ -651,7 +649,7 @@ net_pull_gopher_data(ActiveEntry * cur_entry)
else if(CE_STATUS > 0)
{
CE_BYTES_RECEIVED += CE_STATUS;
NET_GraphProgress(CE_WINDOW_ID,
FE_GraphProgress(CE_WINDOW_ID,
CE_URL_S,
CE_BYTES_RECEIVED,
CE_STATUS,
@@ -707,7 +705,7 @@ net_GopherLoad (ActiveEntry * cur_entry)
{
int port_number;
int i;
char *colon = PL_strchr(gopher_host, ':');
char *colon = XP_STRCHR(gopher_host, ':');
if(colon)
{
@@ -723,30 +721,30 @@ net_GopherLoad (ActiveEntry * cur_entry)
MK_MALFORMED_URL_ERROR,
CE_URL_S->address);
if(error_msg)
NET_Alert(CE_WINDOW_ID, error_msg);
PR_Free(gopher_host);
FE_Alert(CE_WINDOW_ID, error_msg);
FREE(gopher_host);
return(MK_MALFORMED_URL_ERROR);
}
}
PR_Free(gopher_host);
FREE(gopher_host);
}
/* malloc space for connection data
*/
connection_data = PR_NEW(GopherConData);
connection_data = XP_NEW(GopherConData);
if(!connection_data)
{
CE_URL_S->error_msg = NET_ExplainErrorDetails(MK_OUT_OF_MEMORY);
return(MK_OUT_OF_MEMORY);
}
memset(connection_data, 0, sizeof(GopherConData)); /* zero it */
XP_MEMSET(connection_data, 0, sizeof(GopherConData)); /* zero it */
CE_SOCK = NULL;
cur_entry->con_data = connection_data;
CD_OUTPUT_BUF = (char*) PR_Malloc(CD_OUTPUT_BUFFER_SIZE);
CD_OUTPUT_BUF = (char*) XP_ALLOC(CD_OUTPUT_BUFFER_SIZE);
if(!CD_OUTPUT_BUF)
{
CE_URL_S->error_msg = NET_ExplainErrorDetails(MK_OUT_OF_MEMORY);
@@ -775,7 +773,7 @@ net_GopherLoad (ActiveEntry * cur_entry)
* if the URL looks like gopher://host/?search term
* treat it as a text file and append the search term
*/
if(PL_strchr(CE_URL_S->address, '?'))
if(XP_STRCHR(CE_URL_S->address, '?'))
{
gopher_type = '0';
}
@@ -826,7 +824,7 @@ net_GopherLoad (ActiveEntry * cur_entry)
/* do the telnet and return */
return(NET_RemoteHostLoad(cur_entry));
#else
PR_ASSERT(0);
XP_ASSERT(0);
break;
#endif /* MOZILLA_CLIENT */
case GTYPE_GIF:
@@ -860,7 +858,7 @@ net_GopherLoad (ActiveEntry * cur_entry)
switch(gopher_type) {
case GTYPE_INDEX:
/* Search is allowed */
query = PL_strchr(CE_URL_S->address, '?'); /* Look for search string */
query = XP_STRCHR(CE_URL_S->address, '?'); /* Look for search string */
if (!query || !query[1]) { /* No search defined */
/* Display "cover page" */
@@ -887,7 +885,7 @@ net_GopherLoad (ActiveEntry * cur_entry)
case GTYPE_CSO:
/* Search is allowed */
query = PL_strchr(CE_URL_S->address, '?'); /* Look for search string */
query = XP_STRCHR(CE_URL_S->address, '?'); /* Look for search string */
if (!query || !query[1]) /* No search required */
{
@@ -913,7 +911,7 @@ net_GopherLoad (ActiveEntry * cur_entry)
case GTYPE_TEXT:
/* Look for search string */
query = PL_strchr(CE_URL_S->address, '?');
query = XP_STRCHR(CE_URL_S->address, '?');
/* special case!!!
* if a query exist treat it special, send
@@ -949,19 +947,18 @@ net_GopherLoad (ActiveEntry * cur_entry)
StrAllocCopy(CD_COMMAND, (char*)NET_UnEscape(gopher_path));
}
PR_FREEIF(path); /* NET_Parse malloc'd the path string */
path = NULL;
FREE_AND_CLEAR(path); /* NET_Parse malloc'd the path string */
/* protect against other protocol attacks by limiting
* the command to a single line. Terminate the command
* at any \n or \r
*/
if(PL_strchr(CD_COMMAND, '\n') || PL_strchr(CD_COMMAND, '\r'))
if(XP_STRCHR(CD_COMMAND, '\n') || XP_STRCHR(CD_COMMAND, '\r'))
{
char *error_msg = NET_ExplainErrorDetails(MK_MALFORMED_URL_ERROR,
CE_URL_S->address);
if(error_msg)
NET_Alert(CE_WINDOW_ID, error_msg);
FE_Alert(CE_WINDOW_ID, error_msg);
return(MK_MALFORMED_URL_ERROR);
}
@@ -1107,18 +1104,18 @@ net_ProcessGopher(ActiveEntry * cur_entry)
case GOPHER_FREE:
if(CD_DESTROY_GRAPH_PROGRESS)
NET_GraphProgressDestroy(CE_WINDOW_ID,
FE_GraphProgressDestroy(CE_WINDOW_ID,
CE_URL_S,
CD_ORIGINAL_CONTENT_LENGTH,
CE_BYTES_RECEIVED);
PR_FREEIF(CD_COMMAND);
PR_FREEIF(CD_STREAM); /* don't forget the stream */
PR_FREEIF(CD_OUTPUT_BUF);
PR_FREEIF(CD_DATA_BUF);
FREEIF(CD_COMMAND);
FREEIF(CD_STREAM); /* don't forget the stream */
FREEIF(CD_OUTPUT_BUF);
FREEIF(CD_DATA_BUF);
if(CD_TCP_CON_DATA)
NET_FreeTCPConData(CD_TCP_CON_DATA);
PR_Free(connection_data);
FREE(connection_data);
return(-1); /* all done */
} /* end switch(NEXT_STATE) */
@@ -1169,5 +1166,5 @@ NET_InitGopherProtocol(void)
gopher_proto_impl.interrupt = net_InterruptGopher;
gopher_proto_impl.cleanup = net_CleanupGopher;
NET_RegisterProtocolImplementation(&gopher_proto_impl, GOPHER_PROTOCOL);
NET_RegisterProtocolImplementation(&gopher_proto_impl, GOPHER_TYPE_URL);
}

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