diff -Naur gsasl-1.8.1.orig/gl/poll.c gsasl-1.8.1/gl/poll.c
--- gsasl-1.8.1.orig/gl/poll.c	2019-08-05 09:40:58.563609200 -0400
+++ gsasl-1.8.1/gl/poll.c	2019-08-05 09:43:58.645821400 -0400
@@ -353,7 +353,7 @@
 #endif /* !MinGW */
 
 int
-poll (struct pollfd *pfd, nfds_t nfd, int timeout)
+poll (struct pollfd_portable *pfd, nfds_t nfd, int timeout)
 {
 #ifndef WINDOWS_NATIVE
   fd_set rfds, wfds, efds;
diff -Naur gsasl-1.8.1.orig/gl/poll.in.h gsasl-1.8.1/gl/poll.in.h
--- gsasl-1.8.1.orig/gl/poll.in.h	2019-08-05 09:40:58.579236000 -0400
+++ gsasl-1.8.1/gl/poll.in.h	2019-08-05 09:45:54.300785200 -0400
@@ -77,7 +77,7 @@
 
 # if !GNULIB_defined_poll_types
 
-struct pollfd
+struct pollfd_portable
 {
   int fd;                       /* which file descriptor to poll */
   short events;                 /* events we are interested in   */
@@ -103,13 +103,13 @@
 #   undef poll
 #   define poll rpl_poll
 #  endif
-_GL_FUNCDECL_RPL (poll, int, (struct pollfd *pfd, nfds_t nfd, int timeout));
-_GL_CXXALIAS_RPL (poll, int, (struct pollfd *pfd, nfds_t nfd, int timeout));
+_GL_FUNCDECL_RPL (poll, int, (struct pollfd_portable *pfd, nfds_t nfd, int timeout));
+_GL_CXXALIAS_RPL (poll, int, (struct pollfd_portable *pfd, nfds_t nfd, int timeout));
 # else
 #  if !@HAVE_POLL@
-_GL_FUNCDECL_SYS (poll, int, (struct pollfd *pfd, nfds_t nfd, int timeout));
+_GL_FUNCDECL_SYS (poll, int, (struct pollfd_portable *pfd, nfds_t nfd, int timeout));
 #  endif
-_GL_CXXALIAS_SYS (poll, int, (struct pollfd *pfd, nfds_t nfd, int timeout));
+_GL_CXXALIAS_SYS (poll, int, (struct pollfd_portable *pfd, nfds_t nfd, int timeout));
 # endif
 _GL_CXXALIASWARN (poll);
 #elif defined GNULIB_POSIXCHECK
diff -Naur gsasl-1.8.1.orig/src/gsasl.c gsasl-1.8.1/src/gsasl.c
--- gsasl-1.8.1.orig/src/gsasl.c	2019-08-05 09:40:58.673043000 -0400
+++ gsasl-1.8.1/src/gsasl.c	2019-08-05 09:46:13.973149500 -0400
@@ -713,7 +713,7 @@
       /* Transfer application payload */
       if (args_info.application_data_flag)
 	{
-	  struct pollfd pfd[2];
+	  struct pollfd_portable pfd[2];
 	  char *sockbuf = NULL;
 	  /* we read chunks of 1000 bytes at a time */
 	  size_t sockpos = 0, sockalloc = 0, sockalloc1 = 1000;
