summaryrefslogtreecommitdiffstats
path: root/net/base/net_util.cc
Commit message (Collapse)AuthorAgeFilesLines
* This CL makes Chrome on par with Firefox in terms of 'GetSuggestedFilename' ↵jungshik@google.com2009-05-011-17/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | for file download via context-menu. For a download initiated with a click on a link in a web page, a webkit-side change is necessary, which will be done later. Add a field (referrer_charset) to URLRequestContext and DownloadCreateInfo. It's set to the character encoding of a document where the download request originates from when it's known (download initiated via "save as" in the context menu). If it's not known (a download initiated by clicking on a download link or typing a url directly to the omnibox), it's initialized to the default character encoding in the user's preference. I guess this is marginally better than leaving it empty (in that case, step 2b below will be skipped and step 2c will be taken) because a user has a better control over how raw 8bit characters in C-D are interpreted (especially on Windows where a reboot is required to change the OS default codepage). This is later passed to GetSuggestedFilename and used as one of fallback encodings (1. UTF-8, 2. origin_charset, 3. default OS codepage). With this change, we support the following: 1. RFC 2047 2. Raw-8bit-characters : a. UTF-8, b. origin_charset, c. default os codepage. 3. %-escaped UTF-8. In this CL, for #3, I didn't add a fallback similar to one used for #2. If necessary, it can be added easily. New entries are added to 3 existing tests. What's previously not covered (raw 8bit Content-Disposition header) is now covered in all 3 tests. BUG=1148 TEST=net unit test: NetUtilTest.GetFileNameFromCD NetUtilTest.GetSuggestedFilename unittest : DownloadManagerTest.TestDownloadFilename Review URL: http://codereview.chromium.org/83002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15113 0039d316-1c4b-4281-b951-d872f2087c98
* Switching things to FilePath:phajdan.jr@chromium.org2009-04-071-12/+0
| | | | | | | | | | | | | | | | Remove following deprecated wstring-using functions: net/net_util: FilePathToFileURL net/net_util: FileURLToFilePath Switch net/base/upload_data to FilePath. Switch upload-related parts of net/url_request/url_request to FilePath. Made necessary adjustments in rest of code (a lot). Review URL: http://codereview.chromium.org/63011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13242 0039d316-1c4b-4281-b951-d872f2087c98
* GetMyHostName is renamed GetHostName to match the name ofwtc@chromium.org2009-03-251-3/+2
| | | | | | | | | the Unix/Winsock function gethostname. R=eroman Review URL: http://codereview.chromium.org/42590 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12466 0039d316-1c4b-4281-b951-d872f2087c98
* Removed unneeded includes of base/scoped_ptr.h. Reduce usage from ~800 files ↵thestig@chromium.org2009-03-131-1/+0
| | | | | | | | to ~400. Review URL: http://codereview.chromium.org/46039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11651 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork the code path for loading net resources on mac, ie-put it back inlinethomasvl@chromium.org2009-03-111-14/+1
| | | | | | | with win/linux. Review URL: http://codereview.chromium.org/43044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11439 0039d316-1c4b-4281-b951-d872f2087c98
* Slight code change to make some global variables const.maruel@google.com2009-03-101-2/+4
| | | | | | | Fix >80 cols lines. Review URL: http://codereview.chromium.org/42013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11342 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the PAC js-binding for "myIpAddress()".ericroman@google.com2009-03-031-3/+18
| | | | | | | BUG=2764 Review URL: http://codereview.chromium.org/38001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10824 0039d316-1c4b-4281-b951-d872f2087c98
* Add js bindings layer for ProxyResolverV8 {"alert()", "dnsResolve()", ↵ericroman@google.com2009-03-021-0/+25
| | | | | | | | | | | "myIpAddress" <-- [partial]}. Also adds a utility function to net_util for turning a addrinfo into an IP address string. BUG=2764 Review URL: http://codereview.chromium.org/31009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10730 0039d316-1c4b-4281-b951-d872f2087c98
* Change the string_escape functions to use string16 rather than wstring.dsh@google.com2009-02-251-3/+4
| | | | | | Review URL: http://codereview.chromium.org/27116 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10358 0039d316-1c4b-4281-b951-d872f2087c98
* Add IPv6 support to net::GetHostAndPort.ericroman@google.com2009-02-231-25/+32
| | | | | | Review URL: http://codereview.chromium.org/28015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10205 0039d316-1c4b-4281-b951-d872f2087c98
* Update include paths for grit files. Go ahead and resorttc@google.com2009-02-221-1/+1
| | | | | | | | the headers too. Review URL: http://codereview.chromium.org/21472 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10167 0039d316-1c4b-4281-b951-d872f2087c98
* Add parsing for PAC result strings -- ProxyInfo::UsePacString().ericroman@google.com2009-02-191-0/+46
| | | | | | | | | | | Added the support class ProxyServer to avoid losing the proxy server's type information (http, socks) when populating the list. The format of the configuration strings has been extended accordingly to include an optional [<scheme>"://"] prefix. (i.e. "http://", "socks4://", "socks5://"). Review URL: http://codereview.chromium.org/20398 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10010 0039d316-1c4b-4281-b951-d872f2087c98
* generate test_shell.pak and hook up loading net resources fromtc@google.com2009-01-201-3/+3
| | | | | | | | | | test_shell.pak. Move the net resource loading into the platform specific files (still a stub on osx). Review URL: http://codereview.chromium.org/18186 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8321 0039d316-1c4b-4281-b951-d872f2087c98
* Remove net_resources.rc and net_resources.h and replace ittc@google.com2009-01-081-1/+4
| | | | | | | | | | | | | | | | with a grd file that generates the same thing. We want to do this so on linux, we will have grit generate the .h file and a platform specific resource file. There's some munging going on to be able to get the effective_tld_names_clean.dat file included in the rc. This works in visual studio and scons. I need to update chrome_kjs.sln and the webkit*.sln files and the mac build before committing. Review URL: http://codereview.chromium.org/16565 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7762 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of kPathSeparator on windows. Port some wstring function to take ↵estade@chromium.org2008-12-041-12/+16
| | | | | | | | FilePaths. Re-enable relevant posix unit tests. Review URL: http://codereview.chromium.org/12893 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6387 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up some net/ code. Change a number of wstrings to FilePaths.estade@chromium.org2008-11-241-0/+8
| | | | | | Review URL: http://codereview.chromium.org/12409 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5944 0039d316-1c4b-4281-b951-d872f2087c98
* Port directory lister to allow the linux and mac test shells to display file ↵estade@chromium.org2008-11-201-10/+19
| | | | | | | | | | directories. This is a revision of r5725. It doesn't break mac build. Review URL: http://codereview.chromium.org/11507 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5792 0039d316-1c4b-4281-b951-d872f2087c98
* Make the net resource interface use StringPiece instead of std::string. ↵deanm@chromium.org2008-11-201-2/+3
| | | | | | | | This means we can point directly into the resource in the binary, instead of copying. This makes sense for the TLD data, which doesn't need to be copied around. Review URL: http://codereview.chromium.org/11506 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5740 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Make the net resource interface use StringPiece instead oftc@google.com2008-11-201-3/+2
| | | | | | | | | | | | | | | std::string. This means we can point directly into the resource in the binary, instead of copying. This makes sense for the TLD data, which doesn't need to be copied around." This reverts commit r5735. TBR=deanm Review URL: http://codereview.chromium.org/11298 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5736 0039d316-1c4b-4281-b951-d872f2087c98
* Make the net resource interface use StringPiece instead of std::string. ↵deanm@chromium.org2008-11-201-2/+3
| | | | | | | | This means we can point directly into the resource in the binary, instead of copying. This makes sense for the TLD data, which doesn't need to be copied around. Review URL: http://codereview.chromium.org/11296 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5735 0039d316-1c4b-4281-b951-d872f2087c98
* revert 5730estade@chromium.org2008-11-191-17/+8
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5731 0039d316-1c4b-4281-b951-d872f2087c98
* Port directory lister to posix.estade@chromium.org2008-11-191-8/+17
| | | | | | | | Fix of issue 11437. Review URL: http://codereview.chromium.org/11293 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5730 0039d316-1c4b-4281-b951-d872f2087c98
* revert 5725estade@chromium.org2008-11-191-17/+8
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5727 0039d316-1c4b-4281-b951-d872f2087c98
* Port directory lister so test shell can view file directories.estade@chromium.org2008-11-191-8/+17
| | | | | | Review URL: http://codereview.chromium.org/11437 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5725 0039d316-1c4b-4281-b951-d872f2087c98
* Change made by external contributor Ibrar Ahmed (ibrar.ahmad@gmail.com), ↵erikkay@google.com2008-11-111-1/+19
| | | | | | | | | | | | | | | reviewed by erikkay: http://codereview.chromium.org/6577/show ports listen_socket and telnet_server to POSIX I had to make some changes to get this to work on Mac and to fix a few regressions it caused in Windows, so please take a fresh look at this diff Dan. Ibrar, please take a look at the changes from your patch to mine (you may need to diff listen_socket_unittest.h with listen_socket_unittest.cc manually since I moved a bunch of code here). Some were bugs that I should have caught in review, some were bugs that only got tickled on the Mac, others were just cleanup. Comments welcome. Review URL: http://codereview.chromium.org/9260 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5153 0039d316-1c4b-4281-b951-d872f2087c98
* Move Time, TimeDelta and TimeTicks into namespace base.dsh@google.com2008-10-271-0/+2
| | | | | | Review URL: http://codereview.chromium.org/7995 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4022 0039d316-1c4b-4281-b951-d872f2087c98
* Unrollback 3024 (partially rolled back in 3027).ericroman@google.com2008-10-081-22/+0
| | | | | | | | It is fixed in mac build now -- problem was bad format string to StringPrintf, where passed string instead of char*. Review URL: http://codereview.chromium.org/6359 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3064 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 3024, broke mac build.maruel@google.com2008-10-081-0/+22
| | | | | | Review URL: http://codereview.chromium.org/6351 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3027 0039d316-1c4b-4281-b951-d872f2087c98
* Pull in new googleurl@94 which includes GURL::EffectiveIntPort().ericroman@google.com2008-10-081-22/+0
| | | | | | | | Update callers to use this method. Review URL: http://codereview.chromium.org/5641 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3024 0039d316-1c4b-4281-b951-d872f2087c98
* Initial stab at http authentication (basic + digest) in new http stack.ericroman@google.com2008-09-271-0/+22
| | | | | | | | | | | | | | | | | | General design: - class HttpAuth -- utility class for http-auth logic. - class HttpAuth::ChallengeTokenizer -- parsing of www-Authenticate headers. - class HttpAuthHandler -- base class for authentication schemes (inspired by nsIHttpAuthenticator) - class HttpAuthHandlerBasic : HttpAuthHandler -- logic for basic auth. - class HttpAuthHandlerDigest : HttpAuthHandler -- logic for digest auth. - The auth integration in HttpNetworkTransaction mimics that of HttpTransactionWinHttp: + HttpNetworkTransaction::ApplyAuth() -- set the authorization headers. + HttpNetworkTransaction::PopulateAuthChallenge() -- process the challenges. BUG=2346 Review URL: http://codereview.chromium.org/4063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2658 0039d316-1c4b-4281-b951-d872f2087c98
* Add UTF-8 check for JSON deserializer.jungshik@google.com2008-09-251-2/+2
| | | | | | | | | | | Add tests for IsStringUTF8 Make IsStringUTF8 accept std::string/std::wstring rather than char*/wchar_t* Review URL: http://codereview.chromium.org/4268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2610 0039d316-1c4b-4281-b951-d872f2087c98
* Fix IDNtoUnicode and unittest. jungshik@google.com2008-09-111-2/+7
| | | | | | | | | | | | | | | | | | | | 1. Check whether uloc_getdata returns the default locale because an invalid or unsupported (not a part of ICU data file we use) locale is passed. 2. Replace 'se' with 'sv' in IDNToUnicode test and change the corresponding test result to true. U+00C4 IS used in Swedish, but the result was set to false because the test results were machine generated with the same typo ('se' in place of 'sv') under en_US.UTF-8 locale on Linux and we ran this test only on Windows with en_US locale. 1st part of patch is by Matthias Reitinger <reimarvin@gmail.com> BUG=1153 TEST=NetUtilTest.IDNToUnicode passes in various locales, C, en_US, en_US.utf8, ja_JP.utf8, sv_SE.utf8, hi_IN.utf8, ru_RU.utf8, fr_CA Review URL: http://codereview.chromium.org/1655 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2052 0039d316-1c4b-4281-b951-d872f2087c98
* Do a better job at bounding HexToInt.deanm@chromium.org2008-09-101-1/+1
| | | | | | | http://codereview.chromium.org/1703 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1994 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crash caused by a NULL FILETIME when creating ftptc@google.com2008-09-041-3/+7
| | | | | | | | | directory listings. BUG=1350006 Review URL: http://codereview.chromium.org/419 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1722 0039d316-1c4b-4281-b951-d872f2087c98
* Move std::string16 to base::string16. Don't pollute the std namespace. Don'tmmentovai@google.com2008-08-271-3/+3
| | | | | | assume that all string types can be represented as std::basic_string<CHAR>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1464 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Fix spurious gcc warning dkegel@google.com2008-08-221-1/+1
| | | | | | | net/base/net_util.cc:176: warning: suggest parentheses around && within || git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1261 0039d316-1c4b-4281-b951-d872f2087c98
* Move FileURLToFilePath into platform specific files. Most of the logic in ↵tc@google.com2008-08-221-71/+0
| | | | | | this function is specific to windows' file system. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1211 0039d316-1c4b-4281-b951-d872f2087c98
* Add net_util* to the SCons build. Fixes some ICU UChar issues in net_util. ↵tc@google.com2008-08-211-2/+1
| | | | | | | | | Also disable NetUtilTest.FileURLConversion because it seems to have Windows specific output (is this the right thing to do?). The other changes to net_util_unittest is to get arraysize to work (see the comment in base/basictypes.h). git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1168 0039d316-1c4b-4281-b951-d872f2087c98
* Port cookie_monster, net_util, and registry_controlled_domain to POSIXish ↵mmentovai@google.com2008-08-211-38/+35
| | | | | | platforms git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1164 0039d316-1c4b-4281-b951-d872f2087c98
* Back out r1154 due to test failuresmmentovai@google.com2008-08-211-27/+38
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1156 0039d316-1c4b-4281-b951-d872f2087c98
* Port cookie_monster, net_util, and registry_controlled_domain to POSIXish ↵mmentovai@google.com2008-08-211-38/+27
| | | | | | platforms git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1154 0039d316-1c4b-4281-b951-d872f2087c98
* Final character conversions for net_util.paulg@google.com2008-08-201-4/+17
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1132 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some character conversions and Mac compile errors for net_util.cc.paulg@google.com2008-08-201-16/+30
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1112 0039d316-1c4b-4281-b951-d872f2087c98
* Move time formatters that only use ICU into base/time.*tc@google.com2008-08-191-22/+4
| | | | | | | | | | | | | This allows us to use the time formatters in, e.g., net or webkit. Remove CookieExpires since it's not used. BUG=1164516 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1063 0039d316-1c4b-4281-b951-d872f2087c98
* Update a few forgotten users of the Sys StringPiece conversion functions to ↵deanm@google.com2008-08-191-1/+2
| | | | | | include string_piece.h git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1028 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the old NativeMB functions from string util, and use the new ones in ↵brettw@google.com2008-08-071-3/+4
| | | | | | sys_strings.h. I also removed duplicated code from the sandbox that can now use this, and fixed one case in the bug reporter that should not have been using the native multibyte encoding. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@515 0039d316-1c4b-4281-b951-d872f2087c98
* Move more net classes into the net namespace. Also remove the net_util ↵darin@google.com2008-07-311-2/+2
| | | | | | | | namespace in favor of the net namespace. This is a purely mechanical change. There should be no logic changes. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192 0039d316-1c4b-4281-b951-d872f2087c98
* I looked at the full dump from the previous crashes and it looks like a ↵brettw@google.com2008-07-301-3/+5
| | | | | | testing issue. Hopefully it will be magically unbroken. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151 0039d316-1c4b-4281-b951-d872f2087c98
* Move some more classes from net/base into the net:: namespace.darin@google.com2008-07-301-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116 0039d316-1c4b-4281-b951-d872f2087c98