Closed Bug 65102 Opened 24 years ago Closed 23 years ago

file://<string>/<morepathstring> URLs need better error handling

Categories

(Core :: Networking: File, defect)

x86
Linux
defect
Not set
minor

Tracking

()

VERIFIED DUPLICATE of bug 70871
Future

People

(Reporter: erik, Assigned: dougt)

References

(Blocks 1 open bug, )

Details

From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux 2.4.0 i586; en-US; 0.7) Gecko/20010105
BuildID:    2001010517

When trying to open a file:// url which doesn't exist, such as
file://foo/bar.txt, mozilla generates an empty filelisting screen, similar to
the ftp browser. Instead it should generate an error message. Sometimes it will
show the directory contents too.

Reproducible: Always
Steps to Reproduce:
Open the url file:///foo.txt

Actual Results:  On my system, it get to see the contents of my root directory

Expected Results:  Error message: file doesn't exist.
I actually there are two different behaviors here.
If I use file://foo.txt I get a display of my root directory.
If I use file:///foo.txt I get an empty tree view.
Assignee: asa → dougt
Status: UNCONFIRMED → NEW
Component: Browser-General → Networking: FTP
Ever confirmed: true
QA Contact: doronr → tever
I was about to log this very bug. Adding self to cc list
Target Milestone: --- → Future
Maybe it's obvious, but just for making sure.. not just when 'file:///' is
entered, also when I type just '/foo' in the location bar it displays 'an empty
directory' instead of just an error msg.
file://foo/bar.txt

 is illegal b/c "foo" should be an FQDN.

If it were legal, it would mean:

If I am running on a machine named "foo", then I mean to point to the file
"/bar.txt"

file:///foo.txt 

Implicitly means: file://localhost/foo.txt, which would be the file "/foo.txt"
on any system.

There is some debate in other bugs what "file:///" should show.
QA Contact: tever → benc
I am confused. I thought the file: protocol used the local filesystem. When
trying to fetch a file from a remote machine, what protocol is used? Obviously
not http, that would be redundant. Not SMB either, I guess. So what exactly is
file:// supposed to do?
Local file system generaly means files that are available to the OS via the file
system. Since most OS's mount network software into the same namespace, by
effect file URL's could point to things like SMB (Windows), NFS (UNIX), and AFP
(MacOS).

There was some talk about adding URL schemes for some of these file sharing
protocols (esp nfs and afs), but I don't think this has seen the light of day.

The important aspect of using file URL's to read something off a remote file
server is that this happens via the OS's filesharing client, the browser itself
is agnostic to the filesharing protocol and makes not networking connection.
Blocks: 97358
file:///path not existing is in Bug 63048, so I've narrowed this bug to just
file://<string>.

Basically, the string should be null (-> file:///), "localhost", or some FQDN
that matches an interface on the client host.

If not, we should error, or possibly do a conditional file access:

"This link <file URL> does not reference this computers file system. Do you want
to look for it anyhow?"
Summary: empty directory shown for file:// urls which don't exist → file:// URLs need better error handling
-> Networking: File
Component: Networking: FTP → Networking: File
RESOLVED: the request to actually use the string between slash 2 and slash 3...

Nobody has really asked for "file://*" -> "file:///*" (* being any number of 
URI path characters).

+ verifyme - anyone else interested?

*** This bug has been marked as a duplicate of 70871 ***
Status: NEW → RESOLVED
Closed: 23 years ago
Keywords: verifyme
Resolution: --- → DUPLICATE
Summary: file:// URLs need better error handling → file://<string>/<morepathstring> URLs need better error handling
VERIFIED:
file: URL verification push...
Status: RESOLVED → VERIFIED
Keywords: verifyme
You need to log in before you can comment on or make changes to this bug.