make libplist dependency/protov1 support mandatory
diff --git a/configure.ac b/configure.ac
index b730ebf..e259eb3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,30 +26,9 @@
 AC_PROG_LIBTOOL
 
 # Checks for libraries.
-PKG_CHECK_MODULES(libplist, libplist >= 1.9, have_plist=yes, have_plist=no)
+PKG_CHECK_MODULES(libplist, libplist >= 1.11)
 AC_CHECK_HEADERS([sys/inotify.h], have_inotify=yes, have_inotify=no)
 
-AC_ARG_WITH([protov1],
-            [AS_HELP_STRING([--without-protov1],
-            [do not build with protocol v1 support (default is yes)])],
-            [with_protov1=no],
-            [with_protov1=yes])
-
-if test "x$have_plist" = "xyes"; then
-  if test "x$with_protov1" != "xyes"; then
-    have_plist=no
-    echo "*** Note: Protocol V1 support has been disabled ***"
-  else
-    AC_DEFINE(HAVE_PLIST, 1, [Define if you have libplist support])
-    AC_SUBST(libplist_CFLAGS)
-    AC_SUBST(libplist_LIBS)
-  fi
-else
-  if test "x$with_protov1" == "xyes"; then
-    AC_MSG_ERROR([protocol V1 support requested but libplist could not be found])
-  fi
-fi
-
 AC_ARG_WITH([inotify],
             [AS_HELP_STRING([--without-inotify],
             [(Linux only) do not build with inotify support (default is yes)])],
@@ -120,7 +99,6 @@
 -------------------------------------------
 
   Install prefix: .........: $prefix
-  Protocol v1 support: ....: $have_plist
   inotify support (Linux) .: $have_inotify
 
   Now type 'make' to build $PACKAGE $VERSION,
diff --git a/src/libusbmuxd.c b/src/libusbmuxd.c
index cc228b7..b6e2bbe 100644
--- a/src/libusbmuxd.c
+++ b/src/libusbmuxd.c
@@ -58,13 +58,11 @@
 #include <unistd.h>
 #include <signal.h>
 
-#ifdef HAVE_PLIST
 #include <plist/plist.h>
 #define PLIST_BUNDLE_ID "com.marcansoft.usbmuxd"
 #define PLIST_CLIENT_VERSION_STRING "usbmuxd built for freedom"
 #define PLIST_PROGNAME "libusbmuxd"
 #define PLIST_LIBUSBMUX_VERSION 3
-#endif
 
 // usbmuxd public interface
 #include "usbmuxd.h"
@@ -95,12 +93,8 @@
 static int listenfd = -1;
 
 static int use_tag = 0;
-#ifdef HAVE_PLIST
 static int proto_version = 1;
 static int try_list_devices = 1;
-#else
-static int proto_version = 0;
-#endif
 
 /**
  * Finds a device info record by its handle.
@@ -130,7 +124,6 @@
 #endif
 }
 
-#ifdef HAVE_PLIST
 static struct usbmuxd_device_record* device_record_from_plist(plist_t props)
 {
 	struct usbmuxd_device_record* dev = NULL;
@@ -171,7 +164,6 @@
 
 	return dev;
 }
-#endif
 
 static int receive_packet(int sfd, struct usbmuxd_header *header, void **payload, int timeout)
 {
@@ -201,7 +193,6 @@
 		}
 	}
 
-#ifdef HAVE_PLIST
 	if (hdr.message == MESSAGE_PLIST) {
 		char *message = NULL;
 		plist_t plist = NULL;
@@ -276,9 +267,7 @@
 			free(message);
 		}
 		plist_free(plist);
-	} else
-#endif
-	{
+	} else {
 		*payload = payload_loc;
 	}
 
@@ -326,9 +315,7 @@
 		if (res)
 			free(res);
 		return ret;
-	}
-#ifdef HAVE_PLIST
-	else if (hdr.message == MESSAGE_PLIST) {
+	} else if (hdr.message == MESSAGE_PLIST) {
 		if (!result_plist) {
 			DEBUG(1, "%s: MESSAGE_PLIST result but result_plist pointer is NULL!\n", __func__);
 			return -1;
@@ -337,7 +324,7 @@
 		*result = RESULT_OK;
 		return 1;
 	}
-#endif
+
 	DEBUG(1, "%s: Unexpected message of type %d received!\n", __func__, hdr.message);
 	if (res)
 		free(res);
@@ -371,7 +358,6 @@
 	return sent;
 }
 
-#ifdef HAVE_PLIST
 static int send_plist_packet(int sfd, uint32_t tag, plist_t message)
 {
 	int res;
@@ -395,21 +381,17 @@
 	plist_dict_insert_item(plist, "kLibUSBMuxVersion", plist_new_uint(PLIST_LIBUSBMUX_VERSION));
 	return plist;
 }
-#endif
 
 static int send_listen_packet(int sfd, uint32_t tag)
 {
 	int res = 0;
-#ifdef HAVE_PLIST
 	if (proto_version == 1) {
 		/* construct message plist */
 		plist_t plist = create_plist_message("Listen");
 
 		res = send_plist_packet(sfd, tag, plist);
 		plist_free(plist);
-	} else
-#endif
-	{
+	} else {
 		/* binary packet */
 		res = send_packet(sfd, MESSAGE_LISTEN, tag, NULL, 0);
 	}
