> Any idea how I can spoof the mac address on my phone?  Or is my
> phone's hardware even specifying this address (seems unlikely to me
> since I also have an HTC 3125 that just happens to use this HWAddr)?
> If synce is specifying this address, can I change that somehow?
> Googling 80:00:60:0f:e8:00 seems to reveal that it is the common
> HWaddr for RNDIS sync even in Windows.
>

The more I look I thing every rndis connection uses this address, and I
can't see any way to change it. It does appear in a registry entry

HKEY_LOCAL_MACHINE\Comm\
>
> ConnectionSharing\Addresses\192.168.0.102
> \HardwareAddress
>
> which seemed like a long shot since it's obviously for ICS, but hey it
> is Micro$oft :), so I tried changing it but to no effect.
>
> I bet you can change it, but I have no idea where.


Interestingly enough my registry doesn't even have these keys.

[HKEY_LOCAL_MACHINE\Comm\ConnectionSharing]
"PublicInterface"=""
"PrivateInterface"=""
"SetLastDhcpAddrToIEH"=dword=00000001
"DisabledOnBoot"=dword=00000001
"EnableDnsProxy"=dword=00000001
"EnableDhcpAllocator"=dword=00000001
"EnableAddressTranslation"=dword=00000001
"EnablePacketFiltering"=dword=00000001

[HKEY_LOCAL_MACHINE\Comm\ConnectionSharing\Driver]
"Flags"=dword=00000002
"Index"=dword=00000000
"Prefix"="NAT"
"Dll"="ipnat.dll"

grep e8 blackjack1.registry | grep 0f # no relevant lines seem to contain
both 0f and e8 in my registry dump

  02e8: 82 3c ba 32 0f 3e f5 ff  .<.2.>..
  03e8: 06 03 55 1d 0f 04 04 03  ..U.....
  01e8: 00 c1 51 0f 4c 52 f8 04  ..Q.LR <http://q.lr/>..
  0038: 1b de 3a 09 e8 f8 77 0f  ..:...w.
"acde140f-4fc9-4951-8ede-e5ee805a0e0a.rgu"=Value (16 bytes):
[HKEY_CLASSES_ROOT\CLSID\{4e822425-a00f-497c-80ff-1c554665a369}]
[HKEY_CLASSES_ROOT\CLSID\{4e822425-a00f-497c-80ff-1c554665a369}\InprocServer32]


What did you do in the registry to switch this ? I did a quick diff on
> registry dumps from a device connected by rndis then serial. There are a
> few relevant differences, but the most likely looks like
>
> HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\DefaultClientDriver
>
> which under rndis is RNDIS and when using serial is SerialClass, worth a
> try on yours.


This is exactly what I have tried already.  I tried Serial_Class and
USBSER_Class, but like you observed there is also a lot of other non-trivial
stuff changing that has me worried.  My registry does contain the
appropriate values for USBSER_Class and Serial_Class

synce-registry -l HKEY_LOCAL_MACHINE Drivers\\USB\\FunctionDrivers -L

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]
"DefaultClientDriver"="RNDIS"

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\USBSER_Class]
"DeviceType"=dword=00000000
"Tsp"="Unimodem.dll"
"bcdDevice"=dword=00000090
"Product"="Generic Serial (PROTOTYPE--Remember to change idVendor)"
"idProduct"=dword=00000079
"Manufacturer"="Generic Manufacturer (PROTOTYPE--Remember to change
idVendor)"
"idVendor"=dword=0000045e
"IClass"=Value (158 bytes):
  0000: 7b 00 43 00 43 00 35 00  {.C.C.5.
  0008: 31 00 39 00 35 00 41 00  1.9.5.A.
  0010: 43 00 2d 00 42 00 41 00  C.-.B.A.
  0018: 34 00 39 00 2d 00 34 00  4.9.-.4.
  0020: 38 00 61 00 30 00 2d 00  8.a.0.-.
  0028: 42 00 45 00 31 00 37 00  B.E.1.7.
  0030: 2d 00 44 00 46 00 36 00  -.D.F.6.
  0038: 44 00 31 00 42 00 30 00  D.1.B.0.
  0040: 31 00 37 00 33 00 44 00  1.7.3.D.
  0048: 44 00 7d 00 00 00 7b 00  D.}...{.
  0050: 43 00 33 00 37 00 35 00  C.3.7.5.
  0058: 43 00 37 00 38 00 37 00  C.7.8.7.
  0060: 2d 00 42 00 37 00 32 00  -.B.7.2.
  0068: 31 00 2d 00 34 00 62 00  1.-.4.b.
  0070: 38 00 65 00 2d 00 42 00  8.e.-.B.
  0078: 36 00 37 00 46 00 2d 00  6.7.F.-.
  0080: 41 00 31 00 31 00 32 00  A.1.1.2.
  0088: 44 00 35 00 43 00 30 00  D.5.C.0.
  0090: 41 00 34 00 30 00 34 00  A.4.0.4.
  0098: 7d 00 00 00 00 00        }.....
  00a0:
