Archive for the ‘mda’ Category

Windows 7, McAfee Firewall and SmartPhone-Sync

Thursday, December 24th, 2009

Windows 7, McAfee Firewall and SmartPhone-Sync - an Adventure. After I installed Windows7 successfully on my Samsung NC10 ("Nessie"), as described in another post in this blog, I wanted to sync my phone with it. I knew how it worked with XP. And I knew this would not help me a bit with Windows 7.

All I had, was the description how to get McAfee and ActiveSync up an running, which worked fine with Windows XP. But with Windows 7, ActiveSync is no longer required, nor is it possible to install it. Windows 7 comes with the Windows Mobile Device Center. What you probably need is the 6.1-update of the WMDC, but that's it.

At the time I was looking for information what I would need to get the SmartPhone-sync working without having to turn off the firewall completely everytime, I found nothing, no matter what keywords I fed into google. So I opened up the old description-page about McAfee and ActiveSync, and added the port that was stated there to the list of system-services:

- Service-name       : SmartPhone Sync
- TCP In/out         :   26695
- Open to a computer
   or network that is: Standard (including Trusted)

Then I looked for Apps on my computer that sounded like they might do what the ActiveSync-Apps did. I found a single 100%-match:

ceappmgr.exe,

in the directory

C:\Windows\WindowMobile .

I added it with Full Access to McAfee's Program-list. Next, I looked at the other executables in that directory. I added

  • wmdcBase.exe
  • WmdHost.exe

And tried again. It did not work. I looked through several more directories, added and removed several applications that looked promising to solve the problem, but nothing helped. Then I looked at the log-file generated by the McAfee-firewall, and noticed, that the IP 169.254.2.1 tried to access my computer through ICMP ping (which the firewall blocks), and tcp-port 990, commonly used by FTP for the control-channel when using TLS/SSL. I remembered both the IP and the port from my experiments with syncing the SmartPhone with linux, and decided to add this IP as "trusted" (which is possible directly from the log-entry).

I tried syncing again - and this time it worked.

Smartphone-Experiments, Part 1

Sunday, March 30th, 2008

Over the last two days, I finally found a few hours to experiment with my Windows Mobile driven smartphone, an HTC Touch (ok, it's branded, so it's aka MDA Touch).

With Windows, it syncs out-of-the-box, what a surprise, but with linux, things are a bit more interesting. I am running a Debian/Lenny on my laptop, an old Acer Travelmate 732TL, a Pentium III-500 with 256MB RAM. My intention was to enable the laptop to synchronize with the phone through a USB-cable-connection, and to use the phone for internet-connections. I installed the SynCE-suite packages, along with multisync, and tried my luck. Well, what shall I say, it failed. After looking at the SynCE-manpages, I found out why: Windows Mobile smartphones require a special kernel-module to work properly. So I downloaded the module-sources from the SynCE-website, compiled and installed them, and tried again, running the following commands:

modprobe rndis_host
synce-serial-config ttyUSB0
synce-serial-start
pls

This time, it worked. I got my directory-listing. An ifconfig showed me this:

ppp0      Link encap:Point-to-Point Protocol
          inet addr:192.168.131.102  P-t-P:192.168.131.201  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:13 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:994 (994.0 B)  TX bytes:119 (119.0 B)

The two ip-addresses are the default-values of windows-mobile-phones. As far I as can tell, one should leave them as they are, since it does not seem to work with different ip-addresses (at least not for me, that is). Of course, you are free to try and comment on this ;) .

Internet-Connections

The next thing I tried now was to establish an internet-connection through the smartphone. From the phone's manual I knew there was a program for a shared internet-connection, where the telephone connected itself into the internet by using GPRS/EDGE, and acted as a router/nameserver for the connected computer. I activated that program from the programs-folder (in german, this program is called "Internetfreigabe"), selected "USB" for the connection to the computer, and the GPRS-profile, and then let the program connect to the internet. Though the telephone complained about ActiveSync being "active", it connected me to the internet. An ifconfig gave me now this output:

rndis0    Link encap:Ethernet  HWaddr 80:00:60:0f:e8:00
          inet addr:192.168.0.102  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::8200:60ff:fe0f:e800/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:8050  Metric:1
          RX packets:59 errors:53 dropped:0 overruns:0 frame:0
          TX packets:102 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6848 (6.6 KiB)  TX bytes:19488 (19.0 KiB)

I tried to ping my server using its ip the first time, and its name the second, and both worked fine: I was connected. However, further experiments showed that simply connecting the phone and loading the modules, and then activating the internet-connection on the phone would not work. And rndis0-interface would show up, yes, but it will look like this:

rndis0    Link encap:Ethernet  HWaddr 80:00:60:0f:e8:00
          inet addr:169.254.2.2  Bcast:169.254.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:8050  Metric:1
          RX packets:12 errors:9 dropped:0 overruns:0 frame:0
          TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1124 (1.0 KiB)  TX bytes:7168 (7.0 KiB)

Take a good look at the ip-address, you will notice that it is different from the first two ifconfig-dumps, which used the same ip-adress. A connection will not be possible this way, it has to be set-up and established through synce-serial-config and synce-serial-start before.

Though I have installed Evolution, multisync, and several plugins/modules for both programs, I was not yet able to synchronize my telephone's address-book, calender, todo-list etc. with the laptop. May be Debian/lenny uses packages which are not as up-to-date as I would need it, I have take a further look into this, still. The most important two things, anyhow, being able to transfer files between telephone and laptop, as well as establishing an internet-connection for the laptop by using the telephone as a router/modem, are working now, and quite without an effort, too.

I will continue with my smartphone-experiments, so stay tuned! ;)