KMSAN will complain if valid address length passed to bind()/connect()/
sendmsg() is shorter than sizeof("struct sockaddr"->sa_family) bytes.
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: James Morris <jamorris@linux.microsoft.com>
 {
        struct tomoyo_inet_addr_info *i = &address->inet;
 
+       if (addr_len < offsetofend(struct sockaddr, sa_family))
+               return 0;
        switch (addr->sa_family) {
        case AF_INET6:
                if (addr_len < SIN6_LEN_RFC2133)
 {
        struct tomoyo_unix_addr_info *u = &address->unix0;
 
+       if (addr_len < offsetofend(struct sockaddr, sa_family))
+               return 0;
        if (addr->sa_family != AF_UNIX)
                return 0;
        u->addr = ((struct sockaddr_un *) addr)->sun_path;