Hi, everybody.
I've FINALLY gotten this working, after about 24 hours (straight-through) of searching the web (wich didn't have anything useful, as I'm sure you've found-out), reading manuals (which have way too MUCH useful stuff) and just plain fiddling.
Most of the problem was with the smb.conf file. For whatever reason, the documentation's advice to keep that file as simple and minimalistic as possible didn't really get the job done, so I began picking apart a working installation on another machine that had the whole thing auto-configured at installation (using the Mandrake 10 Offical installer). For one thing, STAY THE HECK AWAY FROM SWAT during the initial (re)configuring. For whatever reason, it just doesn't do what (I think) it says it's going to.
Another thing that had me jammed-up for a while was the firewall in MDK. Even though I had everything enabled, it still was blocking stuff, and in addition to that, my base security settings were all goofed-up. To solve this, I set the "security settings" to "poor" (not recommended if you want a setting you can leave it at) and then I removed everything having to do with networking (perhaps a bit of an overkill) and reinstalled it all again. Then I put the security settings back to "standard" but left everything on the firewall enabled. (I can go back and block things one-at-a-time later to see what actually NEEDS to be enabled for all my stuff to work right.)
Finally, at several points I was having trouble pinging the Windows XP computer. The first time it was because I had ZoneAlarm running on Windows XP. I shut that down and it fixed the problem. (I'm sure it can be configured correctly so that it doesn't make problems, but for the time being I'm leaving it OFF.) The second time, something got jammed up with my iptables. To solve this, since I don't use them for anything specific right now, I just stopped the service. (This was before I reinstalled everything; it works fine now.)
Now for the "grit" of the solution: the smb.conf file:
<code>
# Global parameters
[global]
workgroup = MSHOME
server string = samber server %v
map to guest = Bad User
log file = /var/log/samba/log.%m
max log size = 50
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
dns proxy = No
wins support = Yes
guest ok = Yes
hosts allow = 192.168.0.2, 192.168.0.254
[nfs]
comment = nfs
path = /var/nfs/
[homenfs]
comment = homenfs
path = /home/tech/nfs/
[homes]
valid users = %S
path = /home/
browseable = yes
<end code>
I honestly don't know what thos "socket options" are for, but for some reason my Samba setup doesn't work without them. I'm sure there's a section on all that stuff in the manual.
Now I'm happily sharing along both from Linux to XP and from XP to Linux.
I hope this helps you. Let me know if you have more problems and I'll take some more wild guesses.
Have a good one.
--Dane
P.S. In case you're wondering, the IP addresses listed are: 192.168.0.2 (Windows XP) and 192.168.0.254 (Linux). The local address (Linux) isn't necessary; I was just being tired and "thorough."