Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Connect to Server smb path containing :139 resets / kills Finder



Hello all,

When I try to open "smb://danielbr@delloptiplexgx1:139/My% 20Documents" using the Connect to Server option under the Go Menu in the Finder, the Finder resets.

To get the path I am using the methods FSPathMakeRef(), FSGetCatalogInfo(), FSCopyURLForVolume(), and CFURLGetString() to get the Server path as found in the Finder's get info window for a networked drive. And a peculiar thing is occurring with the Path that is returned, it has ":139" in the return path. This happens only when the program is ran under Mac OS 10.5.1, and does not occur with the same code while it is ran on Mac OS 10.4.11.

Here is what is happening, the path that is returned for a local path of say "/Volumes/My%20Documents/" is "smb:// danielbr@delloptiplexgx1:139/My%20Documents" when it should be "smb://danielbr@delloptiplexgx1/My%20Documents" . The later is how it is displayed in the get info panel in the Finder of the associated disk, so it is not clear where the :139 is coming from.

Any idea what the :139 part is for (maybe some kind of port information), and what I might do to get rid of it? It is appended like above to seemingly every path generated using those functions. Right now it seems to just cause the Finder to reset in Leopard loosing any open Finder windows, just as if someone had Force Quit the Finder. Note that the server that I was trying to connect to is successfully connected to, after the Finder starts back up.

Passing in a path with a :139 in tiger simply causes an error with code -36. http://homepage.mac.com/djbrieck/Shots/SMB139Error.png and the disk is not connected to.


Thank you, Daniel J. Brieck Jr.


//Code segment

   err = FSPathMakeRef((UInt8 *) newPath, &ref, NULL);
       assert(err == noErr);

err = FSGetCatalogInfo(&ref, kFSCatInfoVolume, &catInfo, NULL, NULL, NULL);
assert(err == noErr);


       err = FSCopyURLForVolume(catInfo.volume, &url);
       assert(err == noErr);

       str = CFURLGetString(url);
       assert(str != NULL);

       result = [NSString stringWithString:(NSString *) str];
       assert(result != nil);

       //Remember to Free some stuff that was created / allocated
       CFRelease(url);
       free(newPath); newPath = NULL;

       //Return the new @ server level path
       return result;
//End Segment





_______________________________________________
Do not post admin requests to the list. They will be ignored.
Macnetworkprog mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/macnetworkprog/email@hidden

This email sent to email@hidden


Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.