aboutsummaryrefslogtreecommitdiff
path: root/palm
diff options
context:
space:
mode:
authorVolker Stolz <vs@FreeBSD.org>2005-02-11 17:35:49 +0000
committerVolker Stolz <vs@FreeBSD.org>2005-02-11 17:35:49 +0000
commit132e07d309c7ffe4e3c7881312436880266130b1 (patch)
tree5852afbb6e8a3e4348836a18edbfe08500fff866 /palm
parentf31768b41c0949d849d6e42cb04d4fce682e4468 (diff)
downloadports-132e07d309c7ffe4e3c7881312436880266130b1.tar.gz
ports-132e07d309c7ffe4e3c7881312436880266130b1.zip
ColdSync 2.2.5 fails to work with devices running PalmOS 4.0 and above,
if (and only if) there is a password set on the Palm. The Palm claims that the desktop software is too old and should be upgraded. The patch below (essentially stolen from ColdSync 3.0) makes ColdSync claim that it supports DLP 1.3. Fix .info-handling while here PR: ports/69212 Submitted by: Helge Oldach Approved by: maintainer timeout
Notes
Notes: svn path=/head/; revision=128532
Diffstat (limited to 'palm')
-rw-r--r--palm/coldsync/Makefile4
-rw-r--r--palm/coldsync/files/patch-dlp_cmd51
-rw-r--r--palm/coldsync/pkg-plist5
3 files changed, 54 insertions, 6 deletions
diff --git a/palm/coldsync/Makefile b/palm/coldsync/Makefile
index 31c1a3f1f5db..326259acfc39 100644
--- a/palm/coldsync/Makefile
+++ b/palm/coldsync/Makefile
@@ -7,7 +7,7 @@
PORTNAME= coldsync
PORTVERSION= 2.2.5
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= palm comms
MASTER_SITES= http://www.coldsync.org/download/
@@ -43,6 +43,8 @@ MAN3= libpconn.3 DlpAddSyncLogEntry.3 DlpCallApplication.3 \
MAN8= coldsync.8
MANCOMPRESSED= no
+INFO= conduits
+
.include <bsd.port.pre.mk>
.if ${ARCH} == "sparc64"
diff --git a/palm/coldsync/files/patch-dlp_cmd b/palm/coldsync/files/patch-dlp_cmd
new file mode 100644
index 000000000000..6c65e292912c
--- /dev/null
+++ b/palm/coldsync/files/patch-dlp_cmd
@@ -0,0 +1,51 @@
+
+--- include/pconn/dlp_cmd.h.orig Sat Oct 6 20:04:35 2001
++++ include/pconn/dlp_cmd.h Sun Jul 18 00:24:28 2004
+@@ -199,6 +199,9 @@
+ #define DLPCMD_MODUIFLAG_VIEWERID 0x08 /* Viewer ID */
+
+ /** ReadSysInfo **/
++#define DLPARG_ReadSysInfo_Ver DLPARG_BASE
++#define DLPARGLEN_ReadSysInfo_Ver 4
++
+ #define DLPRET_ReadSysInfo_Info DLPRET_BASE
+ #define DLPRETLEN_ReadSysInfo_Info 14
+
+--- libpconn/dlp_cmd.c.orig Thu Oct 18 03:35:03 2001
++++ libpconn/dlp_cmd.c Sun Jul 18 00:24:28 2004
+@@ -343,7 +343,10 @@
+ int err;
+ struct dlp_req_header header; /* Request header */
+ struct dlp_resp_header resp_header; /* Response header */
++ struct dlp_arg argv[1]; /* Request argument list */
+ const struct dlp_arg *ret_argv; /* Response argument list */
++ static ubyte outbuf[DLPARGLEN_ReadSysInfo_Ver];
++ /* Buffer holding outgoing arg */
+ const ubyte *rptr; /* Pointer into buffers (for reading) */
+
+ DLPC_TRACE(1)
+@@ -351,10 +354,21 @@
+
+ /* Fill in the header values */
+ header.id = (ubyte) DLPCMD_ReadSysInfo;
+- header.argc = 0;
++ header.argc = 1;
++
++ /* Fill in the argument */
++
++ outbuf[0] = 0x00; /* We are telling our peer we support */
++ outbuf[1] = 0x01; /* DLP 1.3. Old PDAs will discard the argument. */
++ outbuf[2] = 0x00;
++ outbuf[3] = 0x03;
++
++ argv[0].id = DLPARG_ReadSysInfo_Ver;
++ argv[0].size = DLPARGLEN_ReadSysInfo_Ver;
++ argv[0].data = outbuf;
+
+ /* Send the DLP request */
+- err = dlp_send_req(pconn, &header, NULL);
++ err = dlp_send_req(pconn, &header, argv);
+ if (err < 0)
+ return err;
+
+
diff --git a/palm/coldsync/pkg-plist b/palm/coldsync/pkg-plist
index 4dd6f4807e74..017db0e040ba 100644
--- a/palm/coldsync/pkg-plist
+++ b/palm/coldsync/pkg-plist
@@ -1,10 +1,5 @@
bin/coldsync
etc/sample.coldsync.rc
-@unexec install-info --delete %D/info/conduits.info %D/info/dir
-info/conduits.info
-info/conduits.info-1
-info/conduits.info-2
-@exec install-info %D/info/conduits.info %D/info/dir
lib/libpconn.a
lib/libpconn.so
lib/libpconn.so.0