33 lines
748 B
Diff
33 lines
748 B
Diff
|
Index: bird-1.6.3/proto/rip/packets.c
|
||
|
===================================================================
|
||
|
--- bird-1.6.3.orig/proto/rip/packets.c
|
||
|
+++ bird-1.6.3/proto/rip/packets.c
|
||
|
@@ -56,13 +56,20 @@ struct rip_block_auth
|
||
|
{
|
||
|
u16 must_be_ffff;
|
||
|
u16 auth_type;
|
||
|
- char password[0];
|
||
|
- u16 packet_len;
|
||
|
- u8 key_id;
|
||
|
- u8 auth_len;
|
||
|
- u32 seq_num;
|
||
|
- u32 unused1;
|
||
|
- u32 unused2;
|
||
|
+ /*
|
||
|
+ * use anonymous struct/union to get around a fortify source warnings about overwriting the password buffer
|
||
|
+ */
|
||
|
+ union {
|
||
|
+ char password[RIP_PASSWD_LENGTH];
|
||
|
+ struct {
|
||
|
+ u16 packet_len;
|
||
|
+ u8 key_id;
|
||
|
+ u8 auth_len;
|
||
|
+ u32 seq_num;
|
||
|
+ u32 unused1;
|
||
|
+ u32 unused2;
|
||
|
+ }
|
||
|
+ };
|
||
|
};
|
||
|
|
||
|
/* Authentication tail, RFC 4822 */
|