@@ -419,7 +401,6 @@
 static int send_connect_packet(int sfd, uint32_t tag, uint32_t device_id, uint16_t port)
 {
 	int res = 0;
-#ifdef HAVE_PLIST
 	if (proto_version == 1) {
 		/* construct message plist */
 		plist_t plist = create_plist_message("Connect");
@@ -428,9 +409,7 @@
 
 		res = send_plist_packet(sfd, tag, plist);
 		plist_free(plist);
-	} else
-#endif
-	{
+	} else {
 		/* binary packet */
 		struct {
 			uint32_t device_id;
@@ -447,7 +426,6 @@
 	return res;
 }
 
-#ifdef HAVE_PLIST
 static int send_list_devices_packet(int sfd, uint32_t tag)
 {
 	int res = -1;
@@ -460,7 +438,6 @@
 
 	return res;
 }
-#endif
 
 /**
  * Generates an event, i.e. calls the callback function.
@@ -569,9 +546,7 @@
 	int sfd;
 	uint32_t res = -1;
 
-#ifdef HAVE_PLIST
 retry:
-#endif
 
 #ifdef HAVE_INOTIFY
 	sfd = usbmuxd_listen_inotify();
@@ -597,12 +572,10 @@
 	if (usbmuxd_get_result(sfd, use_tag, &res, NULL) && (res != 0)) {
 		UNLOCK;
 		close_socket(sfd);
-#ifdef HAVE_PLIST
 		if ((res == RESULT_BADVERSION) && (proto_version == 1)) {
 			proto_version = 0;
 			goto retry;
 		}
-#endif
 		DEBUG(1, "%s: ERROR: did not get OK but %d\n", __func__, res);
 		return -1;
 	}
@@ -810,9 +783,7 @@
 
 	*device_list = NULL;
 
-#ifdef HAVE_PLIST
 retry:
-#endif
 	sfd = connect_usbmuxd_socket();
 	if (sfd < 0) {
 		DEBUG(1, "%s: error opening socket!\n", __func__);
@@ -821,7 +792,6 @@
 
 	use_tag++;
 	LOCK;
-#ifdef HAVE_PLIST
 	if ((proto_version == 1) && (try_list_devices)) {
 		if (send_list_devices_packet(sfd, use_tag) > 0) {
 			plist_t list = NULL;
@@ -857,7 +827,7 @@
 			}
 		}
 	}
-#endif
+
 	if (send_listen_packet(sfd, use_tag) > 0) {
 		res = -1;
 		// get response
@@ -866,12 +836,10 @@
 		} else {
 			UNLOCK;
 			close_socket(sfd);
-#ifdef HAVE_PLIST
 			if ((res == RESULT_BADVERSION) && (proto_version == 1)) {
 				proto_version = 0;
 				goto retry;
 			}
-#endif
 			DEBUG(1, "%s: Did not get response to scan request (with result=0)...\n", __func__);
 			return res;
 		}
@@ -927,9 +895,8 @@
 			break;
 		}
 	}
-#ifdef HAVE_PLIST
+
 got_device_list:
-#endif
 	UNLOCK;
 
 	// explicitly close connection
@@ -1002,9 +969,7 @@
 	int connected = 0;
 	uint32_t res = -1;
 
-#ifdef HAVE_PLIST
 retry:
-#endif
 	sfd = connect_usbmuxd_socket();
 	if (sfd < 0) {
 		DEBUG(1, "%s: Error: Connection to usbmuxd failed: %s\n",
@@ -1023,13 +988,11 @@
 				DEBUG(2, "%s: Connect success!\n", __func__);
 				connected = 1;
 			} else {
-#ifdef HAVE_PLIST
 				if ((res == RESULT_BADVERSION) && (proto_version == 1)) {
 					proto_version = 0;
 					close_socket(sfd);
 					goto retry;
 				}
-#endif
 				DEBUG(1, "%s: Connect failed, Error code=%d\n", __func__, res);
 			}
 		}