Skip to main content

org.ocap.hardware.Host.reverseChannelMAC() not returning consistent value?

1 reply [Last post]
chihiro_saito
Offline
Joined: 2006-11-08
Points: 0

Hi All,

I'm searching for an API in which the xlet can use to retrieve a value that'll be unique and consistent per each device. The MAC address seemed to be a good one to try.

However, on ocap-ri (1.1.4 RelA build on Windows 7, Intel Mac booted to Win), my xlet is getting a different value each time the ocap-ri is restarted, below. It seems very strange. Am not understanding the reverseChannelMAC() method correctly, or is it a bug on ri? Also, is this inconsistency also expected on a real STBs?

=============
20100720 11:47:39.119 INFO RI.Stack- (JVM stdout) Mac Address: 58:11:00:49:c4:00
=============
20100720 11:48:30.254 INFO RI.Stack- (JVM stdout) Mac Address: 8f:0d:00:82:c4:00
=============
20100720 11:49:42.881 INFO RI.Stack- (JVM stdout) Mac Address: 02:00:00:02:e0:d9
=============

Chihiro

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
greg80303
Offline
Joined: 2008-07-03
Points: 0

Sorry for taking so long to get back to you on this one...

Our Windows port grabs the MAC address of the first network interface we find and uses that as the RFMAC. I am not very familiar with Macs running Windows VM, but perhaps the Windows APIs we use to retrieve the MAC address work differently in the VM -- maybe the VM generates some sort of "virtual" MAC address. Can't really help you out too much there.

However, there is a work-around. Add the following value to $OCAPROOT/bin/CableLabs/simulator/Win32/debug/env/mpeenv.ini:

[code]MPE.SYS.RFMACADDR = 00:00:00:00:00:00[/code]

Obviously, substitute any other MAC address that you want. The system will always use this value before it queries the network interface at runtime.

G