"RxBufferSize"=dword=00004000
"DeviceArrayIndex"=dword=00000001
"Prefix"="COM"
"DeviceName"="USBFNS2:"
"Dll"="serialusbfn.dll"

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Serial_Class]
"DeviceType"=dword=00000000
"Tsp"="Unimodem.dll"
"bcdDevice"=dword=00000000
"Product"="Generic Serial (PROTOTYPE--Remember to change idVendor)"
"idProduct"=dword=000000ce
"Manufacturer"="Generic Manufacturer (PROTOTYPE--Remember to change
idVendor)"
"idVendor"=dword=0000045e
"IClass"="{CC5195AC-BA49-48a0-BE17-DF6D1B0173DD}"
"RxBufferSize"=dword=00004000
"DeviceArrayIndex"=dword=00000000
"Prefix"="COM"
"DeviceName"="USBFNS1:"
"Dll"="serialusbfn.dll"

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\RNDIS]
"Product"="MITS USB RNDIS"
"idProductInternetSharing"=dword=000004e8
"idProduct"=dword=00006662
"idVendor"=dword=000004e8
"Manufacturer"="Samsung"
"MaxOutTransfer"=dword=00002000
"MTU"=dword=00001f80
"UseActiveSyncIds"=dword=00000001
"bcdDevice"=dword=00000000
"FriendlyName"="Rndis"
"Dll"="rndisfn.dll"

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class]
"Removable"=dword=00000001
"bcdDevice"=dword=00000001
"Product"="MITS Mass Storage"
"idProduct"=dword=00006663
"Manufacturer"="Samsung"
"idVendor"=dword=000004e8
"FriendlyName"="MITS Mass Storage"
"DeviceName"="DSK3:"
"Dll"="usbmsfn.fix.dll"
"InterfaceProtocol"=dword=00000050
"InterfaceSubClass"=dword=00000006


dmesg output when DefaultClientDriver = "Serial_Class" (after powering off
and powering back on and confirming value still = "Serial_Class") [See
'Before USBSwitch' for dmesg output for "RNDIS"]

[ 8487.580376] usb 2-2: new full speed USB device using uhci_hcd and address
12
[ 8487.759582] usb 2-2: configuration #1 chosen from 1 choice
[ 8487.762284] ipaq 2-2:1.0: PocketPC PDA converter detected
[ 8487.764313] usb 2-2: PocketPC PDA converter now attached to ttyUSB1

output of synce-pls
** Message: Device
/org/freedesktop/Hal/devices/usb_device_45e_ce_43bf5000_bf39_0801_0e70_021408de0184_if0_serial_usb_0
not fully set in Hal, skipping

It is showing up in hal but instead of pda.pocketpc.hotsync_interface =
$DEVICE_ID it equals '/dev/ttyUSB0' (which is consistent with my other
devices for the first 1-5 seconds after plugging them in, but after that it
gets set to $DEVICE_ID)

output of `hal-device
/org/freedesktop/Hal/devices/usb_device_45e_ce_43bf5000_bf39_0801_0e70_021408de0184_if0_serial_usb_0`

udi =
'/org/freedesktop/Hal/devices/usb_device_45e_ce_43bf5000_bf39_0801_0e70_021408de0184_if0_serial_usb_0'
  linux.device_file = '/dev/ttyUSB0'  (string)
  linux.sysfs_path =
'/sys/devices/pci0000:00/0000:00:1a.1/usb2/2-2/2-2:1.0/ttyUSB0/tty/ttyUSB0'
(string)
  info.subsystem = 'tty'  (string)
  info.parent =
'/org/freedesktop/Hal/devices/usb_device_45e_ce_43bf5000_bf39_0801_0e70_021408de0184_if0'
(string)
  serial.originating_device =
'/org/freedesktop/Hal/devices/usb_device_45e_ce_43bf5000_bf39_0801_0e70_021408de0184_if0'
(string)
  info.product = 'Pocket PC PDA'  (string)
  serial.device = '/dev/ttyUSB0'  (string)
  info.udi =
'/org/freedesktop/Hal/devices/usb_device_45e_ce_43bf5000_bf39_0801_0e70_021408de0184_if0_serial_usb_0'
(string)
  usb.product = 'Windows Mobile Device'  (string)
  info.addons = { 'hal-synce-serial' } (string list)
  serial.port = 0  (0x0)  (int)
  linux.hotplug_type = 2  (0x2)  (int)
  serial.type = 'usb'  (string)
  linux.subsystem = 'tty'  (string)
  info.capabilities = { 'serial', 'pda', 'sync', 'pda' } (string list)
  pda.platform = 'pocketpc'  (string)
  usb.interface.description = 'Windows Mobile Data Provider'  (string)
  pda.pocketpc.hotsync_interface = '/dev/ttyUSB0'  (string)
  info.category = 'pda'  (string)
  sync.engine = 'opensync'  (string)
  sync.plugin = 'synce'  (string)

