2013-03-20 14 views
1

我是Linux內核編程和驅動程序編程的新手。我正在使用內核版本爲2.6.32-37的Linux上的madwifi驅動程序,並希望在驅動程序代碼中提取接口的MAC地址。我知道應該在網絡設備結構字段中找到這些信息,但不太清楚哪一個是正確的。如何從驅動程序代碼中提取接口的MAC地址

我的問題是:

  1. 是有什麼區別的* dev下的的*真實的嗎?
  2. 我應該使用哪一個? (他們都在代碼的不同部分使用,我不明白我應該什麼時候使用前者和何時使用後者)。

回答

0

http://www.makelinux.net/ldd3/chp-17-sect-3從引用:

無符號字符dev_addr [MAX_ADDR_LEN];

硬件(MAC)地址長度和設備硬件地址。以太網地址長度是六個八位字節(我們指的是接口板的硬件ID),廣播地址由六個0xff八位字節組成; ether_setup安排這些值是正確的。另一方面,設備地址必須以設備特定的方式從接口板讀取,驅動程序應將其複製到dev_addr。硬件地址用於在將數據包傳送給驅動程序進行傳輸之前生成正確的以太網報頭。 snull設備不使用物理接口,它發明自己的硬件地址。

希望有所幫助。

相關問題