diff --git a/lib/tftp.c b/lib/tftp.c
index fbc4e9690d2f2d0e84daedd8b954e46a2cb94213..51702740ae9ecaea3e2bf833c61f4b85c8426c86 100644
--- a/lib/tftp.c
+++ b/lib/tftp.c
@@ -541,7 +541,7 @@ CURLcode Curl_tftp_connect(struct connectdata *conn, bool *done)
 
 #ifdef WIN32
   /* AF_UNSPEC == 0 (from above calloc) doesn't work on Winsock */
-  state->local_addr.sa_family = conn->ip_addr->ai_family;
+  ((struct sockaddr_in*)&state->local_addr)->sin_family = conn->ip_addr->ai_family;
 #endif
 
   tftp_set_timeouts(state);