Граф коммитов

1630 Коммитов

Автор SHA1 Сообщение Дата
mscott%netscape.com a514d6dfd1 fix build breakage by including config.mak 1999-07-29 02:47:16 +00:00
mscott%netscape.com ef2578dab6 Fix build breakage...include config.mak 1999-07-29 02:35:45 +00:00
rpotts%netscape.com 0749fbf78c Close the socket if an error occurred... 1999-07-28 11:08:18 +00:00
rpotts%netscape.com 3147e21651 Changed OnStopRequest(...) to always file - regardless of the mStatus. This insures that the consumer will *always* receive an OnStopRequest(...) notification. 1999-07-28 11:07:39 +00:00
warren%netscape.com 5c61055a2b Fixed mismatched delete problem (purify). 1999-07-28 04:05:10 +00:00
gagan%netscape.com 089b1a8da9 More URL parsing updates for not so common cases. 1999-07-28 02:13:07 +00:00
gagan%netscape.com 8a17f9d60b Fixed the URL parsing for http://foo:80 1999-07-27 21:28:05 +00:00
valeski%netscape.com 3b47bd5edf fixing mem leak 1999-07-27 21:12:50 +00:00
rpotts%netscape.com 516aa68268 Added a temporary new define called USE_POLLABLE_EVENT which windows and unix both define... On the Mac, rather than using NSPR pollable events, a small timeout is set for PR_Poll(...) and new entry processing occurs after a timeout :-( 1999-07-27 09:21:07 +00:00
warren%netscape.com cf64533de5 Fixed tab-width 1999-07-27 08:46:27 +00:00
warren%netscape.com 5cdf76ac2e Added logging. 1999-07-27 08:45:35 +00:00
warren%netscape.com 27519b34c4 Fixed NewURI to not pass base URI when spec is absolute. 1999-07-27 08:45:20 +00:00
gagan%netscape.com 55879e3f5c -Fixed parsing to handle the mscott cases of-
mailbox://foo:25/user@netscape.com
	pop3://foo:110?check
-Fixed missing directory situations. (thanks Andreas)
-Removed the temporary hack for converting from ToNewCString to nsCRT::free'able
type. This removes the FMM errors on Bruce's log. No more mismatched freeing.


? diffs
Index: nsStdURL.cpp
===================================================================
RCS file: /cvsroot/mozilla/netwerk/base/src/nsStdURL.cpp,v
retrieving revision 1.5
diff -r1.5 nsStdURL.cpp
147,150c147
<     {
< 		//TODO
<         return NS_ERROR_FAILURE; // this should really be NS_ERROR_URL_PARSING
<     }
---
>         return NS_ERROR_MALFORMED_URI;
154c151
<     static const char delimiters[] = "/:@"; //this order is optimized.
---
>     static const char delimiters[] = "/:@?"; //this order is optimized.
157,493c154
<     if (brk)
<     {
<         switch (*brk)
<         {
<         case '/' :
<             // If the URL starts with a slash then everything is a path
<             if (brk == mSpec)
<             {
< 				ExtractString(mSpec, &mPath, 0, len);
<                 return NS_OK;
<             }
<             else // The first part is host, so its host/path
<             {
<                 ExtractString(mSpec, &mHost, 0, (brk - mSpec));
<                 ExtractString(mSpec, &mPath, (brk - mSpec), (len - (brk - mSpec)));
<                 return NS_OK;
<             }
<             break;
<         case ':' :
<             if (*(brk+1) == '/')
<             {
<                 ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
<
<                 if (*(brk+2) == '/') // e.g. http://
<                 // If the first colon is followed by // then its definitely a spec
<                 {
<                     lastbrk = brk+3;
<                     brk = PL_strpbrk(lastbrk, delimiters);
<                     if (brk)
<                     {
<                         switch (*brk)
<                         {
<                             case '/' : // standard case- http://host/path
<                                 ExtractString(mSpec, &mHost,
< 								    (lastbrk - mSpec), (brk - lastbrk));
<                                 ExtractString(mSpec, &mPath,
< 								    (brk - mSpec), (len - (brk - mSpec)));
<                                 return NS_OK;
<                                 break;
<                             case ':' :
<                                 {
<                                     // It could be http://user:pass@host/path
< 								    // or http://host:port/path
<                                     // For the first case, there has to be an
< 								    // @ after this colon, so...
<                                     char* atSign = PL_strchr(brk, '@');
<                                     if (atSign)
<                                     {
<                                         ExtractString(mSpec, &mPreHost,
< 										    (lastbrk - mSpec), (atSign - lastbrk));
<                                         brk = PL_strpbrk(atSign+1, "/:");
<                                         if (brk) // http://user:pass@host:port/path or http://user:pass@host/path
<                                         {
<                                             ExtractString(mSpec, &mHost,
< 											    (atSign+1 - mSpec),
< 											    (brk - (atSign+1)));
<                                             if (*brk == '/')
<                                             {
<                                                 ExtractString(mSpec, &mPath,
< 												    (brk - mSpec),
< 												    len - (brk - mSpec));
<                                                 return NS_OK;
<                                             }
<                                             else // we have a port since (brk == ':')
<                                             {
<                                                 lastbrk = brk+1;
<                                                 brk = PL_strchr(lastbrk, '/');
<                                                 if (brk) // http://user:pass@host:port/path
<                                                 {
<                                                     mPort = ExtractPortFrom(mSpec, (lastbrk - mSpec), (brk-lastbrk));
<                                                     ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
<                                                     return NS_OK;
<                                                 }
<                                                 else // http://user:pass@host:port
<                                                 {
<                                                     mPort = ExtractPortFrom(mSpec, (lastbrk - mSpec), len - (lastbrk - mSpec));
<                                                     return NS_OK;
<                                                 }
<                                             }
<
<                                         }
<                                         else // its just http://user:pass@host
<                                         {
<                                             ExtractString(mSpec, &mHost,
< 											    (atSign+1 - mSpec),
< 											    len - (atSign+1 - mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                     else // definitely the port option, i.e. http://host:port/path
<                                     {
<                                         ExtractString(mSpec, &mHost,
< 										    (lastbrk-mSpec),
< 										    (brk-lastbrk));
<                                         lastbrk = brk+1;
<                                         brk = PL_strchr(lastbrk, '/');
<                                         if (brk)    // http://host:port/path
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                                             ExtractString(mSpec, &mPath,
< 											    (brk-mSpec),
< 											    len - (brk-mSpec));
<                                             return NS_OK;
<                                         }
<                                         else        // http://host:port
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                 }
<                                 break;
<                             case '@' :
<                                 // http://user@host...
<                                 {
<                                     ExtractString(mSpec, &mPreHost,
< 									    (lastbrk-mSpec), (brk-lastbrk));
<                                     lastbrk = brk+1;
<                                     brk = PL_strpbrk(lastbrk, ":/");
<                                     if (brk)
<                                     {
<                                         ExtractString(mSpec, &mHost,
< 										    (lastbrk-mSpec), (brk - lastbrk));
<                                         if (*brk == ':') // http://user@host:port...
<                                         {
<                                             lastbrk = brk+1;
<                                             brk = PL_strchr(lastbrk, '/');
<                                             if (brk)    // http://user@host:port/path
<                                             {
<                                                 mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                                                 ExtractString(mSpec, &mPath,
< 												    (brk-mSpec),
< 												    len - (brk-mSpec));
<                                                 return NS_OK;
<                                             }
<                                             else        // http://user@host:port
<                                             {
<                                                 mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                                                 return NS_OK;
<                                             }
<
<                                         }
<                                         else // (*brk == '/') so no port just path i.e. http://user@host/path
<                                         {
<                                             ExtractString(mSpec, &mPath,
< 											    (brk - mSpec),
< 											    len - (brk - mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                     else // its just http://user@host
<                                     {
<                                         ExtractString(mSpec, &mHost,
< 										    (lastbrk+1 - mSpec), len - (lastbrk+1 - mSpec));
<                                         return NS_OK;
<                                     }
<
<                                 }
<                                 break;
<                             default: NS_POSTCONDITION(0, "This just can't be!");
<                                 break;
<                         }
<
<                     }
<                     else // everything else is a host, as in http://host
<                     {
<                         ExtractString(mSpec, &mHost,
< 						    (lastbrk - mSpec),
< 						    len - (lastbrk - mSpec));
<                         return NS_OK;
<                     }
<
<                 }
<                 else // This is a no // path alone case like file:/path, there is never a prehost/host in this case.
<                 {
<                     ExtractString(mSpec, &mPath, (brk-mSpec+1), len - (brk-mSpec+1));
<                     return NS_OK;
<                 }
<             }
<             else // scheme:host or host:port...
<             {
<                 lastbrk = brk+1;
<
<                 if ((*lastbrk >= '0') && (*lastbrk <= '9')) //host:port...
<                 {
<                     ExtractString(mSpec, &mHost, 0, (brk - mSpec));
<                     brk = PL_strpbrk(lastbrk, delimiters);
<                     if (brk)
<                     {
<                         switch (*brk)
<                         {
<                             case '/' : // The path, so its host:port/path
<                                 mPort = ExtractPortFrom(mSpec, lastbrk-mSpec, brk-lastbrk);
<                                 ExtractString(mSpec, &mPath, brk- mSpec, len - (brk-mSpec));
<                                 return NS_OK;
<                                 break;
<                             case ':' :
<                                 return NS_ERROR_FAILURE;//TODO NS_ERROR_URL_PARSING;
<                                 break;
<                             case '@' :
<                                 // This is a special case of user:pass@host... so
<                                 // Cleanout our earliar knowledge of host
<                                 ExtractString(mSpec, &mHost, -1, -1);
<
<                                 ExtractString(mSpec, &mPreHost, 0, (brk-mSpec));
<                                 lastbrk = brk+1;
<                                 brk = PL_strpbrk(lastbrk, ":/");
<                                 if (brk)
<                                 {
<                                     ExtractString(mSpec, &mHost,
< 									    (lastbrk-mSpec), (brk-lastbrk));
<                                     if (*brk == ':') // user:pass@host:port...
<                                     {
<                                         lastbrk = brk+1;
<                                         brk = PL_strchr(lastbrk, '/');
<                                         if (brk)    // user:pass@host:port/path
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                                             ExtractString(mSpec, &mPath,
< 											    (brk-mSpec), len - (brk-mSpec));
<                                             return NS_OK;
<                                         }
<                                         else        // user:pass@host:port
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                     else // (*brk == '/') so user:pass@host/path
<                                     {
<                                         ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
<                                         return NS_OK;
<                                     }
<                                 }
<                                 else // its user:pass@host so everthing else is just the host
<                                 {
<                                     ExtractString(mSpec, &mHost,
< 									    (lastbrk-mSpec), len - (lastbrk-mSpec));
<                                     return NS_OK;
<                                 }
<
<                                 break;
<                             default: NS_POSTCONDITION(0, "This just can't be!");
<                                 break;
<                         }
<                     }
<                     else // Everything else is just the port
<                     {
<                         mPort = ExtractPortFrom(mSpec, lastbrk-mSpec, len - (lastbrk-mSpec));
<                         return NS_OK;
<                     }
<                 }
<                 else // scheme:host...
<                 {
<                     ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
<                     brk = PL_strpbrk(lastbrk, delimiters);
<                     if (brk)
<                     {
<                         switch (*brk)
<                         {
<                             case '/' : // The path, so its scheme:host/path
<                                 ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
<                                 ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
<                                 return NS_OK;
<                                 break;
<                             case '@' : // scheme:user@host...
<                                 ExtractString(mSpec, &mPreHost, (lastbrk-mSpec), (brk-lastbrk));
<                                 // TODO more here...
<                                 break;
<                             case ':' : // scheme:user:pass@host... or scheme:host:port...
<                                 /* TODO
<                                 if you find @ in the remaining string then // scheme:user:pass@host...
<                                 {
<
<
<                                 }
<                                 else // scheme:host:port
<                                 {
<                                     ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
<
<                                 }
<                                 */
<                                 break;
<                             default: NS_POSTCONDITION(0, "This just can't be!");
<                                 break;
<                         }
<                     }
<                     else // its just scheme:host
<                     {
<                         ExtractString(mSpec, &mHost, (lastbrk-mSpec), len - (lastbrk-mSpec));
<                         return NS_OK;
<                     }
<                 }
<             }
<             break;
<         case '@' :
<             //Everything before the @ is the prehost stuff
<             ExtractString(mSpec, &mPreHost, 0, brk-mSpec);
<             lastbrk = brk+1;
<             brk = PL_strpbrk(lastbrk, ":/");
<             if (brk)
<             {
<                 ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
<                 if (*brk == ':') // user@host:port...
<                 {
<                     lastbrk = brk+1;
<                     brk = PL_strchr(lastbrk, '/');
<                     if (brk)    // user@host:port/path
<                     {
<                         mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                         ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
<                         return NS_OK;
<                     }
<                     else        // user@host:port
<                     {
<                         mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                         return NS_OK;
<                     }
<                 }
<                 else // (*brk == '/') so user@host/path
<                 {
<                     ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
<                     return NS_OK;
<                 }
<             }
<             else // its user@host so everything else is just the host
<             {
<                 ExtractString(mSpec, &mHost, (lastbrk-mSpec), (len - (lastbrk-mSpec)));
<                 return NS_OK;
<             }
<             break;
<         default:
<             NS_ASSERTION(0, "This just can't be!");
<             break;
<         }
<     }
<     else // everything is a host
---
>     if (!brk) // everything is a host
495a157
> 		return NS_OK;
496a159,501
> 	switch (*brk)
> 	{
> 	case '/' :
> 	case '?' :
> 		// If the URL starts with a slash then everything is a path
> 		if (brk == mSpec)
> 		{
> 			ExtractString(mSpec, &mPath, 0, len);
> 			return NS_OK;
> 		}
> 		else // The first part is host, so its host/path
> 		{
> 			ExtractString(mSpec, &mHost, 0, (brk - mSpec));
> 			ExtractString(mSpec, &mPath, (brk - mSpec), (len - (brk - mSpec)));
> 			return NS_OK;
> 		}
> 		break;
> 	case ':' :
> 		if (*(brk+1) == '/')
> 		{
> 			ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
>
> 			if (*(brk+2) == '/') // e.g. http://
> 			// If the first colon is followed by // then its definitely a spec
> 			{
> 				lastbrk = brk+3;
> 				brk = PL_strpbrk(lastbrk, delimiters);
> 				if (!brk) // everything else is a host, as in http://host
> 				{
> 					ExtractString(mSpec, &mHost,
> 						(lastbrk - mSpec),
> 						len - (lastbrk - mSpec));
> 					return NS_OK;
> 				}
> 				switch (*brk)
> 				{
> 					case '/' : // standard case- http://host/path
> 					case '?' : // missing path cases
> 						ExtractString(mSpec, &mHost,
> 							(lastbrk - mSpec), (brk - lastbrk));
> 						ExtractString(mSpec, &mPath,
> 							(brk - mSpec), (len - (brk - mSpec)));
> 						return NS_OK;
> 						break;
> 					case ':' : // http://user:... or http://host:...
> 					{
> // It could be http://user:pass@host/path
> // or http://host:port/path we find that by checking further...
> char* nextbrk = PL_strpbrk(brk+1, delimiters);
> if (!nextbrk) // http://host:port
> {
> 	ExtractString(mSpec, &mHost,
> 		(lastbrk-mSpec), (brk-lastbrk));
> 	mPort = ExtractPortFrom(mSpec,
> 		(lastbrk-mSpec), len - (lastbrk-mSpec));
> 	return NS_OK;
> }
> switch (*nextbrk)
> {
> 	case '/': // http://host:port/path
> 	case '?': // http://host:port?path
> 		ExtractString(mSpec, &mHost,
> 			(lastbrk-mSpec), (brk-lastbrk));
> 		mPort = ExtractPortFrom(mSpec, (brk-mSpec+1),(nextbrk-brk-1));
> 		ExtractString(mSpec, &mPath,
> 				(nextbrk-mSpec), len - (nextbrk-mSpec));
> 		return NS_OK;
> 		break;
> 	case '@': // http://user:pass@host...
> 		ExtractString(mSpec, &mPreHost,
> 			(lastbrk - mSpec), (nextbrk - lastbrk));
> 		brk = PL_strpbrk(nextbrk+1, delimiters);
> 		if (!brk) // its just http://user:pass@host
> 		{
> 			ExtractString(mSpec, &mHost,
> 				(nextbrk+1 - mSpec),
> 				len - (nextbrk+1 - mSpec));
> 			return NS_OK;
> 		}
>
> 		ExtractString(mSpec, &mHost,
> 			(nextbrk+1 - mSpec), brk - (nextbrk+1));
>
> 		switch (*brk)
> 		{
> 		case '/': // http://user:pass@host/path
> 		case '?':
> 			ExtractString(mSpec, &mPath,
> 				(nextbrk+1 - mSpec),
> 				len - (nextbrk+1 - mSpec));
> 			return NS_OK;
> 			break;
> 		case ':': // http://user:pass@host:port...
> 			lastbrk = brk;
> 			brk = PL_strpbrk(lastbrk+1, "/?");
> 			if (brk)    // http://user:pass@host:port/path
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
> 				ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
> 				return NS_OK;
> 			}
> 			else        // http://user:pass@host:port
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),
> 					len - (lastbrk-mSpec));
> 				return NS_OK;
> 			}
> 			break;
> 		default: NS_POSTCONDITION(0, "This just can't be!");
> 			break;
> 		}
> 		break;
> 	case ':': // three colons!
> 		return NS_ERROR_MALFORMED_URI;
> 		break;
> 	default: NS_POSTCONDITION(0, "This just can't be!");
> 		break;
> }
> 						}
> 						break;
> 					case '@' : // http://user@host...
> 						{
> 							ExtractString(mSpec, &mPreHost,
> 								(lastbrk-mSpec), (brk-lastbrk));
> 							lastbrk = brk+1;
> 							brk = PL_strpbrk(lastbrk, delimiters);
> 							if (!brk) // its just http://user@host
> 							{
> 								ExtractString(mSpec, &mHost,
> 									(lastbrk+1 - mSpec),
> 									len - (lastbrk+1 - mSpec));
> 								return NS_OK;
> 							}
> 							ExtractString(mSpec, &mHost,
> 								(lastbrk-mSpec), (brk - lastbrk));
> 							switch (*brk)
> 							{
> 								case ':' : // http://user@host:port...
> 									lastbrk = brk+1;
> 									brk = PL_strpbrk(lastbrk, "/?");
> 									if (brk)    // http://user@host:port/path
> 									{
> 										mPort = ExtractPortFrom(mSpec,
> 											(lastbrk-mSpec),(brk-lastbrk));
> 										ExtractString(mSpec, &mPath,
> 											(brk-mSpec),
> 											len - (brk-mSpec));
> 										return NS_OK;
> 									}
> 									else        // http://user@host:port
> 									{
> 										mPort = ExtractPortFrom(mSpec,
> 											(lastbrk-mSpec),
> 											len - (lastbrk-mSpec));
> 										return NS_OK;
> 									}
> 									break;
> 								case '/' : // http://user@host/path
> 								case '?' : // http://user@host?path
> 									ExtractString(mSpec, &mPath,
> 										(brk - mSpec),
> 										len - (brk - mSpec));
> 									return NS_OK;
> 									break;
> 								case '@' :
> 									return NS_ERROR_MALFORMED_URI;
> 								default : NS_POSTCONDITION(0,
> 									"This just can't be!");
> 									break;
> 							}
> 						}
> 						break;
> 					default: NS_POSTCONDITION(0, "This just can't be!");
> 						break;
> 				}
> 			}
> 			else // This is a no // path alone case like file:/path,
> 				// there is never a prehost/host in this case.
> 			{
> 				ExtractString(mSpec, &mPath, (brk-mSpec+1),
> 					len - (brk-mSpec+1));
> 				return NS_OK;
> 			}
> 		}
> 		else // scheme:host or host:port...
> 		{
> 			lastbrk = brk+1;
>
> 			if ((*lastbrk >= '0') && (*lastbrk <= '9')) //host:port...
> 			{
> 				ExtractString(mSpec, &mHost, 0, (brk - mSpec));
> 				brk = PL_strpbrk(lastbrk, delimiters);
> 				if (!brk) // Everything else is just the port
> 				{
> 					mPort = ExtractPortFrom(mSpec, lastbrk-mSpec,
> 						len - (lastbrk-mSpec));
> 					return NS_OK;
> 				}
> 				switch (*brk)
> 				{
> 					case '/' : // The path, so its host:port/path
> 					case '?' : // The path, so its host:port?path
> 						mPort = ExtractPortFrom(mSpec, lastbrk-mSpec,
> 							brk-lastbrk);
> 						ExtractString(mSpec, &mPath, brk- mSpec,
> 							len - (brk-mSpec));
> 						return NS_OK;
> 						break;
> 					case ':' :
> 						return NS_ERROR_MALFORMED_URI;
> 						break;
> 					case '@' :
> 						// This is a special case of user:pass@host... so
> 						// Cleanout our earliar knowledge of host
> 						ExtractString(mSpec, &mHost, -1, -1);
>
> 						ExtractString(mSpec, &mPreHost, 0, (brk-mSpec));
> 						lastbrk = brk+1;
> 						brk = PL_strpbrk(lastbrk, ":/");
> 					// its user:pass@host so everthing else is just the host
> 						if (!brk)
> 						{
> 							ExtractString(mSpec, &mHost,
> 								(lastbrk-mSpec), len - (lastbrk-mSpec));
> 							return NS_OK;
> 						}
> 						ExtractString(mSpec, &mHost,
> 							(lastbrk-mSpec), (brk-lastbrk));
> 						if (*brk == ':') // user:pass@host:port...
> 						{
> 							lastbrk = brk+1;
> 							brk = PL_strpbrk(lastbrk, "/?");
> 							if (brk)    // user:pass@host:port/path
> 							{
> 								mPort = ExtractPortFrom(mSpec,
> 									(lastbrk-mSpec),(brk-lastbrk));
> 								ExtractString(mSpec, &mPath,
> 									(brk-mSpec), len - (brk-mSpec));
> 								return NS_OK;
> 							}
> 							else        // user:pass@host:port
> 							{
> 								mPort = ExtractPortFrom(mSpec,
> 									(lastbrk-mSpec),len - (lastbrk-mSpec));
> 								return NS_OK;
> 							}
> 						}
> 						else // (*brk == '/') so user:pass@host/path
> 						{
> 							ExtractString(mSpec, &mPath, (brk - mSpec),
> 								len - (brk - mSpec));
> 							return NS_OK;
> 						}
> 						break;
> 					default: NS_POSTCONDITION(0, "This just can't be!");
> 						break;
> 				}
> 			}
> 			else // scheme:host...
> 			{
> 				ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
> 				brk = PL_strpbrk(lastbrk, delimiters);
> 				if (!brk) // its just scheme:host
> 				{
> 					ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 						len - (lastbrk-mSpec));
> 					return NS_OK;
> 				}
> 				switch (*brk)
> 				{
> 					case '/' : // The path, so its scheme:host/path
> 					case '?' : // The path, so its scheme:host?path
> 						ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 							(brk-lastbrk));
> 						ExtractString(mSpec, &mPath, (brk - mSpec),
> 							len - (brk - mSpec));
> 						return NS_OK;
> 						break;
> 					case '@' : // scheme:user@host...
> 						ExtractString(mSpec, &mPreHost, (lastbrk-mSpec),
> 							(brk-lastbrk));
> 						// TODO more here...
> 						break;
> 					case ':' : // scheme:user:pass@host...or scheme:host:port...
> 						/* TODO
> 						if you find @ in the remaining string
> 						then // scheme:user:pass@host...
> 						{
>
>
> 						}
> 						else // scheme:host:port
> 						{
> 							ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 								(brk-lastbrk));
> 						}
> 						*/
> 						break;
> 					default: NS_POSTCONDITION(0, "This just can't be!");
> 						break;
> 				}
> 			}
> 		}
> 		break;
> 	case '@' :
> 		//Everything before the @ is the prehost stuff
> 		ExtractString(mSpec, &mPreHost, 0, brk-mSpec);
> 		lastbrk = brk+1;
> 		brk = PL_strpbrk(lastbrk, ":/");
> 		if (!brk) // its user@host so everything else is just the host
> 		{
> 			ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 				(len - (lastbrk-mSpec)));
> 			return NS_OK;
> 		}
> 		ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
> 		if (*brk == ':') // user@host:port...
> 		{
> 			lastbrk = brk+1;
> 			brk = PL_strpbrk(lastbrk, "/?");
> 			if (brk)    // user@host:port/path
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
> 				ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
> 				return NS_OK;
> 			}
> 			else        // user@host:port
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),
> 					len - (lastbrk-mSpec));
> 				return NS_OK;
> 			}
> 		}
> 		else // (*brk == '/') so user@host/path
> 		{
> 			ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
> 			return NS_OK;
> 		}
> 		break;
> 	default:
> 		NS_ASSERTION(0, "This just can't be!");
> 		break;
> 	}
578,580c583
<     {
<         return NS_ERROR_OUT_OF_MEMORY;
<     }
---
>         return returnValue; // ERROR!
620,626c623
< 	// TODO- Fix this. Hack to create tmp only becuz nsString can't
< 	// give us a PR_Malloc (nsCRT/nsAllocator) string
< 	char* tmp = dir.ToNewCString();
< 	if (!tmp)
< 		return NS_ERROR_OUT_OF_MEMORY;
<     mDirectory = nsCRT::strdup(tmp);
< 	delete[] tmp;
---
>     mDirectory = dir.ToNewCString();
677d673
<     nsresult status = NS_ERROR_FAILURE;
782,783c778,782
<     NS_ASSERTION(file, "This can't be! ParsePath called without a /Path");
<     if (!file) return NS_OK;
---
>     if (!file)
> 	{
> 		// Treat the whole mPath as file -- this could still have ?, # etc.
> 		file = mPath;
> 	}
788a788,790
> 	else
> 		DupString(&mDirectory, "/");
>
795,819c797
<     if (brk)
<     {
<         ExtractString(file, &mFileName, 1 /* skip the leading / */, (brk-file-1));
<         //Keep pulling out other pieces...
<         while (brk)
<         {
<             char* lastbrk = brk;
<             brk = PL_strpbrk(lastbrk+1, delimiters);
<             switch (*lastbrk)
<             {
<                 case ';' : /*
<                            ExtractString(lastbrk, &mParam, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
<                            */
<                     break;
<                 case '?' : ExtractString(lastbrk, &mQuery, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
<                     break;
<                 case '#' : ExtractString(lastbrk, &mRef, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
<                     break;
<                 default:
<                     NS_ASSERTION(0, "This just can't be!");
<                     break;
<             }
<         }
<     }
<     else // Everything in the file is just the filename
---
>     if (!brk) // Everything in the file is just the filename
822a801,821
> 	ExtractString(file, &mFileName, 1 /* skip the leading / */, (brk-file-1));
> 	//Keep pulling out other pieces...
> 	while (brk)
> 	{
> 		char* lastbrk = brk;
> 		brk = PL_strpbrk(lastbrk+1, delimiters);
> 		switch (*lastbrk)
> 		{
> 			case ';' : /*
> 					   ExtractString(lastbrk, &mParam, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
> 					   */
> 				break;
> 			case '?' : ExtractString(lastbrk, &mQuery, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
> 				break;
> 			case '#' : ExtractString(lastbrk, &mRef, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
> 				break;
> 			default:
> 				NS_ASSERTION(0, "This just can't be!");
> 				break;
> 		}
> 	}
912,915c911
< 	// TODO fix when nsString changes
< 	char* tempDirFile = temp.ToNewCString();
< 	*o_DirFile = nsCRT::strdup(tempDirFile);
< 	delete[] tempDirFile;
---
> 	*o_DirFile = temp.ToNewCString();
1999-07-27 07:40:38 +00:00
gagan%netscape.com 00df4e6ed7 Necko only. Added a missing trailing newline. 1999-07-26 22:44:22 +00:00
ducarroz%netscape.com b8911a5e87 First Checked In. 1999-07-24 20:50:35 +00:00
gordon%netscape.com 670c22014f File Removed. 1999-07-23 19:39:04 +00:00
valeski%netscape.com e8723c09e8 necko only - added temporary user agent string creation code 1999-07-23 16:35:53 +00:00
valeski%netscape.com 1c6f1bb68a necko only - fixed some miss-matched memory deallocations, and pulled an extraneous addref/release combo 1999-07-23 16:35:13 +00:00
mscott%netscape.com d55d3c558c export nsIStreamConverter2.idl 1999-07-23 05:50:32 +00:00
mscott%netscape.com 5fdc858a17 generate header file for nsIStreamConverter2.idl 1999-07-23 05:49:07 +00:00
mscott%netscape.com c3e2512a51 this used to be mailnews\mime\public\nsIStreamConverter.idl but it needs to be moved out of mailnews as it is generic
and not specific to mailnews. The final resting place for this file will be netwerk\streamcnvts\public but that
directory isn't buildable yet so I'm moving it here for safe keeping. The name (the 2 part) is lame but it conflicted
with a file Jud is addding to streamconv (nsIStreamConverter). Don't worry..eventually the two interfaces
are going to be merged into one.
1999-07-23 05:48:27 +00:00
gagan%netscape.com 8bb993616b Replaced nsStandardUrl with nsStdURL. 1999-07-22 21:19:15 +00:00
gagan%netscape.com 4a65c95965 Changes for the standard URL parsing. Added SetRelativePath. Cleaned up the deletions (all thru nsCRT now) Added functionality for Query and Ref portions of the Path. Added DirFile function to nsIURL to allow just Directory and the Filename. Misc. cleanups as well. 1999-07-22 21:14:51 +00:00
valeski%netscape.com 829cfe29f6 added notification progids 1999-07-20 21:54:40 +00:00
warren%netscape.com b42c5297ac Fixed query/ref problem. 1999-07-20 08:46:35 +00:00
warren%netscape.com 7bcb94a320 Changed around load group insertion/removal to happen on mozilla thread. 1999-07-20 08:46:33 +00:00
warren%netscape.com f64274c766 Backed out Gagan's nsStdURL changes. 1999-07-17 01:32:48 +00:00
jdunn%netscape.com 4928643ce2 include nsILoadGroup.h before it is referenced by nsCOMPtr 1999-07-16 22:20:24 +00:00
jdunn%netscape.com e2cc3dc8aa declare nsINetModRegEntry public (it is assumed private if not specified) 1999-07-16 22:19:38 +00:00
warren%netscape.com c5684bf4d7 Big changes for Necko load groups. Things are much happier now. Now images work (on pages, but not in chrome). 1999-07-16 11:14:36 +00:00
gagan%netscape.com 5e043ea485 Removed obsolete files. 1999-07-16 02:33:44 +00:00
gagan%netscape.com 74b2f0b0b2 Switching to nsStdURL from nsStandardUrl. 1999-07-16 02:32:47 +00:00
warren%netscape.com 8829be55c0 Removed. Replaced with file: protocol stuff. 1999-07-15 17:45:08 +00:00
rpotts%netscape.com ad6fedced2 random changes... NECOK only 1999-07-13 20:43:49 +00:00
rpotts%netscape.com 5729a65b6e Added support for GetQuery(). NECKO only. 1999-07-13 20:43:22 +00:00
waterson%netscape.com 2b04d1a190 Fix necko build bustage. NECKO BUILD ONLY. 1999-07-13 00:15:56 +00:00
mscott%netscape.com 439e11dc40 Fix linux build by using the get() method on a nsCOMPtr to extract the raw ptr before comparing it to another
raw ptr. Also changed the variable name: lock to remove linux warnings.
(NOt part of the build! Necko only)
1999-07-12 18:33:33 +00:00
mscott%netscape.com 01da697bf0 Fix linux warning..remove comma at the end of the enum. 1999-07-12 18:32:18 +00:00
rpotts%netscape.com 1847264191 Changes for sync streams with the socket transport... Added an OnWrite(...) method to nsIBufferObserver... 1999-07-12 06:20:46 +00:00
warren%netscape.com 2456eb613d Reverted to nsStandardUrl which works. 1999-07-10 18:24:02 +00:00
warren%netscape.com 1f33a9ea23 Fixing gagan's bustage. 1999-07-10 17:33:06 +00:00
warren%netscape.com 7c731d4888 Upped socket buffer size to avoid buffer full problems. 1999-07-10 11:26:49 +00:00
warren%netscape.com 053aaa1a37 Replaced AddChannel with AsyncRead,AsyncWrite. Removed RemoveChannel. 1999-07-10 11:26:47 +00:00
warren%netscape.com 0879a196b3 Fixed scheme parsing code. Added outer param to NewLoadGroup. 1999-07-10 11:26:43 +00:00
gagan%netscape.com c9e9030668 Thou shalt parse thy URLs... again. 1999-07-10 05:00:23 +00:00
warren%netscape.com 0cd57746e8 Necko stuff for dealing with load groups when opening URLs. 1999-07-09 21:18:47 +00:00
gagan%netscape.com ec7ef50420 Fixed a warning for virtual destructor. 1999-07-09 09:35:30 +00:00
valeski%netscape.com b9117fe2a7 not in main build - nsFileTransport now implements nsIBufferObserver and it's thread waits and notifies when the underlying buffer fills up (for async i/o). 1999-07-09 01:38:40 +00:00
valeski%netscape.com 7bc13426f4 not in main build - backed out transport files from windows build 1999-07-08 17:17:48 +00:00
valeski%netscape.com 3e26d1f123 not in main build - updated nsFileTransport stuff to use new apis 1999-07-08 17:16:47 +00:00
warren%netscape.com 9efa754f74 Added channel argument to nsIStreamObserver/nsIStreamListener/nsIProgressEventSink methods. 1999-07-07 08:08:40 +00:00
gordon%netscape.com 82257cfce9 File Removed. 1999-07-07 00:23:06 +00:00
warren%netscape.com 6ba186da0c Fix for about:blank to work -- not destroy the listener prematurely in the OnStopRequest method. 1999-07-03 20:27:27 +00:00
warren%netscape.com fe7d57f21a Fixed case where spec given to MakeAbsolute is null. 1999-07-03 07:11:07 +00:00
warren%netscape.com 77c9791de1 Added. 1999-07-03 04:45:49 +00:00
warren%netscape.com 604b91233e Implemented about:blank. 1999-07-03 04:05:14 +00:00
dveditz%netscape.com 4c4f269dd4 nakefile cleanups 1999-07-02 13:42:17 +00:00
warren%netscape.com 86e936c304 Fixed QI bug. 1999-07-02 04:57:45 +00:00
warren%netscape.com 527b2a45c6 Fixed initialization problems. 1999-07-02 04:56:53 +00:00
warren%netscape.com 5559bc36d5 Fixed refcounting bug. 1999-07-02 04:55:52 +00:00
valeski%netscape.com 149969c2e4 necko bustage 1999-07-01 21:02:53 +00:00
warren%netscape.com 8462929dda Renamed OnStartBinding/OnStopBinding to OnStartRequest/OnStopRequest (removing the redundant ones from necko). Numerous necko fixes. Necko now using nsIPrompt interface instead of nsINetSupport. 1999-07-01 19:30:20 +00:00
gordon%netscape.com 39ac6ae9a2 Added nsIHeader.h, nsIProxy.h, nsISocketTransportService.h to list of headers to export. 1999-07-01 19:12:07 +00:00
warren%netscape.com 54bd764acd Added simple URI to parse about:foo, javascript:bar, etc. 1999-07-01 07:52:52 +00:00
valeski%netscape.com a754d778e7 change all GetIID() calls to nsCOMTypeInfo<foo>::GetIID() calls 1999-06-30 20:20:17 +00:00
valeski%netscape.com a8b4609040 changed our nsISupports::GetIID() calls over to nsCOMTypeInfo<foo>::GetIID(). 1999-06-30 20:00:19 +00:00
rpotts%netscape.com b6d1f7d250 Got rid of the IEventQueue instance variable... 1999-06-30 08:15:40 +00:00
rpotts%netscape.com 456644cad0 Fixed up socket transport to abort the operation if the consumer OnDataAvailable(...) returns a failure... 1999-06-29 23:28:19 +00:00
valeski%netscape.com 4eaa64d3c1 various fixes. Big one was that we're no longer passing the uri in as the context to nsAsyncStreamObserver, it's now the channel. 1999-06-29 21:53:45 +00:00
rpotts%netscape.com 8595686c4d Applied patches provided by Tim Rowley - tor@boojum.cs.brown.edu. To fix build problems with the SUNWspro compilers. Thanks Tim!! 1999-06-29 07:23:00 +00:00
rpotts%netscape.com 56aeb8f181 Applied patches provided by Tim Rowley - tor@boojum.cs.brown.edu. To fix build problems with the SUNWspro compilers. Thanks Tim!! 1999-06-29 06:58:06 +00:00
valeski%netscape.com 65011fa313 nsIChannel api change. you no longer have to supply an nsIEventQueue when calling an AsyncRead|Write() method. 1999-06-29 01:52:30 +00:00
mscott%netscape.com 1d781378f8 Add undef for SetPort too. 1999-06-28 23:11:55 +00:00
mscott%netscape.com aad910c48a nsIStreamListener::OnDataAvailable now takes a nsIInputStream instead of a nsIBufferInputStream. 1999-06-28 20:37:10 +00:00
bruce%cybersight.com f23b43cc61 Fixes for builds in an objdir. Use $(topsrcdir) and not $(DEPTH) for calculating path to rules.mk 1999-06-27 05:47:04 +00:00
mcafee%netscape.com 410e40c20b Adding BeOS case. 1999-06-26 06:39:43 +00:00
valeski%netscape.com a541b3d8f7 these are now in the public dir. 1999-06-26 03:13:39 +00:00
gordon%netscape.com cb77bebe14 First Checked In. 1999-06-26 01:14:51 +00:00
warren%netscape.com e91b7028b0 Added strdups to string accessors. 1999-06-25 17:59:58 +00:00
warren%netscape.com c69701142b Added #undef GetPort for Windows. 1999-06-25 17:59:34 +00:00
andreas.otte%primus-online.de d6c2c55929 adding nsILoadGroup.idl 1999-06-25 17:41:38 +00:00
warren%netscape.com 9ac7aaff06 Fixed makefiles for necko module, but netwerk directory. 1999-06-25 03:00:32 +00:00
warren%netscape.com c9b3f8540a Changed our library names from netwerk to necko. 1999-06-24 23:13:46 +00:00
warren%netscape.com cbef31b2d1 Added nsILoadGroup. Changed load attribute strategy to flags. 1999-06-24 22:58:42 +00:00
warren%netscape.com 806192fcc1 Added stuff needed for landing -- LoadQuiet, BypassCache, BypassProxy 1999-06-22 00:19:58 +00:00
warren%netscape.com f717920ea4 Fixed for recent buffer changes. 1999-06-19 22:26:08 +00:00
rpotts%netscape.com 55d83f5fde The write count passed to AsyncWrite(...) is now honored... Fixed things up so the InputStream passed to AsyncWrite does not *have* to really be a nsIBufferedInputStream... 1999-06-19 10:00:42 +00:00
rpotts%netscape.com 3c53457ef9 Removing nsSocketTransportStreams.h.cpp 1999-06-19 06:17:33 +00:00
rpotts%netscape.com 08ac12e5b4 got rid of nsSocketTransportStreams... Using the nsIBuffer notification interfaces instead... 1999-06-19 05:49:04 +00:00
warren%netscape.com d07a25fe1e replaced by nsIOService 1999-06-17 21:42:42 +00:00
warren%netscape.com 70fff6a7f7 Made MakeAbsolute just return the input URI if it's already absolute. 1999-06-17 21:41:26 +00:00
andreas.otte%primus-online.de f3d98ac1d5 adding hack to change PUBLIC variable
This has no effect until some other changes to SeaMonkey
1999-06-17 19:07:58 +00:00
warren%netscape.com 96470845f8 Fixed refcount problem in Clone. 1999-06-17 10:11:58 +00:00
warren%netscape.com 319685b5cf Added QI for nsIURL 1999-06-17 09:23:05 +00:00
warren%netscape.com 72ffe43549 Added NewChannelFromNativePath for convenience. 1999-06-16 04:15:22 +00:00
gagan%netscape.com 9a6a3c5bf2 Removed the temporary Open call on nsIChannel. Inspite of the misnomer, the AsyncRead is the one to use. 1999-06-16 00:49:01 +00:00
warren%netscape.com 34ec459271 Removed file transport, now consolidated with file channel. Various buffer(stream) cleanup. 1999-06-15 05:18:40 +00:00
gagan%netscape.com 625a8843c3 Added nsIChannel::Open temporarily to get the test working. There is a problem with the nsIBuffer search routine (see news://npm.netlib) which causes an assertion since refcnt gets reset after a Read following a Search on nsIBuffer. 1999-06-15 04:30:34 +00:00
rpotts%netscape.com 7858bab24b Added FillStream(...) which exposes nsIBuffer::WriteSegments() 1999-06-12 08:56:05 +00:00
rpotts%netscape.com 3e1045dd9d Changed doRead() to fill the stream using the IBuffer::WriteSegments api rather than Fill()... This removes an intermediate buffer copy and cleans up the code... 1999-06-12 08:54:56 +00:00
warren%netscape.com 8f6729f704 Removed link dependency on netwerk.dll. 1999-06-12 08:07:05 +00:00
warren%netscape.com 81d81d1985 Added NS_NET to export global functions. 1999-06-12 07:14:12 +00:00
warren%netscape.com a58bb71f17 Added dns to the build. Factored Cancel/Suspend/Resume into nsIRequest. 1999-06-12 02:53:21 +00:00
warren%netscape.com c9aa4c7da2 Rule to create netwerk/dist/include. 1999-06-12 01:47:13 +00:00
warren%netscape.com 3283484dd3 Hack to make necko co-exist with seamonkey so headers don't collide. 1999-06-12 01:41:08 +00:00
valeski%netscape.com d8fadf5600 some const build problems are now fixed 1999-06-11 18:48:10 +00:00
andreas.otte%primus-online.de 254f0311f3 conversion to wstring / PRUnichar
some cosmetics to various Makefiles
1999-06-11 15:50:14 +00:00
rpotts%netscape.com a16cd085d8 Fixed a memory corruption where a buffer was allocated with new[] but freed with PL_strfree()... 1999-06-11 09:17:11 +00:00
rpotts%netscape.com 389952f926 Changes to get transport streams working with the new BufferInputStream implementations... 1999-06-11 08:35:26 +00:00
rpotts%netscape.com 0eea1a2116 Fixed deadlock if another thread holds the transport lock when Process is called... 1999-06-11 08:34:21 +00:00
rpotts%netscape.com c9e0b21514 moved the test for being suspended inside of the main Process() loop since doRead() can suspend the transport... Also call nsSocketTransportStream::GetWriteAmount() to determine how much data can be written to the stream... 1999-06-11 08:28:22 +00:00
warren%netscape.com a3d5c985ee Added range offsets to open stream methods. 1999-06-11 01:37:43 +00:00
valeski%netscape.com 10a8c17dfd making the nsNetModuleMgr a singleton 1999-06-10 22:26:37 +00:00
valeski%netscape.com cf91f941bf added some comments and thread safety fixes 1999-06-10 21:57:47 +00:00
valeski%netscape.com 24480c627e I was continuing through a loop when I wasn't supposed to be 1999-06-10 15:13:37 +00:00
andreas.otte%primus-online.de 7a6696a692 some cosmetics 1999-06-09 20:41:58 +00:00
andreas.otte%primus-online.de 90d920cace remove export of header files
some cosmetics
1999-06-09 20:40:59 +00:00
andreas.otte%primus-online.de 9ad679bbac adding XPIDL_MODUL
some cosmetics
1999-06-09 20:37:42 +00:00
valeski%netscape.com 4c99b9f13d added thread safety back in 1999-06-09 17:12:34 +00:00
andreas.otte%primus-online.de b78313a76b nsNetModuleMgr.h has to be exported to be used by nsNetFactory 1999-06-09 14:52:28 +00:00
valeski%netscape.com 6e930fa919 moved up into public dir 1999-06-09 14:33:46 +00:00
valeski%netscape.com 23d909ccb1 added nsNetModuleMgr.h to the src dir and added the Create method to the modMgr impl so it can be in the factory 1999-06-09 14:30:20 +00:00
valeski%netscape.com 4bc78f0560 removed nsNetModuleMgr.h from the expport list. it now lives where it should in base/src 1999-06-09 14:28:54 +00:00
valeski%netscape.com 283e58b7d1 moved over to base/src 1999-06-09 14:21:00 +00:00
valeski%netscape.com c0fea94410 no longer needed 1999-06-09 14:20:17 +00:00
valeski%netscape.com 587a190336 api changes 1999-06-09 14:00:50 +00:00
valeski%netscape.com c4e25afa4a compile issues 1999-06-09 14:00:05 +00:00
valeski%netscape.com f855c5deda interface changes 1999-06-09 13:58:51 +00:00
valeski%netscape.com 04ea7d2c94 moved to base/src 1999-06-09 13:56:12 +00:00
valeski%netscape.com d085ffbc1b added external module files to unix builds 1999-06-09 01:01:59 +00:00
valeski%netscape.com cc279297e9 added idl srcs to unix mkfile 1999-06-09 01:01:17 +00:00
valeski%netscape.com cd93925628 removing this as it's been depricated to public dir 1999-06-08 23:14:08 +00:00
warren%netscape.com aaf94a8b04 Moved WriteFrom to nsIBufferOutputStream. Made necko pass around buffer streams. 1999-06-08 20:57:32 +00:00
valeski%netscape.com 21f186610d added nsNetModuleMgr.cpp to the necko library. also made various changes to modEntry and modMgr implementations. 1999-06-08 20:12:53 +00:00
valeski%netscape.com 4d204342a4 added moduelMgr and ModRegEntry idls to the idl list. also updated the nsINetModuleMgr.idl interface 1999-06-08 20:11:53 +00:00
valeski%netscape.com d82cd20a59 we were freeing a static buf 1999-06-08 20:09:43 +00:00
valeski%netscape.com f36dbf5c74 adding the module registery entry idl file 1999-06-08 20:03:48 +00:00
valeski%netscape.com f73a71d18e adding the module mgr header and the entry header 1999-06-08 20:02:53 +00:00
warren%netscape.com ace5fc3a69 Added back in user agent stuff. 1999-06-08 19:04:13 +00:00
warren%netscape.com fb512f23ea Added NewChannel method. 1999-06-08 18:28:10 +00:00
valeski%netscape.com 42635707e3 added root notification idl 1999-06-08 17:07:39 +00:00
valeski%netscape.com a53ebf6bcd added nsINetNotify.idl to idl list 1999-06-08 17:07:09 +00:00
andreas.otte%primus-online.de 0d99370e0c some cleanup after IDLisation 1999-06-08 09:44:04 +00:00
warren%netscape.com 29acb92d6c obsoleting files 1999-06-07 22:19:20 +00:00
warren%netscape.com 5fbea51f35 Removed nsITransport. 1999-06-07 22:12:19 +00:00
warren%netscape.com ee30272739 Updated for file name changes. 1999-06-07 22:04:19 +00:00
warren%netscape.com c0a3d1a7a3 New IDL interfaces. 1999-06-07 21:33:30 +00:00
rpotts%netscape.com f7b98ad678 Fixed up compiler warning on Linux... 1999-06-07 06:30:59 +00:00
rpotts%netscape.com 6aa2397821 Added a new file - nsSocketTransportStreams.cpp to the build... 1999-06-07 06:28:07 +00:00
rpotts%netscape.com 47f13300d6 Work on blocking streams... 1999-06-07 06:27:34 +00:00
gagan%netscape.com 7809652963 Fixed the stream length to be zero. Thanks Andreas. 1999-06-04 11:10:31 +00:00
rpotts%netscape.com 25b6f04fd6 Added NSPR logging messages... 1999-06-04 08:52:02 +00:00
gagan%netscape.com 5669090019 Getting base building again. Fixed the changes from nsIOutputStream's Write function. 1999-06-04 07:25:16 +00:00
valeski%netscape.com 502b9ca498 added the class id to identify the actual class that implements teh nsINetNotify interface 1999-06-03 20:00:38 +00:00
rpotts%netscape.com c84afbbf05 Added support for Suspend/Resume... 1999-06-03 05:43:56 +00:00
andreas.otte%primus-online.de aecb63e6cf integrating Alec Fletts nsISupportsArray changes 1999-06-02 11:12:21 +00:00
rpotts%netscape.com 303578cd7e PRCList cleanup. More syncronization code... some work toward blocking streams. 1999-06-02 04:26:55 +00:00
valeski%netscape.com ceff890249 variable name change 1999-06-01 22:03:47 +00:00
rpotts%netscape.com 6627c4030e Added synchronization to socket transport APIs... Added access methods for getting the PRCList from a transport... 1999-06-01 21:37:52 +00:00
valeski%netscape.com d940f92c4b Added the user agent string getter methods to nsINetService, as well as the implementation of them. Note: that they current aren't being initialized. 1999-06-01 21:27:25 +00:00
rpotts%netscape.com 2a4ee5e6a4 First pass at supporting simultaneous read and write on sockets... 1999-05-31 05:15:40 +00:00
andreas.otte%primus-online.de 1f5869ce4e make no shared lib and do not install it in $(DIST)/bin 1999-05-28 11:20:30 +00:00
andreas.otte%primus-online.de dfb9c17c3f First Checked In 1999-05-28 09:11:38 +00:00
valeski%netscape.com 87115605e4 module mananger implementation files 1999-05-27 21:30:31 +00:00
valeski%netscape.com a8f3df5774 idl: added the idl dir and some initial files.
added module manager headers and idl files
1999-05-27 21:29:52 +00:00
valeski%netscape.com 4380e2aacc removed these two because they've been added to the proper idl directory 1999-05-27 21:13:34 +00:00
valeski%netscape.com 7ee4dbe328 removed #include "nsXPComCIID.h" as it is no longer pertinent 1999-05-26 20:51:19 +00:00
valeski%netscape.com 3d007be727 the base class for necko events to be used with the nsINetModuleMgr api 1999-05-25 17:29:04 +00:00
valeski%netscape.com a80c54fc2a added revised comment 1999-05-25 17:27:01 +00:00
valeski%netscape.com cf354616e6 added context arguments and a set headers method. 1999-05-24 22:06:12 +00:00
valeski%netscape.com bf905c0e86 the notify api and the external module interface now use the nsIObserver stuff 1999-05-24 20:40:21 +00:00
valeski%netscape.com 97e735dffa First whack at various external module apis. 1999-05-24 19:50:39 +00:00
valeski%netscape.com ef4434f41a wrong parameters were being passed into the handler's NewUrl() call 1999-05-24 19:33:52 +00:00
warren%netscape.com b3c3a30965 Moving changes from XPCOM20_BRANCH forward. 1999-05-24 09:01:47 +00:00
gagan%netscape.com 6dcf68157c Made the baseURL a default to null. 1999-05-22 00:21:08 +00:00
gagan%netscape.com 9aecaa4e48 Added files for the HTTP Handler. 1999-05-21 07:14:19 +00:00
gagan%netscape.com 84d96d8dd7 Miscellaneous fixes. 1999-05-21 06:30:21 +00:00
valeski%netscape.com bf249b5bcf changed us over to teh correct EventQueueServiceCID 1999-05-18 20:53:38 +00:00
hshaw%netscape.com af359b790a Add new methods for nsICollection 1999-05-13 22:14:43 +00:00
hshaw%netscape.com 92a83150ea Propagate IDL changes from nsICollection.h, we'll need to do the same to nsIConnectionGroup->Count() once we IDLize 1999-05-13 21:57:07 +00:00
valeski%netscape.com 8b921d1d99 defined implicit ranges for error codes. 1999-05-09 19:25:20 +00:00
valeski%netscape.com 92dd0930f2 Added correct error codes and misc touch up. 1999-05-09 19:24:37 +00:00
valeski%netscape.com 1fb4ea16b1 removed nsSycnOutStreamListener references. No longer using it. 1999-05-06 19:49:23 +00:00
valeski%netscape.com 943c469643 changed over to nsIEventQueue interface, from straight PL_EventQueue. Also took a whack at getting socketTRansport::OpenOutputSTream to work (hasn't been tested) 1999-05-05 22:41:44 +00:00
valeski%netscape.com 142c08df8e changed us over to regular monitors (prmon.h) in lieu of cached monitors (prcmon.h) for performance increase. cached monitors can be 5 times slower than regular monitors. 1999-05-04 19:33:37 +00:00
valeski%netscape.com d8031d05e3 changed non-existant xp_win to win32 1999-05-04 18:53:44 +00:00
hshaw%netscape.com f05420e8cb wrap #include <windows.h> with #ifdef XP_WIN (for unix builds) 1999-05-04 00:31:40 +00:00
hshaw%netscape.com 7a23c3e932 remove duplicate nsISocketTransportService.h reference 1999-05-03 23:53:18 +00:00
warren%netscape.com 9004942e9d Changed include for nsStandardUrl.h 1999-05-02 08:46:08 +00:00
warren%netscape.com e526773af9 Fixed to use new nsIBuffer and related buffer streams. 1999-05-01 02:15:59 +00:00
warren%netscape.com b71bb5f33c Renamed nsMarshalingStreamListener to nsAsyncStreamListener. 1999-05-01 02:11:10 +00:00
warren%netscape.com ee3f32d177 Renamed nsTypicalUrl to nsStandardUrl. 1999-05-01 02:08:18 +00:00
warren%netscape.com 8a15c4d3b7 Removed some noise. 1999-04-30 22:55:26 +00:00
valeski%netscape.com 1dbe4d3aa1 nsIUrl.h - switched back to single inheritance of nsISupports (removed nsITypicalUrl)
nsUrl.h - switched back to multiple inheritance including nsITypicalUrl
nsFtpConnectionThread.cpp - various initializations.
nsFtpConnectionThread.h - various initialization api changes
nsFtpProtocolConnection.cpp - Switched back to ProtoConn implementing the nsISTreamListener interface + some initialization changes.
nsFtpProtocolConnection.h - inherits nsIStreamListener.
everyone else was just init changes.
1999-04-30 15:28:33 +00:00
valeski%netscape.com 23572be0c9 added NS_NewConnection() implementation 1999-04-28 23:11:41 +00:00
valeski%netscape.com a1e165ccd2 added NS_NewConnection(). The NS_New*() stuff probably should go elsewhere, but for now, here it lands. 1999-04-28 23:11:04 +00:00
valeski%netscape.com 4003e42409 remove #define error macro and #included the netCore.h file which has the error macros in it. 1999-04-28 22:53:17 +00:00
valeski%netscape.com c53ed5cc30 added inclusive #define 1999-04-28 22:51:28 +00:00
valeski%netscape.com 3bbbeadf75 pulled the ftp specific code out 1999-04-28 22:46:28 +00:00
valeski%netscape.com 65d6ba65dd nsIUrl.h = now is a subclass of nsITypicalUrl explicitly
nsUrl.h = nsIUrl change reflected.
nsNetService.cpp = NS_NewUrl() helper routine added
1999-04-28 20:05:23 +00:00
valeski%netscape.com 6ef2ede27b added ftp error codes 1999-04-27 19:55:48 +00:00
warren%netscape.com e9e1dc1c23 Started hooking up socket transport synchronous streams. Added unix makefiles. 1999-04-25 19:25:24 +00:00
valeski%netscape.com c86ff04f8a #included netCore.h so the socket transport can start using more descriptive error codes. 1999-04-23 21:57:10 +00:00
valeski%netscape.com cade3b9429 added netCore.h which currently contains netlib error codes (generated using nsError.h macros) 1999-04-23 21:56:01 +00:00
warren%netscape.com 0bef817947 Added source offset parameter to OnDataAvailable (for byte-range requests). 1999-04-22 08:47:06 +00:00
rpotts%netscape.com a18186876e Added some error checking... 1999-04-20 08:01:31 +00:00
rpotts%netscape.com b52e94573d correctly set the status argument on the OnStopBinding(...) call. 1999-04-20 04:31:52 +00:00
rpotts%netscape.com b4e704cf60 Added an Event Queue argument to the NewConnection(...) call. This fixed up the build bustage... 1999-04-19 07:28:02 +00:00
rpotts%netscape.com 722b00f7fa First pass at a socket transport implementation... 1999-04-19 07:17:37 +00:00
rpotts%netscape.com c76cd1b2dc split up the async stream listener into an async stream observer and async stream listener... 1999-04-19 07:15:03 +00:00
warren%netscape.com bd6811e701 Removed PAC file for now. 1999-04-17 20:54:57 +00:00
warren%netscape.com 9892971727 Started implement file transport writing code. 1999-04-17 20:50:57 +00:00
warren%netscape.com fa42476fae Added event queue argument for connection creation. Started http state machine. 1999-04-16 18:00:17 +00:00
warren%netscape.com 79cd627c41 Fixed up RemoveElement returning bool problem. 1999-04-15 20:11:21 +00:00
warren%netscape.com 58025e26cd Moved read/write methods from TransportService to Transport. 1999-04-14 08:10:50 +00:00
warren%netscape.com ddc3278d38 More for http. 1999-04-14 00:06:07 +00:00
warren%netscape.com 8f99982227 Added synchronous file input. Worked on cancel/suspend/resume work for file transfer. 1999-04-13 18:10:15 +00:00
warren%netscape.com e9faed107d Began fleshing out http protocol. 1999-04-12 22:34:20 +00:00
warren%netscape.com 8930d4895d Fixed up nsIUrl and added an implementation that allows for setting the parts. Added MakeAbsoluteUrl to nsINetService and nsIProtocolHandler. 1999-04-12 20:35:24 +00:00
rpotts%netscape.com ce870726bd fixed typo... This class should implement the nsIFileTransportService interface. 1999-04-09 05:43:30 +00:00
gagan%netscape.com 4a343822aa Temporary checkin. Brought in the original implementations. Will need some cleaning now... 1999-04-09 02:31:48 +00:00
gagan%netscape.com 55953b47c5 Brought in the original work. 1999-04-09 02:26:05 +00:00
gagan%netscape.com ea8df7d855 First checkins of tests. Currently only urltest. 1999-04-09 02:23:05 +00:00
warren%netscape.com b105285634 Replaced nsIProtocolConnection argument with nsISupports generic context. 1999-04-06 06:11:51 +00:00
warren%netscape.com 78b9a7c8b5 Used nsIByteBufferInputStream. Fixed file transport test. 1999-04-06 01:45:24 +00:00
warren%netscape.com a38405da05 Fixed up all the IIDs to be new/unique. Made nsFileTransport work (needs tuned). 1999-04-05 21:05:22 +00:00
warren%netscape.com 6bd564519f Obsoleted nsITransportService 1999-04-02 09:26:42 +00:00
warren%netscape.com 6bb291af66 Added file transport stuff. 1999-04-02 09:25:17 +00:00
warren%netscape.com 03a4d65ce2 Fixed nsUrl link error. 1999-03-31 19:59:43 +00:00
warren%netscape.com d783951913 Initial stab at new networking implementation. 1999-03-31 19:53:46 +00:00