FAQ, troubleshooting, known issues/bugs

This is an alpha version. It's in testing so you can meet some bugs and inconveniences. Please e-mail any complaints, wishes and ideas. Check new versions often, I believe they will be released quickly. Subscribe to mailing list

Contents


SmbMate supports Bluetooth? ..Irda? ..USB? ..Serial Cable? ..WiFi? ..Modem ? ..GPRS?

SmbMate works over TCP/IP. No matter how do you connect your PDA to network. You must just have a working network connection to LAN/Internet. All these interfaces allows to establish TCP/IP network connection. Refer to your PDA documentation to find the best way for you device to get connected.


Can I access my server through Internet?

Generally yes. Internet is only big TCP/IP-based network. But do not forget about security issues. Your network administrator can limit access to your LAN (or server) from Internet. This is not SmbMate's problem. This is not problem at all, this is just how you built your security policy.


Does SmbMate work with Mac?

Yes, I've received many users' feedback about it. I can't give more info because I'm not familiar with MacOS.


Why should I specify TCP/IP address of server if I already have SMB server's name?

SMB protocol is transport-independent. Nevertheless the client must do some investigations for mapping server name with a real network address. This is a transport-specific method. In TCP/IP networks we should know IP address of server to establish a connection. This is transparent process for user. In a LAN a client does a broadcast request like "I need a server with name SOMENAME" and server SOMENAME says back "I am SOMENAME and my IP address is x.x.x.x". This method works fine in LAN but in internet medium it fails because of broadcast limitations - internet routers do not pass broadcast packets. The solution is have something like DNS for SMB (WINS - Windows Internet Name System) servers who know where is your desired server. Or you can have local mapping file on client. Microsoft Windows OS uses lmhosts file. That is the way we go. Even if you are located in LAN in most cases Palm cannot receive broadcast responses from SMB servers. SmbMate is designed to work in internet. So, for simplifying process SmbMate uses something like lmhosts file: local name<=>address mapping. This is universal method which will work everywhere. However besides IP address you have to know the server's SMB name. See the next topic


I can create a connection but I cannot delete it or change!

Look here


Smb passwords in SmbMate
For log in to SMB server SmbMate has to store passwords. The passwords you entered are stored as non-recoverable NT LM hashes. This is the same method as Microsoft Windows use. There is no way to restore password from NT LM hash besides brute force. Nevertheless there are third-party software able to restore passwords from hashes using brute force method. Be careful anyway. You can turn on/off HotSync's backup of SmbMate's passwords database via program preferences.


I don't want to store passwords on Palm anyway. What can I do?

No problem. SmbMate will ask password before connecting to server. The password will be cached until you exit current server.


NLS in SmbMate

SmbMate has a limited National Language Support for working with national-localized SMB servers. Theoretically it is enough to work with SMB server using UNICODE to solve NLS problem. But SmbMate has no UNICODE support (read here for more details). Instead of UNICODE support SmbMate has some the most used encoded schemas for mapping Palm's charset and server's charset. For each connection user can setup it's own encoding scheme in connection properties' form:

What happened if you did not set up NLS in your connection properly? No problem while your server, files and directories use only English characters (codes 1..127 of ASCII). If you use extended ASCII (codes 128-255), i.e. national-specific symbols - you could have problems in displaying files on server, creating new objects (files,folders) on server, accessing some shares. No fatal errors but just inconvenience.

Go here to determine if your connection requires character's translating


Should I set up character translating for this connection?

If you have no any experience with NLS - try to turn off translating at first. Only if you have problems while working with national symbols - look at the table below.

Here are possible schemes for SmbMate with descriptions. Note that this is not complete table, just recommendations.

SMB Server PDA localization PDA's charset Server's charset Comments
MS Windows (Russian) Win1251 Russian Russian Win1251 Russian Dos866  
UNIX (Russian, koi8-r) Win1251 Russian Russian Win1251 Russian koi8-r  
MS Windows (Russian) Russian koi8-r Russian koi8-r Russian Dos866  
MS Windows (German) German Western Win1252 Latin1 Dos850 Probably this scheme is also valid for all Western Europe users. Waiting for user's feedback.
MS Windows (USA) English Western Win1252 US Dos437  

There is no NLS for my language!

No problem, just let me know.


SmbMate returns error "Remote node has not registered name SOMENAME(00X0)". What does it mean?

First of all, you have connected to remote host and it is a really SMB server. Congratulations! But your server has not registered name SOMENAME for accepting client requests. Probably you tried to establish connection to shared resource \\SOMENAME\RESOURCENAME (and got error Remote node has not registered name SOMENAME(0020)) or tried to send a message to server SOMENAME (and got error Remote node has not registered name SOMENAME(0003))

Your steps if you got Remote node has not registered name SOMENAME(0020) error:
1. Try universal name *SMBSERVER instead of SOMENAME. The most SMB servers accept successfully *SMBSERVER.
2.

*SMBSERVER does not work? You need to make some investigations to know all registered names of selected server. Try to use first part of server's DNS name (servername.mydomain.com) or go to this server (if it is Microsoft Windows powered) and run command nbtstat.exe -n. This command will show you all the registered SMB names.

