+# link/ether - RFC894
+proc link/ether/linkparams {} { return {1 46} }
+proc link/ether/defaddr {} { return 00:00:00:00:00:00 }
+proc link/ether/procaddr {input sd} {
+ set v [string tolower $input]
+ if {[regexp {^([0-9a-f]{2}\:){5}[0-9a-f]{2}$} $v]} {
+ set v [string map {: {}} $v]
+ }
+ if {![regexp -nocase {^[0-9]{12}$} $v]} {
+ error "invalid $sd ethernet addr $input ($v)"
+ }
+ return $v
+}
+proc link/ether/linkencap {packet} {
+ global link_source link_dest
+ set llpkt {}
+ append llpkt $link_source $link_dest 0800
+ append llpkt $packet
+ return $llpkt
+}
+
+