mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 22:44:27 -05:00 
			
		
		
		
	base-files: add mtd_get_mac_{ascii,binary} helpers
Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 35612
This commit is contained in:
		
							parent
							
								
									dd77663fb0
								
							
						
					
					
						commit
						70d40b2ddd
					
				@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
 | 
				
			|||||||
include $(INCLUDE_DIR)/version.mk
 | 
					include $(INCLUDE_DIR)/version.mk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
PKG_NAME:=base-files
 | 
					PKG_NAME:=base-files
 | 
				
			||||||
PKG_RELEASE:=131
 | 
					PKG_RELEASE:=132
 | 
				
			||||||
 | 
					
 | 
				
			||||||
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 | 
					PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 | 
				
			||||||
PKG_BUILD_DEPENDS:=opkg/host
 | 
					PKG_BUILD_DEPENDS:=opkg/host
 | 
				
			||||||
 | 
				
			|||||||
@ -240,6 +240,40 @@ find_mtd_chardev() {
 | 
				
			|||||||
	echo "${INDEX:+$PREFIX$INDEX}"
 | 
						echo "${INDEX:+$PREFIX$INDEX}"
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mtd_get_mac_ascii()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						local mtdname="$1"
 | 
				
			||||||
 | 
						local key="$2"
 | 
				
			||||||
 | 
						local part
 | 
				
			||||||
 | 
						local mac_dirty
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						. /lib/functions.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						part=$(find_mtd_part "$mtdname")
 | 
				
			||||||
 | 
						if [ -z "$part" ]; then
 | 
				
			||||||
 | 
							echo "mtd_get_mac_ascii: partition $mtdname not found!" >&2
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						mac_dirty=$(strings "$part" | sed -n 's/'"$key"'=//p')
 | 
				
			||||||
 | 
						# "canonicalize" mac
 | 
				
			||||||
 | 
						printf "%02x:%02x:%02x:%02x:%02x:%02x" 0x${mac_dirty//:/ 0x}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mtd_get_mac_binary() {
 | 
				
			||||||
 | 
						local mtdname="$1"
 | 
				
			||||||
 | 
						local offset="$2"
 | 
				
			||||||
 | 
						local part
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						part=$(find_mtd_part "$mtdname")
 | 
				
			||||||
 | 
						if [ -z "$part" ]; then
 | 
				
			||||||
 | 
							echo "mtd_get_mac_binary: partition $mtdname not found!" >&2
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						dd bs=1 skip=$offset count=6 if=$part 2>/dev/null | hexdump -v -n 6 -e '5/1 "%02x:" 1/1 "%02x"'
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
strtok() { # <string> { <variable> [<separator>] ... }
 | 
					strtok() { # <string> { <variable> [<separator>] ... }
 | 
				
			||||||
	local tmp
 | 
						local tmp
 | 
				
			||||||
	local val="$1"
 | 
						local val="$1"
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user