The typical nbtstat -n output is:

 NetBIOS Local Name Table
 Name Type Status
 ---------------------------------------------
 MYHOST  <00> UNIQUE Registered
 MYGROUP <00> GROUP Registered
 MYHOST  <20> UNIQUE Registered This is what we need. Our server has registered 
                                MYHOST for File Sharing
 MYHOST  <03> UNIQUE Registered
 MURAD   <03> UNIQUE Registered

In addition you can see registered names remotely by using nbtstat.exe -A x.x.x.x where x.x.x.x is IP address of remote server. It may be useful if your investigated server is not member of MS Windows Family. You can scan that registered names via any remote MS Windows box.

If you did not find any registered name with type <20> it means that your server has File and Printer sharing turned off. Turn it on before using SmbMate. If you don't know how to do it - ask your administrator

3. Check if your server name contains national symbols (non English). If yes - please read about NLS in SmbMate.

If you tried to send message and got Remote node has not registered name SOMENAME(0003) you have to skip step 1 of table above because *SMBSERVER name registered only for file sharing requests. In most cases SOMENAME must be a name of computer or a name of currently logged user. Refer to step 2 of previous table: it's possible to send messages by requesting MYHOST or MURAD


SmbMate returns error "Invalid requested network name or UNC path". What does it mean?

That message tell you to check your full path to requested object. Most often this error appears when you specify incorrect share name (\\SERVERNAME\SHARENAME). Server accepted called name SERVERNAME(0020) but did not find any resource named SHARENAME. Check it. If \\SERVERNAME\SHARENAME contains national symbols please read about NLS in SmbMate. Another method - check if you connected to really your server, for example you could write IP address of another server which does not have resource SHARENAME


As far as SmbMate is fast?

Sometimes I regret that I included speed measurement in SmbMate :-) People too like to compare numbers. Let say that SmbMate is pretty fast. See forums, ask another people. The only real results I could tell are those I got myself:

SmbMate was developed and tested on Palm Tutngsten T with bluetooth connection via Billionton Bluetooth USB Dongle (WidComm drivers version 1.2.2.15). With optimization mode C and B (you can select it in app Preferences) I got 18500 and more (up to 19500) cps on downloading data from server to 128MB MMC card SimpleTech.

WiFi is, of course, is much faster than bluetooth.

Check your real speed yourself. Do not forget, speed depends of 1) PDA model 2)Free memory in RAM 3)Your MMC/SD/MemoryStick/CF productivity. For wireless connections we can add next items: 4)PDA's battery state 5)Distance between PDA and Wireless Access Point.


What kind(mode) of optimization should I select?

Start with optimization turned off. This give you optimal productivity. If you want to get more - go ahead and experiment! Experimentally I discovered that the best optimization mode for my TT is mode B while many Sony Clie owners reported that this mode reduced speed at half and more!


SmbMate failed to connect to server with the following errors : Net lib initialization failed..

This is error in your Palm's network settings. Setup you network connection in Application->Prefs->Network form..


SmbMate returns "Access denied"

You just have no permissions to do requested action. This is not SmbMate problem, this is secure policy issue. Try to connect with another user name or charge current user permissions on server.


Could not shutdown server. SmbMate returns error "Requested object is not found"

Remote shutdown is supported only for Microsoft Windows NT family. Also make sure that service "Remote Registry Service" is running on your server


Built in crypting software

SmbMate uses built-in Palm OS MD4 and DES crypt software. It reduces the prc file size. Unfortunately, MD4/DES functions are undocumented in Palm OS SDK. Besides, due USA crypt technologies export limitation there may be some ROMs without built-in crypt software. Therefore, it's possible for you to get error message on program start. Don't be afraid, send me e-mail and I just include my own version of MD4/DES algorithms into next release. It slightly increases of prc file size (about 7kb).


Browsing of large folders

Listing of remote directory can be canceled when a directory has too many files (approximately greater than 2000-16000, it depends of total files names length, free memory in heap and Palm device type). This happened because of insufficient memory on Palm to storage listing info (there is a limitation of allocation of big memory chunks in heap at once). Theoretically, now it is possible to list approximately about 16000 and even more file items in one folder, if average length of filenames is less or equal 16 symbols. In any case consider splitting your huge folders into small, not only for SmbMate :-)


Monochrome PDAs

SmbMate's colors and bitmaps are not optimized properly for monochrome devices. The only real device I have is a Palm Tungsten T, with HiRes and 65k color capabilities. However, it should work on monochrome devices but if you have another opinion (better - with a ready for your device bitmap) - mail to author.


SMB Error codes

SMB protocol implementations produce many, many errors for every action. Error codes are undocumented. Many error codes are obsolescent. SmbMate translate the most common errors into human-readable form. "Common" means that I met them when I tested SmbMate. Any other error (if any) will be displayed as "Unknown DOS/NT/DCE error XXXXXXX". Tell me about such errors, I include error translation and handler into next release.


UNICODE support

Currently there is no UNICODE support. Main reason is a memory limitation. The second reason is that SmbMate is still must work with old-style, non-UNICODE SMB servers, like MS Windows 9x. However some operations works only with UNICODE-coded data. For example - DCE/RPC calls for NT. I use the simplest scheme to convert null-terminated string to UNICODE - just insert 0 after each character. It works fine only with English texts. I will add some limited UNICODE encoding/decoding schemes later, by user requests.


[TOC] [www.smbmate.com]