output of hal-device for a ppp device that is connected

udi =
'/org/freedesktop/Hal/devices/usb_device_bb4_a51_noserial_if0_serial_usb_0'
  serial.originating_device =
'/org/freedesktop/Hal/devices/usb_device_bb4_a51_noserial_if0'  (string)
  pda.pocketpc.name = 'ID_0bb40a51'  (string)
  serial.device = '/dev/ttyUSB0'  (string)
  pda.pocketpc.platform = 'SmartPhone'  (string)
  serial.port = 0  (0x0)  (int)
  pda.pocketpc.model = 'HTC'  (string)
  serial.type = 'usb'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  pda.pocketpc.os_major = 5  (0x5)  (uint64)
  pda.platform = 'pocketpc'  (string)
  linux.subsystem = 'tty'  (string)
  info.subsystem = 'tty'  (string)
  pda.pocketpc.os_minor = 1  (0x1)  (uint64)
  pda.pocketpc.hotsync_interface = 'ID_0bb40a51'  (string)
  info.capabilities = { 'serial', 'pda', 'sync', 'pda' } (string list)
  info.product = 'Pocket PC PDA'  (string)
  pda.pocketpc.version = 12779781  (0xc30105)  (uint64)
  sync.engine = 'opensync'  (string)
  info.udi =
'/org/freedesktop/Hal/devices/usb_device_bb4_a51_noserial_if0_serial_usb_0'
(string)
  sync.plugin = 'synce'  (string)
  pda.pocketpc.cpu_type = 2577  (0xa11)  (uint64)
  pda.pocketpc.current_partner_id = 0  (0x0)  (uint64)
  pda.pocketpc.guid = '{1148426D-BC21-B03E-1049-13CBFEEA1AE9}'  (string)
  pda.pocketpc.ip_address = '192.168.131.129'  (string)
  pda.pocketpc.password = 'unset'  (string)
  info.interfaces = { 'org.freedesktop.Hal.Device.Synce' } (string list)
  usb.interface.description = 'Windows Mobile Data Provider'  (string)
  info.category = 'pda'  (string)
  linux.sysfs_path =
'/sys/devices/pci0000:00/0000:00:1d.2/usb6/6-1/6-1:1.0/ttyUSB0/tty/ttyUSB0'
(string)
  info.addons = { 'hal-synce-serial' } (string list)
  info.parent =
'/org/freedesktop/Hal/devices/usb_device_bb4_a51_noserial_if0'  (string)
  linux.device_file = '/dev/ttyUSB0'  (string)
  usb.product = 'Windows Mobile Device'  (string)

Noteworthy: Almost all the pda.pocketpc.* properties are missing (such as
cpu_type, guid, ip_address, model, etc)


>
>
> What did you get in dmesg when connecting using USBSwitch ?


USBSwitch doesn't appear to do anything at all on the Blackjack.  I am
thinking it must be too old/designed for different phones.

Before USBSwitch...

[ 6029.016040] usb 2-2: new full speed USB device using uhci_hcd and address
8
[ 6029.189637] usb 2-2: configuration #1 chosen from 1 choice
[ 6029.292122] rndis_host 2-2:1.0: RNDIS_MSG_QUERY(0x00010202) failed, -47
[ 6029.297882] eth1: register 'rndis_host' at usb-0000:00:1a.1-2, RNDIS
device, 80:00:60:0f:e8:00

After USBSwitch (identical, basically)

[ 6195.068030] usb 2-2: new full speed USB device using uhci_hcd and address
9
[ 6195.297494] usb 2-2: configuration #1 chosen from 1 choice
[ 6195.427057] rndis_host 2-2:1.0: RNDIS_MSG_QUERY(0x00010202) failed, -47
[ 6195.433780] eth1: register 'rndis_host' at usb-0000:00:1a.1-2, RNDIS
device, 80:00:60:0f:e8:00

Here is a different device in ppp mode connecting

[ 6361.984043] usb 6-1: new full speed USB device using uhci_hcd and address
3
[ 6362.156504] usb 6-1: configuration #1 chosen from 1 choice
[ 6362.175879] ipaq 6-1:1.0: PocketPC PDA converter detected
[ 6362.178689] usb 6-1: PocketPC PDA converter now attached to ttyUSB0


As a bonus here is the dmesg output of DefaultClientDriver = "USBSER_Class"

[10529.232035] usb 2-2: new full speed USB device using uhci_hcd and address
17
[10529.408428] usb 2-2: configuration #1 chosen from 1 choice

Nothing on hal, so this isn't working at all.

None of these situations changed the output of ifconfig -a at all
------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
SynCE-Devel mailing list
SynCE-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synce-devel

Reply via email to