diff options
Diffstat (limited to 'include/net/if_inet6.h')
-rw-r--r-- | include/net/if_inet6.h | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/include/net/if_inet6.h b/include/net/if_inet6.h index 50f325fd069..93563221d29 100644 --- a/include/net/if_inet6.h +++ b/include/net/if_inet6.h | |||
@@ -209,60 +209,6 @@ static inline void ipv6_eth_mc_map(const struct in6_addr *addr, char *buf) | |||
209 | memcpy(buf + 2, &addr->s6_addr32[3], sizeof(__u32)); | 209 | memcpy(buf + 2, &addr->s6_addr32[3], sizeof(__u32)); |
210 | } | 210 | } |
211 | 211 | ||
212 | static inline void ipv6_tr_mc_map(const struct in6_addr *addr, char *buf) | ||
213 | { | ||
214 | /* All nodes FF01::1, FF02::1, FF02::1:FFxx:xxxx */ | ||
215 | |||
216 | if (((addr->s6_addr[0] == 0xFF) && | ||
217 | ((addr->s6_addr[1] == 0x01) || (addr->s6_addr[1] == 0x02)) && | ||
218 | (addr->s6_addr16[1] == 0) && | ||
219 | (addr->s6_addr32[1] == 0) && | ||
220 | (addr->s6_addr32[2] == 0) && | ||
221 | (addr->s6_addr16[6] == 0) && | ||
222 | (addr->s6_addr[15] == 1)) || | ||
223 | ((addr->s6_addr[0] == 0xFF) && | ||
224 | (addr->s6_addr[1] == 0x02) && | ||
225 | (addr->s6_addr16[1] == 0) && | ||
226 | (addr->s6_addr32[1] == 0) && | ||
227 | (addr->s6_addr16[4] == 0) && | ||
228 | (addr->s6_addr[10] == 0) && | ||
229 | (addr->s6_addr[11] == 1) && | ||
230 | (addr->s6_addr[12] == 0xff))) | ||
231 | { | ||
232 | buf[0]=0xC0; | ||
233 | buf[1]=0x00; | ||
234 | buf[2]=0x01; | ||
235 | buf[3]=0x00; | ||
236 | buf[4]=0x00; | ||
237 | buf[5]=0x00; | ||
238 | /* All routers FF0x::2 */ | ||
239 | } else if ((addr->s6_addr[0] ==0xff) && | ||
240 | ((addr->s6_addr[1] & 0xF0) == 0) && | ||
241 | (addr->s6_addr16[1] == 0) && | ||
242 | (addr->s6_addr32[1] == 0) && | ||
243 | (addr->s6_addr32[2] == 0) && | ||
244 | (addr->s6_addr16[6] == 0) && | ||
245 | (addr->s6_addr[15] == 2)) | ||
246 | { | ||
247 | buf[0]=0xC0; | ||
248 | buf[1]=0x00; | ||
249 | buf[2]=0x02; | ||
250 | buf[3]=0x00; | ||
251 | buf[4]=0x00; | ||
252 | buf[5]=0x00; | ||
253 | } else { | ||
254 | unsigned char i ; | ||
255 | |||
256 | i = addr->s6_addr[15] & 7 ; | ||
257 | buf[0]=0xC0; | ||
258 | buf[1]=0x00; | ||
259 | buf[2]=0x00; | ||
260 | buf[3]=0x01 << i ; | ||
261 | buf[4]=0x00; | ||
262 | buf[5]=0x00; | ||
263 | } | ||
264 | } | ||
265 | |||
266 | static inline void ipv6_arcnet_mc_map(const struct in6_addr *addr, char *buf) | 212 | static inline void ipv6_arcnet_mc_map(const struct in6_addr *addr, char *buf) |
267 | { | 213 | { |
268 | buf[0] = 0x00; | 214 | buf[0] = 0x00; |