1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00

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
This commit is contained in:
Volker Stolz 2005-02-11 17:35:49 +00:00
parent f31768b41c
commit 132e07d309
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=128532
3 changed files with 54 additions and 6 deletions

View File

@ -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"

View File

@ -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;

View File

@ -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