<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-14406</id>
	<title>Nabble - OpenSync</title>
	<updated>2009-12-16T09:08:09Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/OpenSync-f14406.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/OpenSync-f14406.html" />
	<subtitle type="html">OpenSync is a synchronization framework that is platform and distribution independent. It consists of several plugins that can be used to connect to devices, a powerful sync-engine and the framework itself. The synchronization framework is kept very flexible and is capable of synchronizing any type of data, including contacts, calendar, tasks, notes and files. OpenSync home is &lt;a href=&quot;http://www.opensync.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26814702</id>
	<title>Help to debug</title>
	<published>2009-12-16T09:08:09Z</published>
	<updated>2009-12-16T09:08:09Z</updated>
	<author>
		<name>Megandy</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'd like to help to debug opensync 0.22 since it hangs when I'm trying to sync my mobile Nokia E75 (over bluetooth) and Evolution (2.22.3.1). The sync starts using msynctool, reads both members, and starts to write items to each member. After successfully syncing some items it hangs:
&lt;br&gt;&lt;br&gt;--- snip ---
&lt;br&gt;[ ... ]
&lt;br&gt;Sent an entry 20091213T185341Z-16437-1000-1-124@Top of size 266 to member 1 (evo2-sync). Changetype MODIFIED
&lt;br&gt;Sent an entry 20091216T163930Z-8107-1000-1-86@Top of size 226 to member 1 (evo2-sync). Changetype MODIFIED
&lt;br&gt;Sent an entry 20091216T163930Z-8107-1000-1-87@Top of size 303 to member 1 (evo2-sync). Changetype MODIFIED
&lt;br&gt;Sent an entry 20091216T163930Z-8107-1000-1-89@Top of size 313 to member 1 (evo2-sync). Changetype MODIFIED
&lt;br&gt;--- snip ---
&lt;br&gt;&lt;br&gt;I detected recently that German umlauts (ä, ü, ö) have been handled uncorrectly and after removing some calendar entries with umlauts, opensync continued syncing for a while - after some days it stopped working again. 
&lt;br&gt;&lt;br&gt;My question: Is it possible to find out which item is being processed while showing &amp;quot;20091216T163930Z-8107-1000-1-89@Top&amp;quot;? Some debug mode or something similar which I can enable to find out on which item the sync stops.
&lt;br&gt;&lt;br&gt;Thank you in advance
&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Help-to-debug-tp26814702p26814702.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26770356</id>
	<title>opensync and n900</title>
	<published>2009-12-13T14:03:32Z</published>
	<updated>2009-12-13T14:03:32Z</updated>
	<author>
		<name>Rainer Dorsch</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;I am wondering if anybody has any experience with syncing the n900 addressbook 
&lt;br&gt;with a linux desktop (kdepim) with opensync.
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://wiki.maemo.org/Sync&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wiki.maemo.org/Sync&lt;/a&gt;&amp;nbsp;contains only the information that The N900 
&lt;br&gt;(preproduction) provides SyncML over Bluetooth and USB but not IP.
&lt;br&gt;&lt;br&gt;I tried
&lt;br&gt;&lt;br&gt;rd@blackbox:~$ syncml-obex-client -b &amp;lt;N900 BT address&amp;gt; 25 --slow-sync 
&lt;br&gt;text/x-vcard contacts --wbxml --identifier &amp;quot;PC Suite&amp;quot;
&lt;br&gt;Received an transport error: Link Error: 0x0
&lt;br&gt;Received an transport error: Unable to get answer
&lt;br&gt;Received an transport error: Link Error: 0x0
&lt;br&gt;rd@blackbox:~$
&lt;br&gt;&lt;br&gt;but no luck with libsyncml-utils 0.4.6
&lt;br&gt;&lt;br&gt;Many thanks,
&lt;br&gt;Rainer
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Rainer Dorsch
&lt;br&gt;Lärchenstr. 6
&lt;br&gt;D-72135 Dettenhausen
&lt;br&gt;07157-734133
&lt;br&gt;email: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770356&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rdorsch@...&lt;/a&gt;
&lt;br&gt;jabber: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770356&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rdorsch@...&lt;/a&gt;
&lt;br&gt;GPG Fingerprint: 5966 C54C 2B3C 42CC 1F4F &amp;nbsp;8F59 E3A8 C538 7519 141E
&lt;br&gt;Full GPG key: &lt;a href=&quot;http://pgp.mit.edu/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgp.mit.edu/&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Return on Information:
&lt;br&gt;Google Enterprise Search pays you back
&lt;br&gt;Get the facts.
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/google-dev2dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/google-dev2dev&lt;/a&gt;&lt;br&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26770356&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26770356/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/opensync-and-n900-tp26770356p26770356.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26766758</id>
	<title>How to avoid collisions on UIDs</title>
	<published>2009-12-13T06:54:11Z</published>
	<updated>2009-12-13T06:54:11Z</updated>
	<author>
		<name>boehmler</name>
	</author>
	<content type="html">Hi all,
&lt;br&gt;&lt;br&gt;I'm writing a sync plugin for v0.22 but got a problem understanding the UIDs.
&lt;br&gt;Assuming a group is newly set up with two plugins and a slow sync is started.
&lt;br&gt;How can plugin A set an UID to a OSyncChange in get_changeinfo() without
&lt;br&gt;knowing what UIDs plugin B is going to use for its changes? How can I avoid
&lt;br&gt;collisions there?
&lt;br&gt;&lt;br&gt;Can I just increase the highest, locally known UID for a new entry with status
&lt;br&gt;CHANGE_ADDED?
&lt;br&gt;And do I have to reset the UID counter back to 0 when a slow-sync is requested?
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;Eric 
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Return on Information:
&lt;br&gt;Google Enterprise Search pays you back
&lt;br&gt;Get the facts.
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/google-dev2dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/google-dev2dev&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26766758&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/How-to-avoid-collisions-on-UIDs-tp26766758p26766758.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26718861</id>
	<title>Re: Opensync 0.3x and beyond</title>
	<published>2009-12-09T14:24:36Z</published>
	<updated>2009-12-09T14:24:36Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">On Wed, Dec 09, 2009 at 01:51:53PM -0800, Theodore Charles III wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; As of right now, barry uses the Opensync 0.22 API. I was reading 
&lt;br&gt;&amp;gt; something in the FAQ in that the future versions of Opensync API will 
&lt;br&gt;&amp;gt; not have calendar syncing available. I quote:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Why there will be no calendar syncing with 0.3x or 0.40?
&lt;br&gt;&amp;gt; Because format (vFormat, xmlFormat) plugins are not complete before 
&lt;br&gt;&amp;gt; these releases due the fact that iCalendar and vCalendar handling is 
&lt;br&gt;&amp;gt; really complex. Conversion problems between RRULE's complicates the 
&lt;br&gt;&amp;gt; implementation. There is no Timezone handling at all in vCalendar. 90% 
&lt;br&gt;&amp;gt; all sync setups request by users involve iCalendar &amp;lt;-&amp;gt; vCalendar syncing.
&lt;/div&gt;&lt;br&gt;This is an opensync FAQ question, so I'll CC the opensync list as well.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://opensync.org/wiki/trunk/faq#why-no-calendar&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://opensync.org/wiki/trunk/faq#why-no-calendar&lt;/a&gt;&lt;br&gt;&lt;br&gt;While timezone support is indeed not available, as far as I know, I didn't
&lt;br&gt;think that it was a show stopper. &amp;nbsp;Version 0.22 doesn't have timezone
&lt;br&gt;support either.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; So, as far as the barry project goes, will this mean that barry will 
&lt;br&gt;&amp;gt; continue to use the 0.22 API for synchronizing?
&lt;br&gt;&lt;br&gt;Barry has both an 0.22 plugin and an 0.4x plugin. &amp;nbsp;The 0.4x plugin tracks
&lt;br&gt;the current opensync devel tree relatively closely. &amp;nbsp;You are free to use
&lt;br&gt;either, but understand that there are unique issues with each.
&lt;br&gt;&lt;br&gt;i.e. 0.22 lacks capability support, and sometimes requires a fresh sync
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to recover from hang problems
&lt;br&gt;&lt;br&gt;and 0.4x is not yet released, and is still in development.
&lt;br&gt;&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Return on Information:
&lt;br&gt;Google Enterprise Search pays you back
&lt;br&gt;Get the facts.
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/google-dev2dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/google-dev2dev&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26718861&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Opensync-0.3x-and-beyond-tp26718861p26718861.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26589546</id>
	<title>Re: Issue into the trunk ?</title>
	<published>2009-12-01T02:19:13Z</published>
	<updated>2009-12-01T02:19:13Z</updated>
	<author>
		<name>Ian Martin-3</name>
	</author>
	<content type="html">I believe you are seeing this problem: &lt;a href=&quot;http://opensync.org/ticket/1190&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://opensync.org/ticket/1190&lt;/a&gt;&lt;br&gt;&lt;br&gt;2009/11/30 Nicolas &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26589546&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;progweb@...&lt;/a&gt;&amp;gt;:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here, my output console :
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Received an entry 116 (vcard30) from member 2 (barry-sync). Changetype
&lt;br&gt;&amp;gt; ADDED
&lt;br&gt;&amp;gt; contact sink of member 2 of type barry-sync just sent all changes
&lt;br&gt;&amp;gt; Main sink of member 2 of type barry-sync just sent all changes
&lt;br&gt;&amp;gt; ERROR: Timeout.
&lt;br&gt;&amp;gt; EXIT_ERROR: _osync_send_timeout_response: cannot find reply queue to
&lt;br&gt;&amp;gt; send timeout error
&lt;br&gt;&amp;gt; Main sink of member 1 of type evo2-sync just sent all changes
&lt;br&gt;&amp;gt; All clients sent changes or error
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; All changes got mapped
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; All conflicts have been reported
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; All changes got multiplied
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; All changes got prepared for write
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Synchronization Forecast Summary:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ObjType: contact
&lt;br&gt;&amp;gt;        Member 1: Adding(112) Modifying(0) Deleting(0)
&lt;br&gt;&amp;gt;        Member 2: Adding(1) Modifying(0) Deleting(0)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Do you want to continue the synchronization? (N/y): ERROR: Broken Pipe
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; ERROR: Broken Pipe
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This issue is always reproductible :(
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I don't understand.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; If you have clues to help to debug this ; I could post a little patch...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I'll post SYNC traces into your bugtracker.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Regards,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Nicolas
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ------------------------------------------------------------------------------
&lt;br&gt;&amp;gt; Join us December 9, 2009 for the Red Hat Virtual Experience,
&lt;br&gt;&amp;gt; a free event focused on virtualization and cloud computing.
&lt;br&gt;&amp;gt; Attend in-depth sessions from your desk. Your couch. Anywhere.
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://p.sf.net/sfu/redhat-sfdev2dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/redhat-sfdev2dev&lt;/a&gt;&lt;br&gt;&amp;gt; _______________________________________________
&lt;br&gt;&amp;gt; Opensync-devel mailing list
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26589546&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Join us December 9, 2009 for the Red Hat Virtual Experience,
&lt;br&gt;a free event focused on virtualization and cloud computing. 
&lt;br&gt;Attend in-depth sessions from your desk. Your couch. Anywhere.
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/redhat-sfdev2dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/redhat-sfdev2dev&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26589546&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Issue-into-the-trunk---tp26583183p26589546.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26583183</id>
	<title>Issue into the trunk ?</title>
	<published>2009-11-30T14:28:28Z</published>
	<updated>2009-11-30T14:28:28Z</updated>
	<author>
		<name>Nicolas-89</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;Here, my output console :
&lt;br&gt;&lt;br&gt;Received an entry 116 (vcard30) from member 2 (barry-sync). Changetype
&lt;br&gt;ADDED
&lt;br&gt;contact sink of member 2 of type barry-sync just sent all changes
&lt;br&gt;Main sink of member 2 of type barry-sync just sent all changes
&lt;br&gt;ERROR: Timeout.
&lt;br&gt;EXIT_ERROR: _osync_send_timeout_response: cannot find reply queue to
&lt;br&gt;send timeout error
&lt;br&gt;Main sink of member 1 of type evo2-sync just sent all changes
&lt;br&gt;All clients sent changes or error
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;[...]
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;All changes got mapped
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;[...]
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;All conflicts have been reported
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;[...]
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;All changes got multiplied
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;[...]
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;All changes got prepared for write
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;&lt;br&gt;Synchronization Forecast Summary:
&lt;br&gt;&lt;br&gt;ObjType: contact
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Member 1: Adding(112) Modifying(0) Deleting(0)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Member 2: Adding(1) Modifying(0) Deleting(0)
&lt;br&gt;&lt;br&gt;Do you want to continue the synchronization? (N/y): ERROR: Broken Pipe
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;ERROR: Broken Pipe
&lt;br&gt;[...]
&lt;br&gt;&lt;br&gt;&lt;br&gt;This issue is always reproductible :(
&lt;br&gt;&lt;br&gt;I don't understand.
&lt;br&gt;&lt;br&gt;&lt;br&gt;If you have clues to help to debug this ; I could post a little patch...
&lt;br&gt;&lt;br&gt;&lt;br&gt;I'll post SYNC traces into your bugtracker.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;&lt;br&gt;Nicolas
&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Join us December 9, 2009 for the Red Hat Virtual Experience,
&lt;br&gt;a free event focused on virtualization and cloud computing. 
&lt;br&gt;Attend in-depth sessions from your desk. Your couch. Anywhere.
&lt;br&gt;&lt;a href=&quot;http://p.sf.net/sfu/redhat-sfdev2dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/redhat-sfdev2dev&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26583183&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Issue-into-the-trunk---tp26583183p26583183.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26514991</id>
	<title>Invitation to connect on LinkedIn</title>
	<published>2009-11-25T07:43:39Z</published>
	<updated>2009-11-25T07:43:39Z</updated>
	<author>
		<name>Shrikant Bobade</name>
	</author>
	<content type="html">
&lt;html&gt;
  &lt;body&gt;

  

&lt;table border=&quot;0&quot; width=&quot;550&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;max-width:550px; border-top:4px solid #39C; font: 12px arial, sans-serif; margin: 0 auto;&quot;&gt;&lt;tr&gt;&lt;td&gt;  
  &lt;h1 style=&quot;color: #000; font: bold 23px arial; margin:5px 0;&quot;&gt;LinkedIn&lt;/h1&gt;


&lt;div style=&quot;font:13px arial, sans-serif; width:540px&quot;&gt;
  &lt;p&gt;
    I'd like to add you to my professional network on LinkedIn.&lt;br /&gt;
&lt;br /&gt;
- Shrikant
  &lt;/p&gt;
  &lt;p&gt;
            &lt;a href=&quot;https://www.linkedin.com/e/isd/888410422/qODWlPaS/&quot; style=&quot;background-color:#ffcc00; display:inline-block; border-right: 1px solid #7a5a20; border-bottom: 1px solid #7a5a20; padding:10px; text-decoration: none; color: #000; text-align: center; white-space:none; font-weight: bold;&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Confirm that you know Shrikant&lt;/a&gt;
  &lt;/p&gt;
&lt;/div&gt;






  &lt;p style=&quot;width: 550px; margin: 3px auto; font: 10px arial, sans-serif; color: #999;&quot;&gt;&amp;#169; 2009, LinkedIn Corporation

&lt;/p&gt;

&lt;/body&gt;
&lt;/html&gt;&lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26514991&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Invitation-to-connect-on-LinkedIn-tp26514991p26514991.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26514997</id>
	<title>Invitation to connect on LinkedIn</title>
	<published>2009-11-25T07:43:39Z</published>
	<updated>2009-11-25T07:43:39Z</updated>
	<author>
		<name>Shrikant Bobade</name>
	</author>
	<content type="html">
&lt;html&gt;
  &lt;body&gt;

  

&lt;table border=&quot;0&quot; width=&quot;550&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;max-width:550px; border-top:4px solid #39C; font: 12px arial, sans-serif; margin: 0 auto;&quot;&gt;&lt;tr&gt;&lt;td&gt;  
  &lt;h1 style=&quot;color: #000; font: bold 23px arial; margin:5px 0;&quot;&gt;LinkedIn&lt;/h1&gt;


&lt;div style=&quot;font:13px arial, sans-serif; width:540px&quot;&gt;
  &lt;p&gt;
    I'd like to add you to my professional network on LinkedIn.&lt;br /&gt;
&lt;br /&gt;
- Shrikant
  &lt;/p&gt;
  &lt;p&gt;
            &lt;a href=&quot;https://www.linkedin.com/e/isd/888410426/JuLLDYTD/&quot; style=&quot;background-color:#ffcc00; display:inline-block; border-right: 1px solid #7a5a20; border-bottom: 1px solid #7a5a20; padding:10px; text-decoration: none; color: #000; text-align: center; white-space:none; font-weight: bold;&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Confirm that you know Shrikant&lt;/a&gt;
  &lt;/p&gt;
&lt;/div&gt;






  &lt;p style=&quot;width: 550px; margin: 3px auto; font: 10px arial, sans-serif; color: #999;&quot;&gt;&amp;#169; 2009, LinkedIn Corporation

&lt;/p&gt;

&lt;/body&gt;
&lt;/html&gt;&lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26514997&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Invitation-to-connect-on-LinkedIn-tp26514997p26514997.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26510743</id>
	<title>Re: collaboration proposal</title>
	<published>2009-11-25T02:52:10Z</published>
	<updated>2009-11-25T02:52:10Z</updated>
	<author>
		<name>Michael Bell</name>
	</author>
	<content type="html">-----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;Hash: SHA1
&lt;br&gt;&lt;br&gt;Hi Brian,
&lt;br&gt;&lt;br&gt;Brian Cavagnolo wrote:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Wind River has been evaluating libsyncml, and we're happy with the 
&lt;br&gt;&amp;gt; results so
&lt;br&gt;&amp;gt; far. &amp;nbsp;We'd like to collaborate to move some of our changes upstream. &amp;nbsp;
&lt;br&gt;&amp;gt; Also, we
&lt;br&gt;&amp;gt; have some other developments in mind that we'd also like to
&lt;br&gt;&amp;gt; discuss/collaborate/contribuite. &amp;nbsp;I've listed the rough areas in which the
&lt;br&gt;&amp;gt; changes fall. &amp;nbsp;Please comment if these changes sound useful, reasonable, 
&lt;br&gt;&amp;gt; etc.:
&lt;br&gt;&lt;br&gt;The simple answer is a big YES to all points. I only comment the points
&lt;br&gt;where I have more to say then only yes ;)
&lt;br&gt;&lt;br&gt;&amp;gt; 3. Split the ENABLE_HTTP functionality into two parts: 
&lt;br&gt;&amp;gt; ENABLE_HTTP_CLIENT and
&lt;br&gt;&amp;gt; ENABLE_HTTP_SERVER. &amp;nbsp;This will allow only building the required half.
&lt;br&gt;&lt;br&gt;Do you need this because of your different libraries for the client and
&lt;br&gt;server part?
&lt;br&gt;&lt;br&gt;&amp;gt; 4. Develop alternative HTTP client that does not depend on libsoup. &amp;nbsp;(We're
&lt;br&gt;&amp;gt; using libcurl instead). &amp;nbsp;We'd like to avoid depending on libsoup and the
&lt;br&gt;&amp;gt; portions of glib required to support it.
&lt;br&gt;&lt;br&gt;Which portions of the glib do you mean? libsoup is problematic for me
&lt;br&gt;because of the poor SSL/TLS support. The upcoming libsyncml 0.6.0 stuff
&lt;br&gt;(please see trunk) makes heavy use of the glib.
&lt;br&gt;&lt;br&gt;&amp;gt; 6. Migrate away from the heavy polling to a more event-driven model.
&lt;br&gt;&lt;br&gt;Definitely a long term wish from me.
&lt;br&gt;&lt;br&gt;So you are more than welcome. I hope you can split your patches into
&lt;br&gt;small parts. This would make it possible for me or/and you to port them
&lt;br&gt;to the new trunk.
&lt;br&gt;&lt;br&gt;Best regards
&lt;br&gt;&lt;br&gt;Michael
&lt;br&gt;&lt;br&gt;P.S. BTW we have a developer list.
&lt;br&gt;- --
&lt;br&gt;___________________________________________________________________
&lt;br&gt;&lt;br&gt;Michael Bell &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Humboldt-Universitaet zu Berlin
&lt;br&gt;&lt;br&gt;Tel.: +49 (0)30-2093 2482 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ZE Computer- und Medienservice
&lt;br&gt;Fax: &amp;nbsp;+49 (0)30-2093 2704 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unter den Linden 6
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26510743&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;michael.bell@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; D-10099 Berlin
&lt;br&gt;___________________________________________________________________
&lt;br&gt;&lt;br&gt;PGP Fingerprint: 09E4 3D29 4156 2774 0F2C &amp;nbsp;C643 D8BD 1918 2030 5AAB
&lt;br&gt;-----BEGIN PGP SIGNATURE-----
&lt;br&gt;Version: GnuPG v1.4.10 (GNU/Linux)
&lt;br&gt;Comment: Using GnuPG with Mozilla - &lt;a href=&quot;http://enigmail.mozdev.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://enigmail.mozdev.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;iEYEARECAAYFAksNDIIACgkQ2L0ZGCAwWqtNnwCg1HjbX6juR+Qf6VnHl0RG0RX2
&lt;br&gt;6HYAn3uNQJyhau2zt5XVLIR+1WAv0fwT
&lt;br&gt;=FLrl
&lt;br&gt;-----END PGP SIGNATURE-----
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26510743&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/collaboration-proposal-tp26501330p26510743.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26501330</id>
	<title>collaboration proposal</title>
	<published>2009-11-24T10:47:41Z</published>
	<updated>2009-11-24T10:47:41Z</updated>
	<author>
		<name>Brian Cavagnolo-2</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;Wind River has been evaluating libsyncml, and we're happy with the 
&lt;br&gt;results so
&lt;br&gt;far. &amp;nbsp;We'd like to collaborate to move some of our changes upstream. &amp;nbsp;
&lt;br&gt;Also, we
&lt;br&gt;have some other developments in mind that we'd also like to
&lt;br&gt;discuss/collaborate/contribuite. &amp;nbsp;I've listed the rough areas in which the
&lt;br&gt;changes fall. &amp;nbsp;Please comment if these changes sound useful, reasonable, 
&lt;br&gt;etc.:
&lt;br&gt;&lt;br&gt;1. Fix bugs in the syncml-ds-tool HTTP client behavior.
&lt;br&gt;&lt;br&gt;2. Introduce some regular automated tests for syncml-ds-tool that spawn a
&lt;br&gt;server, spawn a client, perform syncs, and analyze the results.
&lt;br&gt;&lt;br&gt;3. Split the ENABLE_HTTP functionality into two parts: 
&lt;br&gt;ENABLE_HTTP_CLIENT and
&lt;br&gt;ENABLE_HTTP_SERVER. &amp;nbsp;This will allow only building the required half.
&lt;br&gt;&lt;br&gt;4. Develop alternative HTTP client that does not depend on libsoup. &amp;nbsp;(We're
&lt;br&gt;using libcurl instead). &amp;nbsp;We'd like to avoid depending on libsoup and the
&lt;br&gt;portions of glib required to support it.
&lt;br&gt;&lt;br&gt;5. Develop an alternative HTTP server that does not depend on libsoup. &amp;nbsp;
&lt;br&gt;(We're
&lt;br&gt;using libmicrohttpd instead).
&lt;br&gt;&lt;br&gt;6. Migrate away from the heavy polling to a more event-driven model.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Brian
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26501330&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/collaboration-proposal-tp26501330p26501330.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26454859</id>
	<title>Re: Capabilities and ticket 1183.</title>
	<published>2009-11-21T01:20:50Z</published>
	<updated>2009-11-21T01:20:50Z</updated>
	<author>
		<name>Henrik /KaarPoSoft-2</name>
	</author>
	<content type="html">Daniel Gollub wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Monday 09 November 2009 07:19:37 pm Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; However, I have a question:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Assume we have a group with two members M1 and M2.
&lt;br&gt;&amp;gt;&amp;gt; Member M1 supports ObjFormat F1 with capabilities CAP1, and member M2 
&lt;br&gt;&amp;gt;&amp;gt; supports ObjFormat F2 with capabilities CAP2.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The function _osync_obj_engine_mapping_find will try to compare two 
&lt;br&gt;&amp;gt;&amp;gt; changes CHANGE1 and CHANGE2 from the two members.
&lt;br&gt;&amp;gt;&amp;gt; This is done by: _osync_obj_engine_clone_and_demerge_change(CAPS2, 
&lt;br&gt;&amp;gt;&amp;gt; CHANGE1) and _osync_obj_engine_clone_and_demerge_change(CAPS1, CHANGE2).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; This means, that an ObjFormat F1, which supplies a (de)merger with 
&lt;br&gt;&amp;gt;&amp;gt; capabilties CAP1, needs to be able to demerge changes of ObjFormat F2, 
&lt;br&gt;&amp;gt;&amp;gt; which it does not know.
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; OSyncCapsConverter take care about converting the caps-format to something the 
&lt;br&gt;&amp;gt; demerge of F1 can handle ...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; For example the vformat plugins provides a caps-format converter for vformat 
&lt;br&gt;&amp;gt; to xmlformat capabilities.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; So if the caps are reported in caps-format vformat .. and the entry to compare 
&lt;br&gt;&amp;gt; is in xmlformat-contact, the caps get converted by this caps-format-converter 
&lt;br&gt;&amp;gt; ...
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; Some guidance on how the is supposed to work would be most appreciated.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Does this help?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;Yes! Thank you very much for the explanation.
&lt;br&gt;I will see what I can do...
&lt;br&gt;/Henrik
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26454859&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Capabilities-and-ticket-1183.-tp26271193p26454859.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26442045</id>
	<title>Re: Capabilities and ticket 1183.</title>
	<published>2009-11-20T03:48:46Z</published>
	<updated>2009-11-20T03:48:46Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Monday 09 November 2009 07:19:37 pm Henrik /KaarPoSoft wrote:
&lt;div class='shrinkable-quote'&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; However, I have a question:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Assume we have a group with two members M1 and M2.
&lt;br&gt;&amp;gt; Member M1 supports ObjFormat F1 with capabilities CAP1, and member M2 
&lt;br&gt;&amp;gt; supports ObjFormat F2 with capabilities CAP2.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The function _osync_obj_engine_mapping_find will try to compare two 
&lt;br&gt;&amp;gt; changes CHANGE1 and CHANGE2 from the two members.
&lt;br&gt;&amp;gt; This is done by: _osync_obj_engine_clone_and_demerge_change(CAPS2, 
&lt;br&gt;&amp;gt; CHANGE1) and _osync_obj_engine_clone_and_demerge_change(CAPS1, CHANGE2).
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; This means, that an ObjFormat F1, which supplies a (de)merger with 
&lt;br&gt;&amp;gt; capabilties CAP1, needs to be able to demerge changes of ObjFormat F2, 
&lt;br&gt;&amp;gt; which it does not know.
&lt;/div&gt;&lt;/div&gt;OSyncCapsConverter take care about converting the caps-format to something the 
&lt;br&gt;demerge of F1 can handle ...
&lt;br&gt;&lt;br&gt;For example the vformat plugins provides a caps-format converter for vformat 
&lt;br&gt;to xmlformat capabilities.
&lt;br&gt;&lt;br&gt;So if the caps are reported in caps-format vformat .. and the entry to compare 
&lt;br&gt;is in xmlformat-contact, the caps get converted by this caps-format-converter 
&lt;br&gt;...
&lt;br&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Some guidance on how the is supposed to work would be most appreciated.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;Does this help?
&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26442045&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26442045&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26442045/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Capabilities-and-ticket-1183.-tp26271193p26442045.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26378047</id>
	<title>Re: Could we have several versions of a plugin	configuration file?</title>
	<published>2009-11-16T11:34:54Z</published>
	<updated>2009-11-16T11:34:54Z</updated>
	<author>
		<name>Henrik /KaarPoSoft-2</name>
	</author>
	<content type="html">Chris Frey wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Thu, Nov 12, 2009 at 04:37:21PM +0100, Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; Obviously a Frontend may have specific knowledge of specific plugins and 
&lt;br&gt;&amp;gt;&amp;gt; create an even better GUI, but it would be nice if a Frontend could 
&lt;br&gt;&amp;gt;&amp;gt; automatically create a GUI for any OpenSync plugin automatically.
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; How is it possible to create a GUI for any plugin at the moment?
&lt;br&gt;&amp;gt; What if there are plugin-specific fields? &amp;nbsp;How do you label them or
&lt;br&gt;&amp;gt; describe them in the GUI?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;blueZync is actually doing this at the moment.
&lt;br&gt;Far from perfect, but a start.
&lt;br&gt;See attached screenshots.
&lt;br&gt;&lt;br&gt;The frontend simply creates a GUI based on advanced options and resources.
&lt;br&gt;&amp;gt; Would this have anything to do with these points:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Subject: Config's AdvancedOption XML entity: Help?
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_name=20090221040116.GA15434%40foursquare.net&amp;forum_name=opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sourceforge.net/mailarchive/forum.php?thread_name=20090221040116.GA15434%40foursquare.net&amp;forum_name=opensync-devel&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Subject: localization in plugin configs
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_name=20091003014003.GA7477%40foursquare.net&amp;forum_name=opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sourceforge.net/mailarchive/forum.php?thread_name=20091003014003.GA7477%40foursquare.net&amp;forum_name=opensync-devel&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;Those would improve the GUI which could be presented.
&lt;br&gt;&lt;br&gt;/Henrik
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26378047&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26378047.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26368339</id>
	<title>Re: [SPAM] I'm in desperate need for a guide</title>
	<published>2009-11-16T00:30:18Z</published>
	<updated>2009-11-16T00:30:18Z</updated>
	<author>
		<name>Tino Keitel-3</name>
	</author>
	<content type="html">On Sun, Nov 15, 2009 at 00:24:28 +0800, Yiping Cheng wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; Thank you very much! I have tried and achieved partial success. But
&lt;br&gt;&amp;gt; there seems to still have plenty of problems waiting me. &amp;nbsp;I now know
&lt;br&gt;&amp;gt; how to install glib2, simply the sequence: ./configure; make; make
&lt;br&gt;&amp;gt; install but when executing ./configure, it said it needs gettext. &amp;nbsp;So
&lt;br&gt;&amp;gt; I also downloaded gettext and installed gettext. &amp;nbsp;but gettext did not
&lt;br&gt;&amp;gt; install smoothly. &amp;nbsp;I now have no idea how to proceed. &amp;nbsp;I have given
&lt;br&gt;&amp;gt; up.
&lt;br&gt;&lt;br&gt;That's what package managers are intended for. They just install the
&lt;br&gt;required packages for you. &amp;nbsp;However, for some reason, you used the most
&lt;br&gt;error prone way (for unexperienced users) to install software in Linux.
&lt;br&gt;&lt;br&gt;&amp;gt; I used to write programs under Windows and Visual Studio and I never
&lt;br&gt;&amp;gt; experienced such problems before. &amp;nbsp;And I now hate Linux so much that
&lt;br&gt;&amp;gt; I now swear I will not touch it again. &amp;nbsp;The project I undertake is to
&lt;br&gt;&amp;gt; develop a PIM program using SyncML, and I need to study the SyncML
&lt;br&gt;&lt;br&gt;Haha, you made my day.
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;Tino
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26368339&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-SPAM--I%27m-in-desperate-need-for-a-guide-tp26332186p26368339.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26367185</id>
	<title>Re: osync_archive_save_ignored_conflict()</title>
	<published>2009-11-15T21:47:09Z</published>
	<updated>2009-11-15T21:47:09Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Friday 13 November 2009 10:33:12 pm Chris Frey wrote:
&lt;br&gt;&amp;gt; I noticed that your patch added a prototype for
&lt;br&gt;&amp;gt; osync_mapping_entry_get_member_id() to the
&lt;br&gt;&amp;gt; &amp;nbsp;opensync_mapping_entry_internals.h header.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Yet that function already exists in opensync_mapping_entry.h
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Was this intended?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;No, this was not intended. I reverted it ... thanks for finding this!
&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26367185&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26367185&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26367185/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/osync_archive_save_ignored_conflict%28%29-tp26240527p26367185.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26358502</id>
	<title>Re: new printf format checks and compiler settings</title>
	<published>2009-11-15T04:01:11Z</published>
	<updated>2009-11-15T04:01:11Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Friday 13 November 2009 10:30:03 pm Chris Frey wrote:
&lt;div class='shrinkable-quote'&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Thu, Nov 12, 2009 at 04:36:40PM -0500, Chris Frey wrote:
&lt;br&gt;&amp;gt; &amp;gt; I think the GCC_FORMAT_CHECK is worth it in the long run (there were lots
&lt;br&gt;&amp;gt; &amp;gt; of printf style errors in the code), but the (void*) casts are
&lt;br&gt;&amp;gt; &amp;gt; unfortunate. Anyone know of a cleaner workaround?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; After a conversation on #gcc on irc.freenode.net (thanks to segher),
&lt;br&gt;&amp;gt; I had the following enlightenment:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the C standard does not guarantee that all pointers are the same
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; size on all platforms
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - for example, data pointers and function pointers can have
&lt;br&gt;&amp;gt; &amp;nbsp;differing formats
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the C standard guarantees that you can cast all pointers to void*
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; and back
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the %p format string identifier only takes a void*
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - vararg functions cannot provide implicit casts, since there is
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; no prototype for the variable data
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - so in general, to be standard-C correct, you need to cast all
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; %p pointers to vararg functions
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the -pedantic option makes all this show up explicitly, but in
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; most cases you don't need it, at least with gcc
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Basically there's no way around it, except disabling -pedantic in your
&lt;br&gt;&amp;gt; compiles, or adding (void*) casts to all %p pointers.
&lt;br&gt;&amp;gt; 
&lt;/div&gt;&lt;/div&gt;Thank you very much for sharing this knowledge!
&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26358502&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26358502&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26358502/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/new-printf-format-checks-and-compiler-settings-tp26326915p26358502.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26348439</id>
	<title>Re: mozilla-format FORMAT plugin?</title>
	<published>2009-11-14T01:06:34Z</published>
	<updated>2009-11-14T01:06:34Z</updated>
	<author>
		<name>Graham Cobb-4</name>
	</author>
	<content type="html">On Tue, Nov 10, 2009 at 01:46:46AM +0100, Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; Now the question is: Where to put the definition of the C struct and the 
&lt;br&gt;&amp;gt; wrapping functions?
&lt;br&gt;&lt;br&gt;My suggestion would be to put the struct and wrapping functions in a
&lt;br&gt;completely separate library (nothing to do with Opensync) which you then use
&lt;br&gt;from both the format plugin and the sync plugin.
&lt;br&gt;&lt;br&gt;Your new library would, of course, become a dependency of the plugins. &amp;nbsp;I
&lt;br&gt;think there would be three options for distributing it:
&lt;br&gt;&lt;br&gt;1) Statically link it and don't distribute it at all. &amp;nbsp;This would require
&lt;br&gt;getting Daniel to create you somewhere in the tree to store the library but
&lt;br&gt;you wouldn't be shipping the code at all. &amp;nbsp;CMake magic could compile it
&lt;br&gt;whenever needed by either plugin.
&lt;br&gt;&lt;br&gt;2) Completely separate it from OpenSync: build it and distribute it
&lt;br&gt;separately and just make sure the CMake scripts for the two plugins
&lt;br&gt;correctly check for it being installed. &amp;nbsp;A variant of this would be to ask
&lt;br&gt;Daniel to still host it in the OpenSync SVN somewhere but build it and
&lt;br&gt;distribute it separately (a bit like libsyncml).
&lt;br&gt;&lt;br&gt;3) Have it built and installed as part of the building of your plugins -- so
&lt;br&gt;building either your format plugin or your sync plugin would require
&lt;br&gt;previously building and installing your new library. &amp;nbsp;Easy enough to do
&lt;br&gt;manually although it would be an extra step for anyone who wanted to build
&lt;br&gt;your plugins.
&lt;br&gt;&lt;br&gt;Graham
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26348439&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/mozilla-format-FORMAT-plugin--tp26276439p26348439.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26344766</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-13T14:47:57Z</published>
	<updated>2009-11-13T14:47:57Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">On Thu, Nov 12, 2009 at 04:37:21PM +0100, Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; Obviously a Frontend may have specific knowledge of specific plugins and 
&lt;br&gt;&amp;gt; create an even better GUI, but it would be nice if a Frontend could 
&lt;br&gt;&amp;gt; automatically create a GUI for any OpenSync plugin automatically.
&lt;br&gt;&lt;br&gt;How is it possible to create a GUI for any plugin at the moment?
&lt;br&gt;What if there are plugin-specific fields? &amp;nbsp;How do you label them or
&lt;br&gt;describe them in the GUI?
&lt;br&gt;&lt;br&gt;Would this have anything to do with these points:
&lt;br&gt;&lt;br&gt;Subject: Config's AdvancedOption XML entity: Help?
&lt;br&gt;&lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_name=20090221040116.GA15434%40foursquare.net&amp;forum_name=opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sourceforge.net/mailarchive/forum.php?thread_name=20090221040116.GA15434%40foursquare.net&amp;forum_name=opensync-devel&lt;/a&gt;&lt;br&gt;&lt;br&gt;Subject: localization in plugin configs
&lt;br&gt;&lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_name=20091003014003.GA7477%40foursquare.net&amp;forum_name=opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sourceforge.net/mailarchive/forum.php?thread_name=20091003014003.GA7477%40foursquare.net&amp;forum_name=opensync-devel&lt;/a&gt;&lt;br&gt;&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26344766&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26344766.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26349342</id>
	<title>[RFC][PATCH][API change] long long patch</title>
	<published>2009-11-13T13:40:12Z</published>
	<updated>2009-11-13T13:40:12Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;At long last, I present my long long patch, which also changes the various
&lt;br&gt;ID variables into typedefs in the process. &amp;nbsp;I think this makes the code
&lt;br&gt;cleaner, and easier to change in the future. &amp;nbsp;So even if we don't want
&lt;br&gt;to change mappingids, memberids, etc to ints, we should keep the
&lt;br&gt;typedefs in my opinion.
&lt;br&gt;&lt;br&gt;This is a Request for Comments patch only. &amp;nbsp;If it is satisfactory, I
&lt;br&gt;can apply it in a few days.
&lt;br&gt;&lt;br&gt;It is fairly large, but the changes are as limited in scope as possible.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;[PATCH] Removed all unnecessary long longs from IDs, and gave IDs typedef names
&lt;br&gt;&lt;br&gt;The new ID types are:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; typedef int osync_memberid;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; typedef int osync_mappingid;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; typedef int osync_groupid;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; typedef long long int osync_archiveid;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; typedef long long int osync_messageid;
&lt;br&gt;&lt;br&gt;osync_archiveid is 64 bits because the ID is the row ID of the underlying
&lt;br&gt;database. &amp;nbsp;This must match the database used.
&lt;br&gt;&lt;br&gt;Note that there is a bug in the implementation where the above 64 bit
&lt;br&gt;IDs are crammed into a 32 bit pointer on 32 bit systems. &amp;nbsp;The
&lt;br&gt;implementation should be fixed, not the size of the osync_archiveid.
&lt;br&gt;Look for FIXME's in the code.
&lt;br&gt;&lt;br&gt;osync_messageid is 64 bits because 6 bytes are used for the time in
&lt;br&gt;seconds and microseconds, and the lower 2 bytes are a random number,
&lt;br&gt;to create a unique IPC message ID.
&lt;br&gt;&lt;br&gt;The other 3 IDs usually start at 1 or 0 and increment from there,
&lt;br&gt;and int should be completely sufficient for them.
&lt;br&gt;---
&lt;br&gt;&amp;nbsp;opensync/archive/opensync_archive.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; 51 +++++++++++---------
&lt;br&gt;&amp;nbsp;opensync/archive/opensync_archive_internals.h &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;8 ++--
&lt;br&gt;&amp;nbsp;opensync/client/opensync_client.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;opensync/client/opensync_client_proxy.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;6 +-
&lt;br&gt;&amp;nbsp;opensync/engine/opensync_engine.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; 10 ++--
&lt;br&gt;&amp;nbsp;opensync/engine/opensync_engine_private.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/engine/opensync_mapping_engine.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; 12 ++--
&lt;br&gt;&amp;nbsp;opensync/engine/opensync_mapping_engine.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/engine/opensync_obj_engine.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; 12 ++--
&lt;br&gt;&amp;nbsp;opensync/engine/opensync_sink_engine.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_group.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; 14 +++---
&lt;br&gt;&amp;nbsp;opensync/group/opensync_group.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;6 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_group_env.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;8 ++--
&lt;br&gt;&amp;nbsp;opensync/group/opensync_group_env_private.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_group_internals.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_group_private.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_member.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_member.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/group/opensync_member_internals.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/ipc/opensync_message.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;opensync/ipc/opensync_message_internals.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;opensync/ipc/opensync_message_private.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/ipc/opensync_queue.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;6 +-
&lt;br&gt;&amp;nbsp;opensync/ipc/opensync_queue_private.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;6 +-
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;6 +-
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping_entry.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;8 ++--
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping_entry.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;8 ++--
&lt;br&gt;&amp;nbsp;.../mapping/opensync_mapping_entry_internals.h &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;6 +-
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping_internals.h &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping_table.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; 14 +++--
&lt;br&gt;&amp;nbsp;opensync/mapping/opensync_mapping_table.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;opensync/opensync.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;5 ++
&lt;br&gt;&amp;nbsp;opensync/plugin/opensync_plugin_info_private.h &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;tests/archive-tests/check_archive.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;8 ++--
&lt;br&gt;&amp;nbsp;tests/mock-plugin/mock_sync.c &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;| &amp;nbsp; &amp;nbsp;2 +-
&lt;br&gt;&amp;nbsp;wrapper/opensync-group.i &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; | &amp;nbsp; &amp;nbsp;4 +-
&lt;br&gt;&amp;nbsp;37 files changed, 129 insertions(+), 117 deletions(-)
&lt;br&gt;&lt;br&gt;diff --git a/opensync/archive/opensync_archive.c b/opensync/archive/opensync_archive.c
&lt;br&gt;index d3fbe8a..16e0d87 100644
&lt;br&gt;--- a/opensync/archive/opensync_archive.c
&lt;br&gt;+++ b/opensync/archive/opensync_archive.c
&lt;br&gt;@@ -204,12 +204,12 @@ void osync_archive_unref(OSyncArchive *archive)
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-osync_bool osync_archive_save_data(OSyncArchive *archive, long long int id, const char *objtype, const char *data, unsigned int size, OSyncError **error)
&lt;br&gt;+osync_bool osync_archive_save_data(OSyncArchive *archive, osync_mappingid id, const char *objtype, const char *data, unsigned int size, OSyncError **error)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	char *query = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objtype = NULL;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %lli, %s, %p, %u, %p)&amp;quot;, __func__, archive, id, objtype, data, size, error);
&lt;br&gt;+	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %i, %s, %p, %u, %p)&amp;quot;, __func__, archive, id, objtype, data, size, error);
&lt;br&gt;&amp;nbsp;	osync_assert(archive);
&lt;br&gt;&amp;nbsp;	osync_assert(data);
&lt;br&gt;&amp;nbsp;	osync_assert(size);
&lt;br&gt;@@ -219,7 +219,7 @@ osync_bool osync_archive_save_data(OSyncArchive *archive, long long int id, cons
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	// FIXME: Avoid subselect - this query needs up to 0.5s
&lt;br&gt;&amp;nbsp;	escaped_objtype = osync_db_sql_escape(objtype);
&lt;br&gt;-	query = osync_strdup_printf(&amp;quot;REPLACE INTO tbl_archive (objtype, mappingid, data) VALUES('%s', %lli, ?)&amp;quot;, escaped_objtype, id);
&lt;br&gt;+	query = osync_strdup_printf(&amp;quot;REPLACE INTO tbl_archive (objtype, mappingid, data) VALUES('%s', %i, ?)&amp;quot;, escaped_objtype, id);
&lt;br&gt;&amp;nbsp;	osync_free(escaped_objtype);
&lt;br&gt;&amp;nbsp;	escaped_objtype = NULL;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;@@ -281,14 +281,14 @@ int osync_archive_load_data(OSyncArchive *archive, const char *uid, const char *
&lt;br&gt;&amp;nbsp;	return -1;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_archive_save_change(OSyncArchive *archive, long long int id, const char *uid, const char *objtype, long long int mappingid, long long int memberid, const char *objengine, OSyncError **error)
&lt;br&gt;+osync_archiveid osync_archive_save_change(OSyncArchive *archive, osync_archiveid id, const char *uid, const char *objtype, osync_mappingid mappingid, osync_memberid memberid, const char *objengine, OSyncError **error)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	char *query = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_uid = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objtype = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objengine = NULL;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %lli, %s, %s, %lli, %lli, %p, %p)&amp;quot;, __func__, archive, id, uid, objtype, mappingid, memberid, __NULLSTR(objengine), error);
&lt;br&gt;+	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %lli, %s, %s, %i, %i, %p, %p)&amp;quot;, __func__, archive, id, uid, objtype, mappingid, memberid, __NULLSTR(objengine), error);
&lt;br&gt;&amp;nbsp;	osync_assert(archive);
&lt;br&gt;&amp;nbsp;	osync_assert(uid);
&lt;br&gt;&amp;nbsp;	osync_assert(objtype);
&lt;br&gt;@@ -302,9 +302,9 @@ long long int osync_archive_save_change(OSyncArchive *archive, long long int id,
&lt;br&gt;&amp;nbsp;	escaped_objengine = osync_db_sql_escape(objengine);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	if (!id) {
&lt;br&gt;-		query = osync_strdup_printf(&amp;quot;INSERT INTO tbl_changes (objtype, uid, mappingid, memberid, objengine) VALUES('%s', '%s', '%lli', '%lli', '%s')&amp;quot;, escaped_objtype, escaped_uid, mappingid, memberid, objengine);
&lt;br&gt;+		query = osync_strdup_printf(&amp;quot;INSERT INTO tbl_changes (objtype, uid, mappingid, memberid, objengine) VALUES('%s', '%s', '%i', '%i', '%s')&amp;quot;, escaped_objtype, escaped_uid, mappingid, memberid, objengine);
&lt;br&gt;&amp;nbsp;	} else {
&lt;br&gt;-		query = osync_strdup_printf(&amp;quot;UPDATE tbl_changes SET uid='%s', mappingid='%lli', memberid='%lli', objengine='%s' WHERE objtype='%s' AND id=%lli&amp;quot;, escaped_uid, mappingid, memberid, escaped_objengine, escaped_objtype, id);
&lt;br&gt;+		query = osync_strdup_printf(&amp;quot;UPDATE tbl_changes SET uid='%s', mappingid='%i', memberid='%i', objengine='%s' WHERE objtype='%s' AND id=%lli&amp;quot;, escaped_uid, mappingid, memberid, escaped_objengine, escaped_objtype, id);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;	osync_free(escaped_objengine);
&lt;br&gt;&amp;nbsp;	osync_free(escaped_objtype);
&lt;br&gt;@@ -331,7 +331,7 @@ long long int osync_archive_save_change(OSyncArchive *archive, long long int id,
&lt;br&gt;&amp;nbsp;	return 0;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-osync_bool osync_archive_delete_change(OSyncArchive *archive, long long int id, const char *objtype, OSyncError **error)
&lt;br&gt;+osync_bool osync_archive_delete_change(OSyncArchive *archive, osync_archiveid id, const char *objtype, OSyncError **error)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	char *query = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objtype = NULL;
&lt;br&gt;@@ -366,7 +366,9 @@ osync_bool osync_archive_load_changes(OSyncArchive *archive, const char *objtype
&lt;br&gt;&amp;nbsp;	char *query = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objtype = NULL;
&lt;br&gt;&amp;nbsp;	OSyncList *result = NULL, *row = NULL, *column = NULL;
&lt;br&gt;-	long long int id = 0, mappingid = 0, memberid = 0;
&lt;br&gt;+	osync_archiveid id = 0;
&lt;br&gt;+	osync_mappingid mappingid = 0;
&lt;br&gt;+	osync_memberid memberid = 0;
&lt;br&gt;&amp;nbsp;	const char *uid = NULL;
&lt;br&gt;&amp;nbsp;	const char *value_str = NULL;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;@@ -420,21 +422,23 @@ osync_bool osync_archive_load_changes(OSyncArchive *archive, const char *objtype
&lt;br&gt;&amp;nbsp;			osync_error_set(error, OSYNC_ERROR_GENERIC, &amp;quot;Database table tbl_changes corrupt, mappingid is NULL&amp;quot;);
&lt;br&gt;&amp;nbsp;			goto error;
&lt;br&gt;&amp;nbsp;		}
&lt;br&gt;-		mappingid = g_ascii_strtoull(value_str, NULL, 0);
&lt;br&gt;+		mappingid = strtoul(value_str, NULL, 0);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;		value_str = osync_list_nth_data(column, 3);
&lt;br&gt;&amp;nbsp;		if (!value_str) {
&lt;br&gt;&amp;nbsp;			osync_error_set(error, OSYNC_ERROR_GENERIC, &amp;quot;Database table tbl_changes corrupt, memberid is NULL&amp;quot;);
&lt;br&gt;&amp;nbsp;			goto error;
&lt;br&gt;&amp;nbsp;		}
&lt;br&gt;-		memberid = g_ascii_strtoull(value_str, NULL, 0);
&lt;br&gt;+		memberid = strtoul(value_str, NULL, 0);
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;+		// FIXME - this (int) cast throws away part of the id's 64 bits
&lt;br&gt;+		// and these 64 bits are governed by the DB layer's row ID
&lt;br&gt;&amp;nbsp;		*ids = osync_list_append((*ids), GINT_TO_POINTER((int)id));
&lt;br&gt;&amp;nbsp;		*uids = osync_list_append((*uids), osync_strdup(uid));
&lt;br&gt;-		*mappingids = osync_list_append((*mappingids), GINT_TO_POINTER((int)mappingid));
&lt;br&gt;-		*memberids = osync_list_append((*memberids), GINT_TO_POINTER((int)memberid));
&lt;br&gt;+		*mappingids = osync_list_append((*mappingids), GINT_TO_POINTER(mappingid));
&lt;br&gt;+		*memberids = osync_list_append((*memberids), GINT_TO_POINTER(memberid));
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;-		osync_trace(TRACE_INTERNAL, &amp;quot;Loaded change with uid %s, mappingid %lli from member %lli&amp;quot;, uid, mappingid, memberid);
&lt;br&gt;+		osync_trace(TRACE_INTERNAL, &amp;quot;Loaded change with uid %s, mappingid %i from member %i&amp;quot;, uid, mappingid, memberid);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	osync_db_free_list(result);	
&lt;br&gt;@@ -483,7 +487,8 @@ osync_bool osync_archive_load_ignored_conflicts(OSyncArchive *archive, const cha
&lt;br&gt;&amp;nbsp;	OSyncList *result = NULL, *row = NULL, *column = NULL;
&lt;br&gt;&amp;nbsp;	char *query = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objtype = NULL;
&lt;br&gt;-	long long int mappingid = 0, memberid = 0;
&lt;br&gt;+	osync_mappingid mappingid = 0;
&lt;br&gt;+	osync_memberid memberid = 0;
&lt;br&gt;&amp;nbsp;	int changetype = 0;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %s, %p, %p)&amp;quot;, __func__, archive, objtype, mappingids, error);
&lt;br&gt;@@ -516,11 +521,11 @@ osync_bool osync_archive_load_ignored_conflicts(OSyncArchive *archive, const cha
&lt;br&gt;&amp;nbsp;		mappingid = atoi(osync_list_nth_data(column, 1));
&lt;br&gt;&amp;nbsp;		changetype = atoi(osync_list_nth_data(column, 2));
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;-		*memberids = osync_list_append((*memberids), GINT_TO_POINTER((int)memberid));
&lt;br&gt;-		*mappingids = osync_list_append((*mappingids), GINT_TO_POINTER((int)mappingid));
&lt;br&gt;-		*changetypes = osync_list_append((*changetypes), GINT_TO_POINTER((int)changetype));
&lt;br&gt;+		*memberids = osync_list_append((*memberids), GINT_TO_POINTER(memberid));
&lt;br&gt;+		*mappingids = osync_list_append((*mappingids), GINT_TO_POINTER(mappingid));
&lt;br&gt;+		*changetypes = osync_list_append((*changetypes), GINT_TO_POINTER(changetype));
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;-		osync_trace(TRACE_INTERNAL, &amp;quot;Loaded ignored mapping with mappingid %lli&amp;quot;, mappingid);
&lt;br&gt;+		osync_trace(TRACE_INTERNAL, &amp;quot;Loaded ignored mapping with mappingid %i&amp;quot;, mappingid);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	osync_db_free_list(result);	
&lt;br&gt;@@ -532,11 +537,11 @@ osync_bool osync_archive_load_ignored_conflicts(OSyncArchive *archive, const cha
&lt;br&gt;&amp;nbsp;	return FALSE;	
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char *objtype, long long int memberid, long long int mappingid, OSyncChangeType changetype, OSyncError **error)
&lt;br&gt;+osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char *objtype, osync_memberid memberid, osync_mappingid mappingid, OSyncChangeType changetype, OSyncError **error)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	char *query = NULL;
&lt;br&gt;&amp;nbsp;	char *escaped_objtype = NULL;
&lt;br&gt;-	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %s, %lli, %lli, %p)&amp;quot;, __func__, archive, objtype, memberid, mappingid, error);
&lt;br&gt;+	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %s, %i, %i, %p)&amp;quot;, __func__, archive, objtype, memberid, mappingid, error);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	osync_assert(archive);
&lt;br&gt;&amp;nbsp;	osync_assert(objtype);
&lt;br&gt;@@ -545,7 +550,7 @@ osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char
&lt;br&gt;&amp;nbsp;		goto error;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	escaped_objtype = osync_db_sql_escape(objtype);
&lt;br&gt;-	query = osync_strdup_printf(&amp;quot;INSERT INTO tbl_changelog (objtype, memberid, mappingid, changetype) VALUES('%s', '%lli', '%lli', '%i')&amp;quot;, escaped_objtype, memberid, mappingid, changetype);
&lt;br&gt;+	query = osync_strdup_printf(&amp;quot;INSERT INTO tbl_changelog (objtype, memberid, mappingid, changetype) VALUES('%s', '%i', '%i', '%i')&amp;quot;, escaped_objtype, memberid, mappingid, changetype);
&lt;br&gt;&amp;nbsp;	osync_free(escaped_objtype);
&lt;br&gt;&amp;nbsp;	escaped_objtype = NULL;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;@@ -556,7 +561,7 @@ osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	osync_free(query);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	osync_trace(TRACE_EXIT, &amp;quot;%s: %lli&amp;quot;, __func__, mappingid);
&lt;br&gt;+	osync_trace(TRACE_EXIT, &amp;quot;%s: %i&amp;quot;, __func__, mappingid);
&lt;br&gt;&amp;nbsp;	return TRUE;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp; error:
&lt;br&gt;diff --git a/opensync/archive/opensync_archive_internals.h b/opensync/archive/opensync_archive_internals.h
&lt;br&gt;index 4757f88..56e8cf4 100644
&lt;br&gt;--- a/opensync/archive/opensync_archive_internals.h
&lt;br&gt;+++ b/opensync/archive/opensync_archive_internals.h
&lt;br&gt;@@ -80,7 +80,7 @@ OSYNC_TEST_EXPORT osync_bool osync_archive_load_changes(OSyncArchive *archive, c
&lt;br&gt;&amp;nbsp; * @param error Pointer to an error struct
&lt;br&gt;&amp;nbsp; * @return Returns TRUE on success otherwise FALSE
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_TEST_EXPORT osync_bool osync_archive_save_data(OSyncArchive *archive, long long int id, const char *objtype, const char *data, unsigned int size, OSyncError **error);
&lt;br&gt;+OSYNC_TEST_EXPORT osync_bool osync_archive_save_data(OSyncArchive *archive, osync_mappingid id, const char *objtype, const char *data, unsigned int size, OSyncError **error);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Loads data of an entry which is stored in the group archive database (blob).
&lt;br&gt;@@ -108,7 +108,7 @@ OSYNC_TEST_EXPORT int osync_archive_load_data(OSyncArchive *archive, const char
&lt;br&gt;&amp;nbsp; * @param error Pointer to an error struct
&lt;br&gt;&amp;nbsp; * @return Returns number of entries in archive group database. 0 on error. 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_TEST_EXPORT long long int osync_archive_save_change(OSyncArchive *archive, long long int id, const char *uid, const char *objtype, long long int mappingid, long long int memberid, const char *objengine, OSyncError **error);
&lt;br&gt;+OSYNC_TEST_EXPORT osync_archiveid osync_archive_save_change(OSyncArchive *archive, osync_archiveid id, const char *uid, const char *objtype, osync_mappingid mappingid, osync_memberid memberid, const char *objengine, OSyncError **error);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Deletes an entry from a group archive.
&lt;br&gt;@@ -119,7 +119,7 @@ OSYNC_TEST_EXPORT long long int osync_archive_save_change(OSyncArchive *archive,
&lt;br&gt;&amp;nbsp; * @param error Pointer to an error struct
&lt;br&gt;&amp;nbsp; * @return TRUE if the specified change was deleted successfully, otherwise FALSE
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-osync_bool osync_archive_delete_change(OSyncArchive *archive, long long int id, const char *objtype, OSyncError **error);
&lt;br&gt;+osync_bool osync_archive_delete_change(OSyncArchive *archive, osync_archiveid id, const char *objtype, OSyncError **error);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Delete all changes from group archive for a certain object type.
&lt;br&gt;@@ -155,7 +155,7 @@ osync_bool osync_archive_load_ignored_conflicts(OSyncArchive *archive, const cha
&lt;br&gt;&amp;nbsp; * @param error Pointer to an error struct
&lt;br&gt;&amp;nbsp; * @return Returns TRUE on success, FALSE otherwise 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char *objtype, long long int memberid, long long int mappingid, OSyncChangeType changetype, OSyncError **error);
&lt;br&gt;+osync_bool osync_archive_save_ignored_conflict(OSyncArchive *archive, const char *objtype, osync_memberid memberid, osync_mappingid mappingid, OSyncChangeType changetype, OSyncError **error);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Deletes all ignored conflict entries of the changelog with the objtype.
&lt;br&gt;diff --git a/opensync/client/opensync_client.c b/opensync/client/opensync_client.c
&lt;br&gt;index 4b77fa8..89079ae 100644
&lt;br&gt;--- a/opensync/client/opensync_client.c
&lt;br&gt;+++ b/opensync/client/opensync_client.c
&lt;br&gt;@@ -783,8 +783,8 @@ static osync_bool _osync_client_handle_initialize(OSyncClient *client, OSyncMess
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;#ifdef OPENSYNC_UNITTESTS
&lt;br&gt;&amp;nbsp;	{
&lt;br&gt;-		long long int memberid;
&lt;br&gt;-		if (!osync_message_read_long_long_int(message, &amp;memberid, error)) // Introduced (only) for testing/debugging purpose (mock-sync)
&lt;br&gt;+		osync_memberid memberid;
&lt;br&gt;+		if (!osync_message_read_int(message, &amp;memberid, error)) // Introduced (only) for testing/debugging purpose (mock-sync)
&lt;br&gt;&amp;nbsp;			goto error;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;		client-&amp;gt;plugin_info-&amp;gt;memberid = memberid;
&lt;br&gt;diff --git a/opensync/client/opensync_client_proxy.c b/opensync/client/opensync_client_proxy.c
&lt;br&gt;index bbe0b24..666942a 100644
&lt;br&gt;--- a/opensync/client/opensync_client_proxy.c
&lt;br&gt;+++ b/opensync/client/opensync_client_proxy.c
&lt;br&gt;@@ -1068,7 +1068,7 @@ osync_bool osync_client_proxy_spawn(OSyncClientProxy *proxy, OSyncStartType type
&lt;br&gt;&amp;nbsp;					osync_queue_disconnect(read2, error);
&lt;br&gt;&amp;nbsp;						
&lt;br&gt;&amp;nbsp;					osync_trace(TRACE_INTERNAL, &amp;quot;About to exec osplugin&amp;quot;);
&lt;br&gt;-					//char *memberstring = g_strdup_printf(&amp;quot;%lli&amp;quot;, osync_member_get_id(proxy-&amp;gt;member));
&lt;br&gt;+					//char *memberstring = g_strdup_printf(&amp;quot;%i&amp;quot;, osync_member_get_id(proxy-&amp;gt;member));
&lt;br&gt;&amp;nbsp;					//execlp(&amp;quot;osplugin&amp;quot;, &amp;quot;osplugin&amp;quot;, osync_group_get_configdir(osync_member_get_group(osync_proxy_get_member(proxy)), memberstring, NULL);
&lt;br&gt;&amp;nbsp;					readfd = osync_strdup_printf(&amp;quot;%i&amp;quot;, osync_queue_get_fd(read1));
&lt;br&gt;&amp;nbsp;					writefd = osync_strdup_printf(&amp;quot;%i&amp;quot;, osync_queue_get_fd(write2));
&lt;br&gt;@@ -1293,7 +1293,7 @@ osync_bool osync_client_proxy_initialize(OSyncClientProxy *proxy, initialize_cb
&lt;br&gt;&amp;nbsp;	int haspluginconfig = config ? TRUE : FALSE;
&lt;br&gt;&amp;nbsp;	OSyncMessage *message = NULL;
&lt;br&gt;&amp;nbsp;#ifdef OPENSYNC_UNITTESTS
&lt;br&gt;-	long long int memberid = 0;
&lt;br&gt;+	osync_memberid memberid = 0;
&lt;br&gt;&amp;nbsp;#endif
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %p, %p, %s, %s, %s, %s, %s, %p, %p)&amp;quot;, __func__, proxy, callback, userdata, formatdir, plugindir, plugin, groupname, configdir, config, error);
&lt;br&gt;@@ -1355,7 +1355,7 @@ osync_bool osync_client_proxy_initialize(OSyncClientProxy *proxy, initialize_cb
&lt;br&gt;&amp;nbsp;	if (proxy-&amp;gt;member)
&lt;br&gt;&amp;nbsp;		memberid = osync_member_get_id(proxy-&amp;gt;member);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-	osync_message_write_long_long_int(message, memberid, error);
&lt;br&gt;+	osync_message_write_int(message, memberid, error);
&lt;br&gt;&amp;nbsp;#endif	
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	osync_message_set_handler(message, _osync_client_proxy_init_handler, ctx);
&lt;br&gt;diff --git a/opensync/engine/opensync_engine.c b/opensync/engine/opensync_engine.c
&lt;br&gt;index ccd6e40..3e0a72b 100644
&lt;br&gt;--- a/opensync/engine/opensync_engine.c
&lt;br&gt;+++ b/opensync/engine/opensync_engine.c
&lt;br&gt;@@ -195,7 +195,7 @@ static void _osync_engine_receive_change(OSyncClientProxy *proxy, void *userdata
&lt;br&gt;&amp;nbsp;	OSyncError *error = NULL;
&lt;br&gt;&amp;nbsp;	osync_bool found = FALSE;
&lt;br&gt;&amp;nbsp;	OSyncMember *member = NULL;
&lt;br&gt;-	long long int memberid = 0;
&lt;br&gt;+	osync_memberid memberid = 0;
&lt;br&gt;&amp;nbsp;	const char *uid = NULL;
&lt;br&gt;&amp;nbsp;	OSyncChangeType changetype = 0;
&lt;br&gt;&amp;nbsp;	const char *format = NULL;
&lt;br&gt;@@ -217,7 +217,7 @@ static void _osync_engine_receive_change(OSyncClientProxy *proxy, void *userdata
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	objtype_sink = osync_member_find_objtype_sink(member, objtype);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-	osync_trace(TRACE_INTERNAL, &amp;quot;Received change %s, changetype %i, format %s, objtype %s from member %lli&amp;quot;, uid, changetype, format, objtype, memberid);
&lt;br&gt;+	osync_trace(TRACE_INTERNAL, &amp;quot;Received change %s, changetype %i, format %s, objtype %s from member %i&amp;quot;, uid, changetype, format, objtype, memberid);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	data = osync_change_get_data(change);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;@@ -233,7 +233,7 @@ static void _osync_engine_receive_change(OSyncClientProxy *proxy, void *userdata
&lt;br&gt;&amp;nbsp;		objtype = osync_objformat_get_objtype(detected_format);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	member_objtype = osync_strdup_printf(&amp;quot;%lli_%s&amp;quot;, memberid, objtype); 
&lt;br&gt;+	member_objtype = osync_strdup_printf(&amp;quot;%i_%s&amp;quot;, memberid, objtype); 
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	/* Convert the format to the internal format */
&lt;br&gt;&amp;nbsp;	internalFormat = _osync_engine_get_internal_format(engine, objtype);
&lt;br&gt;@@ -1127,7 +1127,7 @@ void osync_engine_trace_multiply_summary(OSyncEngine *engine)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	OSyncList *o;
&lt;br&gt;&amp;nbsp;	unsigned int added, modified, deleted, unmodified, unknown, total, n;
&lt;br&gt;-	long long int memberid;
&lt;br&gt;+	osync_memberid memberid;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	if (!osync_trace_is_enabled())
&lt;br&gt;&amp;nbsp;		return;
&lt;br&gt;@@ -1176,7 +1176,7 @@ void osync_engine_trace_multiply_summary(OSyncEngine *engine)
&lt;br&gt;&amp;nbsp;				}
&lt;br&gt;&amp;nbsp;			}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-			osync_trace(TRACE_INTERNAL, &amp;quot;\tMember: %lli &amp;quot;
&lt;br&gt;+			osync_trace(TRACE_INTERNAL, &amp;quot;\tMember: %i &amp;quot;
&lt;br&gt;&amp;nbsp;					&amp;quot;added:%u modified:%u deleted:%u &amp;quot;
&lt;br&gt;&amp;nbsp;					&amp;quot;(unmodified:%u unknown:%u)&amp;quot;,
&lt;br&gt;&amp;nbsp;					memberid, added, modified, deleted, unmodified, unknown);
&lt;br&gt;diff --git a/opensync/engine/opensync_engine_private.h b/opensync/engine/opensync_engine_private.h
&lt;br&gt;index bee860c..7e4cf8b 100644
&lt;br&gt;--- a/opensync/engine/opensync_engine_private.h
&lt;br&gt;+++ b/opensync/engine/opensync_engine_private.h
&lt;br&gt;@@ -176,7 +176,7 @@ struct OSyncEngineMappingUpdate {
&lt;br&gt;&amp;nbsp;	/** The type of the status update */
&lt;br&gt;&amp;nbsp;	OSyncEngineMappingEvent type;
&lt;br&gt;&amp;nbsp;	/** If the mapping was already solved, this will have the id if the winning entry */
&lt;br&gt;-	long long int winner;
&lt;br&gt;+	osync_memberid winner;
&lt;br&gt;&amp;nbsp;	/** The mapping for which the status update is */
&lt;br&gt;&amp;nbsp;	OSyncMapping *mapping;
&lt;br&gt;&amp;nbsp;	/** If the status was a error, this error will be set */
&lt;br&gt;diff --git a/opensync/engine/opensync_mapping_engine.c b/opensync/engine/opensync_mapping_engine.c
&lt;br&gt;index a40d02f..6c81066 100644
&lt;br&gt;--- a/opensync/engine/opensync_mapping_engine.c
&lt;br&gt;+++ b/opensync/engine/opensync_mapping_engine.c
&lt;br&gt;@@ -284,7 +284,7 @@ osync_bool osync_mapping_engine_multiply(OSyncMappingEngine *engine, OSyncError
&lt;br&gt;&amp;nbsp;	osync_assert(engine);
&lt;br&gt;&amp;nbsp;	osync_assert(engine-&amp;gt;mapping);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p(%lli), %p)&amp;quot;, __func__, engine, osync_mapping_get_id(engine-&amp;gt;mapping), error);
&lt;br&gt;+	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p(%i), %p)&amp;quot;, __func__, engine, osync_mapping_get_id(engine-&amp;gt;mapping), error);
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;&amp;nbsp;	if (engine-&amp;gt;synced) {
&lt;br&gt;&amp;nbsp;		osync_trace(TRACE_EXIT, &amp;quot;%s: No need to multiply. Already synced&amp;quot;, __func__);
&lt;br&gt;@@ -578,7 +578,7 @@ OSyncChange *osync_mapping_engine_nth_change(OSyncMappingEngine *engine, unsigne
&lt;br&gt;&amp;nbsp;	return NULL;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-OSyncChange *osync_mapping_engine_member_change(OSyncMappingEngine *engine, long long int memberid)
&lt;br&gt;+OSyncChange *osync_mapping_engine_member_change(OSyncMappingEngine *engine, osync_memberid memberid)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	OSyncList *e = NULL;
&lt;br&gt;&amp;nbsp;	osync_assert(engine);
&lt;br&gt;@@ -620,7 +620,7 @@ osync_bool osync_mapping_engine_ignore(OSyncMappingEngine *engine, OSyncError **
&lt;br&gt;&amp;nbsp;	OSyncObjEngine *objengine = NULL;
&lt;br&gt;&amp;nbsp;	OSyncArchive *archive = NULL;
&lt;br&gt;&amp;nbsp;	char *objtype = NULL;
&lt;br&gt;-	long long int id = 0;
&lt;br&gt;+	osync_mappingid id = 0;
&lt;br&gt;&amp;nbsp;	OSyncList *c = NULL;
&lt;br&gt;&amp;nbsp;	osync_trace(TRACE_ENTRY, &amp;quot;%s(%p, %p)&amp;quot;, __func__, engine, error);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;@@ -705,15 +705,15 @@ osync_bool osync_mapping_engine_duplicate(OSyncMappingEngine *existingMapping, O
&lt;br&gt;&amp;nbsp;		OSyncMappingEntryEngine *entry = e-&amp;gt;data;
&lt;br&gt;&amp;nbsp;		if (entry-&amp;gt;change) {
&lt;br&gt;&amp;nbsp;			if (osync_change_get_changetype(entry-&amp;gt;change) == OSYNC_CHANGE_TYPE_MODIFIED || osync_change_get_changetype(entry-&amp;gt;change) == OSYNC_CHANGE_TYPE_ADDED) {
&lt;br&gt;-				osync_trace(TRACE_INTERNAL, &amp;quot;Appending entry %s, changetype %i from member %lli&amp;quot;, osync_change_get_uid(entry-&amp;gt;change), osync_change_get_changetype(entry-&amp;gt;change), osync_member_get_id(osync_client_proxy_get_member(entry-&amp;gt;sink_engine-&amp;gt;proxy)));
&lt;br&gt;+				osync_trace(TRACE_INTERNAL, &amp;quot;Appending entry %s, changetype %i from member %i&amp;quot;, osync_change_get_uid(entry-&amp;gt;change), osync_change_get_changetype(entry-&amp;gt;change), osync_member_get_id(osync_client_proxy_get_member(entry-&amp;gt;sink_engine-&amp;gt;proxy)));
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;&amp;nbsp;				entries = osync_list_append(entries, entry);
&lt;br&gt;&amp;nbsp;			} else {
&lt;br&gt;-				osync_trace(TRACE_INTERNAL, &amp;quot;Removing entry %s, changetype %i from member %lli&amp;quot;, osync_change_get_uid(entry-&amp;gt;change), osync_change_get_changetype(entry-&amp;gt;change), osync_member_get_id(osync_client_proxy_get_member(entry-&amp;gt;sink_engine-&amp;gt;proxy)));
&lt;br&gt;+				osync_trace(TRACE_INTERNAL, &amp;quot;Removing entry %s, changetype %i from member %i&amp;quot;, osync_change_get_uid(entry-&amp;gt;change), osync_change_get_changetype(entry-&amp;gt;change), osync_member_get_id(osync_client_proxy_get_member(entry-&amp;gt;sink_engine-&amp;gt;proxy)));
&lt;br&gt;&amp;nbsp;				osync_entry_engine_update(entry, NULL);
&lt;br&gt;&amp;nbsp;			}
&lt;br&gt;&amp;nbsp;		} else {
&lt;br&gt;-			osync_trace(TRACE_INTERNAL, &amp;quot;member %lli does not have a entry&amp;quot;, osync_member_get_id(osync_client_proxy_get_member(entry-&amp;gt;sink_engine-&amp;gt;proxy)));
&lt;br&gt;+			osync_trace(TRACE_INTERNAL, &amp;quot;member %i does not have a entry&amp;quot;, osync_member_get_id(osync_client_proxy_get_member(entry-&amp;gt;sink_engine-&amp;gt;proxy)));
&lt;br&gt;&amp;nbsp;		}
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;diff --git a/opensync/engine/opensync_mapping_engine.h b/opensync/engine/opensync_mapping_engine.h
&lt;br&gt;index 8655e21..cf53cc9 100644
&lt;br&gt;--- a/opensync/engine/opensync_mapping_engine.h
&lt;br&gt;+++ b/opensync/engine/opensync_mapping_engine.h
&lt;br&gt;@@ -28,7 +28,7 @@
&lt;br&gt;&amp;nbsp; * @param memberid The member id of the request change.
&lt;br&gt;&amp;nbsp; * @returns The pointer to the change of the member. NULL if member doesn't have an entry in this mapping.
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT OSyncChange *osync_mapping_engine_member_change(OSyncMappingEngine *engine, long long int memberid);
&lt;br&gt;+OSYNC_EXPORT OSyncChange *osync_mapping_engine_member_change(OSyncMappingEngine *engine, osync_memberid memberid);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;OSYNC_EXPORT OSyncMember *osync_mapping_engine_change_find_member(OSyncMappingEngine *engine, OSyncChange *change);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/engine/opensync_obj_engine.c b/opensync/engine/opensync_obj_engine.c
&lt;br&gt;index fc8487f..fd5ee6b 100644
&lt;br&gt;--- a/opensync/engine/opensync_obj_engine.c
&lt;br&gt;+++ b/opensync/engine/opensync_obj_engine.c
&lt;br&gt;@@ -385,8 +385,8 @@ osync_bool osync_obj_engine_map_changes(OSyncObjEngine *engine, OSyncError **err
&lt;br&gt;&amp;nbsp;		 * the current sinkengine, since there will be only one entry (for the current sinkengine) so there
&lt;br&gt;&amp;nbsp;		 * is no need to compare */
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-		long long int memberid = osync_member_get_id(osync_client_proxy_get_member(sinkengine-&amp;gt;proxy));
&lt;br&gt;-		osync_trace(TRACE_INTERNAL, &amp;quot;Sinkengine of member %lli&amp;quot;, memberid);
&lt;br&gt;+		osync_memberid memberid = osync_member_get_id(osync_client_proxy_get_member(sinkengine-&amp;gt;proxy));
&lt;br&gt;+		osync_trace(TRACE_INTERNAL, &amp;quot;Sinkengine of member %i&amp;quot;, memberid);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;		unmapped_mappings = osync_list_copy(new_mappings);
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;@@ -394,7 +394,7 @@ osync_bool osync_obj_engine_map_changes(OSyncObjEngine *engine, OSyncError **err
&lt;br&gt;&amp;nbsp;		while (sinkengine-&amp;gt;unmapped) {
&lt;br&gt;&amp;nbsp;			OSyncChange *change = sinkengine-&amp;gt;unmapped-&amp;gt;data;
&lt;br&gt;&amp;nbsp;			
&lt;br&gt;-			osync_trace(TRACE_INTERNAL, &amp;quot;Looking for mapping for change %s, changetype %i from member %lli&amp;quot;, osync_change_get_uid(change), osync_change_get_changetype(change), memberid);
&lt;br&gt;+			osync_trace(TRACE_INTERNAL, &amp;quot;Looking for mapping for change %s, changetype %i from member %i&amp;quot;, osync_change_get_uid(change), osync_change_get_changetype(change), memberid);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;			/* See if there is an exisiting mapping, which fits the unmapped change */
&lt;br&gt;&amp;nbsp;			result = _osync_obj_engine_mapping_find(unmapped_mappings, change, sinkengine, &amp;mapping_engine, error);
&lt;br&gt;@@ -405,7 +405,7 @@ osync_bool osync_obj_engine_map_changes(OSyncObjEngine *engine, OSyncError **err
&lt;br&gt;&amp;nbsp;					if (!mapping_engine)
&lt;br&gt;&amp;nbsp;						goto error;
&lt;br&gt;&amp;nbsp;					
&lt;br&gt;-					osync_trace(TRACE_INTERNAL, &amp;quot;Unable to find mapping. Creating new mapping with id %lli&amp;quot;, osync_mapping_get_id(mapping_engine-&amp;gt;mapping));
&lt;br&gt;+					osync_trace(TRACE_INTERNAL, &amp;quot;Unable to find mapping. Creating new mapping with id %i&amp;quot;, osync_mapping_get_id(mapping_engine-&amp;gt;mapping));
&lt;br&gt;&amp;nbsp;					/* TODO: what about _prepend (O(1)) instead of _append (O(n))? Order doesn't matter here - right? */
&lt;br&gt;&amp;nbsp;					new_mappings = osync_list_append(new_mappings, mapping_engine);
&lt;br&gt;&amp;nbsp;					unmapped_mappings = osync_list_append(unmapped_mappings, mapping_engine);
&lt;br&gt;@@ -634,7 +634,7 @@ void osync_obj_engine_commit_change_callback(OSyncClientProxy *proxy, void *user
&lt;br&gt;&amp;nbsp;	OSyncMappingEntry *entry = NULL;
&lt;br&gt;&amp;nbsp;	const char *objtype = NULL;
&lt;br&gt;&amp;nbsp;	const char *objengine_objtype = NULL;
&lt;br&gt;-	long long int id = 0;
&lt;br&gt;+	osync_mappingid id = 0;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	objengine_objtype = osync_obj_engine_get_objtype(engine);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;@@ -784,7 +784,7 @@ static osync_bool _inject_changelog_entries(OSyncObjEngine *engine, OSyncError *
&lt;br&gt;&amp;nbsp;	t = changetypes;
&lt;br&gt;&amp;nbsp;	mid = memberids;
&lt;br&gt;&amp;nbsp;	for (j = ids; j; j = j-&amp;gt;next) {
&lt;br&gt;-		long long int id = (long long int)GPOINTER_TO_INT(j-&amp;gt;data);
&lt;br&gt;+		osync_archiveid id = GPOINTER_TO_INT(j-&amp;gt;data);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;		OSyncMapping *ignored_mapping = osync_mapping_table_find_mapping(engine-&amp;gt;mapping_table, id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/engine/opensync_sink_engine.c b/opensync/engine/opensync_sink_engine.c
&lt;br&gt;index f1065dd..639e24a 100644
&lt;br&gt;--- a/opensync/engine/opensync_sink_engine.c
&lt;br&gt;+++ b/opensync/engine/opensync_sink_engine.c
&lt;br&gt;@@ -230,7 +230,7 @@ osync_bool osync_sink_engine_write(OSyncSinkEngine *engine, OSyncArchive *archiv
&lt;br&gt;&amp;nbsp;			OSyncChange *change = osync_entry_engine_get_change(entry_engine);
&lt;br&gt;&amp;nbsp;			osync_assert(change);
&lt;br&gt;&amp;nbsp;				
&lt;br&gt;-			osync_trace(TRACE_INTERNAL, &amp;quot;Writing change %s, changetype %i, format %s , objtype %s from member %lli&amp;quot;, 
&lt;br&gt;+			osync_trace(TRACE_INTERNAL, &amp;quot;Writing change %s, changetype %i, format %s , objtype %s from member %i&amp;quot;, 
&lt;br&gt;&amp;nbsp;					osync_change_get_uid(change), 
&lt;br&gt;&amp;nbsp;					osync_change_get_changetype(change), 
&lt;br&gt;&amp;nbsp;					osync_objformat_get_name(osync_change_get_objformat(change)), 
&lt;br&gt;diff --git a/opensync/group/opensync_group.c b/opensync/group/opensync_group.c
&lt;br&gt;index 81e0abb..ffb3c6b 100644
&lt;br&gt;--- a/opensync/group/opensync_group.c
&lt;br&gt;+++ b/opensync/group/opensync_group.c
&lt;br&gt;@@ -76,16 +76,16 @@ static int flock(int fd, int operation)
&lt;br&gt;&amp;nbsp;#endif //not defined _WIN32
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static long long int osync_group_create_member_id(OSyncGroup *group)
&lt;br&gt;+static osync_memberid osync_group_create_member_id(OSyncGroup *group)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	char *filename = NULL;
&lt;br&gt;-	long long int i = 0;
&lt;br&gt;+	osync_memberid i = 0;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	do {
&lt;br&gt;&amp;nbsp;		i++;
&lt;br&gt;&amp;nbsp;		if (filename)
&lt;br&gt;&amp;nbsp;			osync_free(filename);
&lt;br&gt;-		filename = osync_strdup_printf(&amp;quot;%s%c%lli&amp;quot;, group-&amp;gt;configdir, G_DIR_SEPARATOR, i);
&lt;br&gt;+		filename = osync_strdup_printf(&amp;quot;%s%c%i&amp;quot;, group-&amp;gt;configdir, G_DIR_SEPARATOR, i);
&lt;br&gt;&amp;nbsp;	} while (g_file_test(filename, G_FILE_TEST_EXISTS));
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	osync_free(filename);
&lt;br&gt;@@ -778,7 +778,7 @@ void osync_group_add_member(OSyncGroup *group, OSyncMember *member)
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	if (!osync_member_get_configdir(member)) {
&lt;br&gt;&amp;nbsp;		member-&amp;gt;id = osync_group_create_member_id(group);
&lt;br&gt;-		char *configdir = osync_strdup_printf(&amp;quot;%s%c%lli&amp;quot;, group-&amp;gt;configdir, G_DIR_SEPARATOR, member-&amp;gt;id);
&lt;br&gt;+		char *configdir = osync_strdup_printf(&amp;quot;%s%c%i&amp;quot;, group-&amp;gt;configdir, G_DIR_SEPARATOR, member-&amp;gt;id);
&lt;br&gt;&amp;nbsp;		osync_member_set_configdir(member, configdir);
&lt;br&gt;&amp;nbsp;		osync_free(configdir);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;@@ -794,7 +794,7 @@ void osync_group_remove_member(OSyncGroup *group, OSyncMember *member)
&lt;br&gt;&amp;nbsp;	osync_member_unref(member);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-OSyncMember *osync_group_find_member(OSyncGroup *group, long long int id)
&lt;br&gt;+OSyncMember *osync_group_find_member(OSyncGroup *group, osync_memberid id)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	OSyncList *m = NULL;
&lt;br&gt;&amp;nbsp;	for (m = group-&amp;gt;members; m; m = m-&amp;gt;next) {
&lt;br&gt;@@ -980,14 +980,14 @@ time_t osync_group_get_last_synchronization(OSyncGroup *group)
&lt;br&gt;&amp;nbsp;	return group-&amp;gt;last_sync;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-void osync_group_set_conflict_resolution(OSyncGroup *group, OSyncConflictResolution res, long long int winner)
&lt;br&gt;+void osync_group_set_conflict_resolution(OSyncGroup *group, OSyncConflictResolution res, osync_memberid winner)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(group);
&lt;br&gt;&amp;nbsp;	group-&amp;gt;conflict_resolution = res;
&lt;br&gt;&amp;nbsp;	group-&amp;gt;conflict_winner = winner;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-void osync_group_get_conflict_resolution(OSyncGroup *group, OSyncConflictResolution *res, long long int *winner)
&lt;br&gt;+void osync_group_get_conflict_resolution(OSyncGroup *group, OSyncConflictResolution *res, osync_memberid *winner)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(group);
&lt;br&gt;&amp;nbsp;	osync_assert(res);
&lt;br&gt;diff --git a/opensync/group/opensync_group.h b/opensync/group/opensync_group.h
&lt;br&gt;index adb8fc6..9a47305 100644
&lt;br&gt;--- a/opensync/group/opensync_group.h
&lt;br&gt;+++ b/opensync/group/opensync_group.h
&lt;br&gt;@@ -193,7 +193,7 @@ OSYNC_EXPORT void osync_group_remove_member(OSyncGroup *group, OSyncMember *memb
&lt;br&gt;&amp;nbsp; * @returns The member, or NULL if not found
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT OSyncMember *osync_group_find_member(OSyncGroup *group, long long int id);
&lt;br&gt;+OSYNC_EXPORT OSyncMember *osync_group_find_member(OSyncGroup *group, osync_memberid id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Returns a OSyncList that contains the OSyncMembers of this group
&lt;br&gt;@@ -271,7 +271,7 @@ OSYNC_EXPORT time_t osync_group_get_last_synchronization(OSyncGroup *group);
&lt;br&gt;&amp;nbsp; * @param winner The Member ID which solves the conflict (winner)
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT void osync_group_set_conflict_resolution(OSyncGroup *group, OSyncConflictResolution res, long long int winner);
&lt;br&gt;+OSYNC_EXPORT void osync_group_set_conflict_resolution(OSyncGroup *group, OSyncConflictResolution res, osync_memberid winner);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/** @brief Get fixed conflict resolution for the group for all appearing conflicts 
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;@@ -280,7 +280,7 @@ OSYNC_EXPORT void osync_group_set_conflict_resolution(OSyncGroup *group, OSyncCo
&lt;br&gt;&amp;nbsp; * @param winner Pointer to set Member ID value which solves the conflict (winner)
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT void osync_group_get_conflict_resolution(OSyncGroup *group, OSyncConflictResolution *res, long long int *winner);
&lt;br&gt;+OSYNC_EXPORT void osync_group_get_conflict_resolution(OSyncGroup *group, OSyncConflictResolution *res, osync_memberid *winner);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/** @brief Get group configured status of merger use. 
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;diff --git a/opensync/group/opensync_group_env.c b/opensync/group/opensync_group_env.c
&lt;br&gt;index b3ca99a..830f43f 100644
&lt;br&gt;--- a/opensync/group/opensync_group_env.c
&lt;br&gt;+++ b/opensync/group/opensync_group_env.c
&lt;br&gt;@@ -26,15 +26,15 @@
&lt;br&gt;&amp;nbsp;#include &amp;quot;opensync_group_env_internals.h&amp;quot;
&lt;br&gt;&amp;nbsp;#include &amp;quot;opensync_group_env_private.h&amp;quot;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static long long int osync_group_env_create_group_id(OSyncGroupEnv *env)
&lt;br&gt;+static osync_groupid osync_group_env_create_group_id(OSyncGroupEnv *env)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	char *filename = NULL;
&lt;br&gt;-	long long int i = 0;
&lt;br&gt;+	osync_groupid i = 0;
&lt;br&gt;&amp;nbsp;	do {
&lt;br&gt;&amp;nbsp;		i++;
&lt;br&gt;&amp;nbsp;		if (filename)
&lt;br&gt;&amp;nbsp;			osync_free(filename);
&lt;br&gt;-		filename = osync_strdup_printf(&amp;quot;%s%cgroup%lli&amp;quot;, env-&amp;gt;groupsdir, G_DIR_SEPARATOR, i);
&lt;br&gt;+		filename = osync_strdup_printf(&amp;quot;%s%cgroup%i&amp;quot;, env-&amp;gt;groupsdir, G_DIR_SEPARATOR, i);
&lt;br&gt;&amp;nbsp;	} while (g_file_test(filename, G_FILE_TEST_EXISTS));
&lt;br&gt;&amp;nbsp;	osync_free(filename);
&lt;br&gt;&amp;nbsp;	return i;
&lt;br&gt;@@ -409,7 +409,7 @@ osync_bool osync_group_env_add_group(OSyncGroupEnv *env, OSyncGroup *group, OSyn
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	if (!osync_group_get_configdir(group)) {
&lt;br&gt;-		char *configdir = osync_strdup_printf(&amp;quot;%s%cgroup%lli&amp;quot;, env-&amp;gt;groupsdir, G_DIR_SEPARATOR, osync_group_env_create_group_id(env));
&lt;br&gt;+		char *configdir = osync_strdup_printf(&amp;quot;%s%cgroup%i&amp;quot;, env-&amp;gt;groupsdir, G_DIR_SEPARATOR, osync_group_env_create_group_id(env));
&lt;br&gt;&amp;nbsp;		osync_group_set_configdir(group, configdir);
&lt;br&gt;&amp;nbsp;		osync_free(configdir);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;diff --git a/opensync/group/opensync_group_env_private.h b/opensync/group/opensync_group_env_private.h
&lt;br&gt;index c1fc5ed..926f44c 100644
&lt;br&gt;--- a/opensync/group/opensync_group_env_private.h
&lt;br&gt;+++ b/opensync/group/opensync_group_env_private.h
&lt;br&gt;@@ -37,7 +37,7 @@
&lt;br&gt;&amp;nbsp; * @returns The next free number
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-static long long int osync_group_env_create_group_id(OSyncGroupEnv *env);
&lt;br&gt;+static osync_groupid osync_group_env_create_group_id(OSyncGroupEnv *env);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/*@}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/group/opensync_group_internals.h b/opensync/group/opensync_group_internals.h
&lt;br&gt;index f8c87ea..e60e977 100644
&lt;br&gt;--- a/opensync/group/opensync_group_internals.h
&lt;br&gt;+++ b/opensync/group/opensync_group_internals.h
&lt;br&gt;@@ -52,7 +52,7 @@ struct OSyncGroup {
&lt;br&gt;&amp;nbsp;	/** The defined resolution for this group */
&lt;br&gt;&amp;nbsp;	OSyncConflictResolution conflict_resolution;
&lt;br&gt;&amp;nbsp;	/** The winning side if the select resolution is choosen */
&lt;br&gt;-	long long int conflict_winner;
&lt;br&gt;+	osync_memberid conflict_winner;
&lt;br&gt;&amp;nbsp;	/** The configured merger status of this group */
&lt;br&gt;&amp;nbsp;	osync_bool merger_enabled;
&lt;br&gt;&amp;nbsp;	/** The configured converter status of this group */
&lt;br&gt;diff --git a/opensync/group/opensync_group_private.h b/opensync/group/opensync_group_private.h
&lt;br&gt;index d7f6cb1..a821930 100644
&lt;br&gt;--- a/opensync/group/opensync_group_private.h
&lt;br&gt;+++ b/opensync/group/opensync_group_private.h
&lt;br&gt;@@ -36,7 +36,7 @@
&lt;br&gt;&amp;nbsp; * @returns A new unique member id
&lt;br&gt;&amp;nbsp; *
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-static long long int osync_group_create_member_id(OSyncGroup *group);
&lt;br&gt;+static osync_memberid osync_group_create_member_id(OSyncGroup *group);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/** @brief Loads all members of a group
&lt;br&gt;&amp;nbsp; *
&lt;br&gt;diff --git a/opensync/group/opensync_member.c b/opensync/group/opensync_member.c
&lt;br&gt;index 20020a1..4fbd0e8 100644
&lt;br&gt;--- a/opensync/group/opensync_member.c
&lt;br&gt;+++ b/opensync/group/opensync_member.c
&lt;br&gt;@@ -540,7 +540,7 @@ osync_bool osync_member_save(OSyncMember *member, OSyncError **error)
&lt;br&gt;&amp;nbsp;		 * member_configdir_deep_path
&lt;br&gt;&amp;nbsp;		 */
&lt;br&gt;&amp;nbsp;		if (g_mkdir_with_parents(member-&amp;gt;configdir, 0700)) {
&lt;br&gt;-			osync_error_set(error, OSYNC_ERROR_IO_ERROR, &amp;quot;Unable to create directory for member %lli\n&amp;quot;, member-&amp;gt;id);
&lt;br&gt;+			osync_error_set(error, OSYNC_ERROR_IO_ERROR, &amp;quot;Unable to create directory for member %i\n&amp;quot;, member-&amp;gt;id);
&lt;br&gt;&amp;nbsp;			goto error;
&lt;br&gt;&amp;nbsp;		}
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;@@ -629,7 +629,7 @@ osync_bool osync_member_delete(OSyncMember *member, OSyncError **error)
&lt;br&gt;&amp;nbsp;	return TRUE;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_member_get_id(OSyncMember *member)
&lt;br&gt;+osync_memberid osync_member_get_id(OSyncMember *member)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(member);
&lt;br&gt;&amp;nbsp;	return member-&amp;gt;id;
&lt;br&gt;diff --git a/opensync/group/opensync_member.h b/opensync/group/opensync_member.h
&lt;br&gt;index 0412460..91b9504 100644
&lt;br&gt;--- a/opensync/group/opensync_member.h
&lt;br&gt;+++ b/opensync/group/opensync_member.h
&lt;br&gt;@@ -191,7 +191,7 @@ OSYNC_EXPORT osync_bool osync_member_delete(OSyncMember *member, OSyncError **er
&lt;br&gt;&amp;nbsp; * @returns The id of the member thats unique in its group
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT long long int osync_member_get_id(OSyncMember *member);
&lt;br&gt;+OSYNC_EXPORT osync_memberid osync_member_get_id(OSyncMember *member);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Returns a OSyncList that contains the objtypes of this member
&lt;br&gt;diff --git a/opensync/group/opensync_member_internals.h b/opensync/group/opensync_member_internals.h
&lt;br&gt;index 903f7ad..d6793ce 100644
&lt;br&gt;--- a/opensync/group/opensync_member_internals.h
&lt;br&gt;+++ b/opensync/group/opensync_member_internals.h
&lt;br&gt;@@ -31,7 +31,7 @@
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/** @brief A member of a group which represent a single device */
&lt;br&gt;&amp;nbsp;struct OSyncMember {
&lt;br&gt;-	long long int id;
&lt;br&gt;+	osync_memberid id;
&lt;br&gt;&amp;nbsp;	char *configdir;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	OSyncPluginConfig *config;
&lt;br&gt;diff --git a/opensync/ipc/opensync_message.c b/opensync/ipc/opensync_message.c
&lt;br&gt;index 4f5de21..c135b8c 100644
&lt;br&gt;--- a/opensync/ipc/opensync_message.c
&lt;br&gt;+++ b/opensync/ipc/opensync_message.c
&lt;br&gt;@@ -87,13 +87,13 @@ unsigned int osync_message_get_timeout(OSyncMessage *message)
&lt;br&gt;&amp;nbsp;	return message-&amp;gt;timeout;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-void osync_message_set_id(OSyncMessage *message, long long int id)
&lt;br&gt;+void osync_message_set_id(OSyncMessage *message, osync_messageid id)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(message);
&lt;br&gt;&amp;nbsp;	message-&amp;gt;id = id;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_message_get_id(OSyncMessage *message)
&lt;br&gt;+osync_messageid osync_message_get_id(OSyncMessage *message)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(message);
&lt;br&gt;&amp;nbsp;	return message-&amp;gt;id;
&lt;br&gt;diff --git a/opensync/ipc/opensync_message_internals.h b/opensync/ipc/opensync_message_internals.h
&lt;br&gt;index a2b155a..a8590b7 100644
&lt;br&gt;--- a/opensync/ipc/opensync_message_internals.h
&lt;br&gt;+++ b/opensync/ipc/opensync_message_internals.h
&lt;br&gt;@@ -149,7 +149,7 @@ OSYNC_TEST_EXPORT OSyncMessageCommand osync_message_get_cmd(OSyncMessage *messag
&lt;br&gt;&amp;nbsp; * @param id The ID which get set for supplied message object 
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_TEST_EXPORT void osync_message_set_id(OSyncMessage *message, long long int id);
&lt;br&gt;+OSYNC_TEST_EXPORT void osync_message_set_id(OSyncMessage *message, osync_messageid id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/** @brief Get message ID of supplied message object
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;@@ -157,7 +157,7 @@ OSYNC_TEST_EXPORT void osync_message_set_id(OSyncMessage *message, long long int
&lt;br&gt;&amp;nbsp; * @returns The message ID of supplied message
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_TEST_EXPORT long long int osync_message_get_id(OSyncMessage *message);
&lt;br&gt;+OSYNC_TEST_EXPORT osync_messageid osync_message_get_id(OSyncMessage *message);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/** @brief Get marshal object of supplied message object
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;diff --git a/opensync/ipc/opensync_message_private.h b/opensync/ipc/opensync_message_private.h
&lt;br&gt;index b02ee7b..bb53e62 100644
&lt;br&gt;--- a/opensync/ipc/opensync_message_private.h
&lt;br&gt;+++ b/opensync/ipc/opensync_message_private.h
&lt;br&gt;@@ -39,7 +39,7 @@ struct OSyncMessage {
&lt;br&gt;&amp;nbsp;	/** The type of this message */
&lt;br&gt;&amp;nbsp;	OSyncMessageCommand cmd;
&lt;br&gt;&amp;nbsp;	/** The name of the message*/
&lt;br&gt;-	long long int id;
&lt;br&gt;+	osync_messageid id;
&lt;br&gt;&amp;nbsp;	/** Where should the reply be received? */
&lt;br&gt;&amp;nbsp;	OSyncMessageHandler callback;
&lt;br&gt;&amp;nbsp;	/** The user data */
&lt;br&gt;diff --git a/opensync/ipc/opensync_queue.c b/opensync/ipc/opensync_queue.c
&lt;br&gt;index 641f93d..1515e6c 100644
&lt;br&gt;--- a/opensync/ipc/opensync_queue.c
&lt;br&gt;+++ b/opensync/ipc/opensync_queue.c
&lt;br&gt;@@ -689,7 +689,7 @@ static gboolean _source_dispatch(GSource *source, GSourceFunc callback, gpointer
&lt;br&gt;&amp;nbsp;	do {
&lt;br&gt;&amp;nbsp;		int size = 0;
&lt;br&gt;&amp;nbsp;		int cmd = 0, timeout = 0;
&lt;br&gt;-		long long int id = 0;
&lt;br&gt;+		osync_messageid id = 0;
&lt;br&gt;&amp;nbsp;		char *buffer = NULL;
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;&amp;nbsp;		/* The size of the buffer */
&lt;br&gt;@@ -1375,7 +1375,7 @@ OSyncMessage *osync_queue_get_message(OSyncQueue *queue)
&lt;br&gt;&amp;nbsp;	return g_async_queue_pop(queue-&amp;gt;incoming);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static long long int opensync_queue_gen_id(const GTimeVal *tv)
&lt;br&gt;+static osync_messageid opensync_queue_gen_id(const GTimeVal *tv)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	long long int now = (tv-&amp;gt;tv_sec * 1000000 + tv-&amp;gt;tv_usec) &amp;lt;&amp;lt; 16;
&lt;br&gt;&amp;nbsp;	long long int rnd = ((long long int)g_random_int()) &amp; 0xFFFF;
&lt;br&gt;@@ -1408,7 +1408,7 @@ osync_bool osync_queue_send_message_with_timeout(OSyncQueue *queue, OSyncQueue *
&lt;br&gt;&amp;nbsp;	if (osync_message_get_handler(message)) {
&lt;br&gt;&amp;nbsp;		OSyncPendingMessage *pending = NULL;
&lt;br&gt;&amp;nbsp;		GTimeVal current_time;
&lt;br&gt;-		long long int id = 0;
&lt;br&gt;+		osync_messageid id = 0;
&lt;br&gt;&amp;nbsp;		osync_assert(replyqueue);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;		g_mutex_lock(replyqueue-&amp;gt;pendingLock);
&lt;br&gt;diff --git a/opensync/ipc/opensync_queue_private.h b/opensync/ipc/opensync_queue_private.h
&lt;br&gt;index 25803ab..4a4b4b9 100644
&lt;br&gt;--- a/opensync/ipc/opensync_queue_private.h
&lt;br&gt;+++ b/opensync/ipc/opensync_queue_private.h
&lt;br&gt;@@ -134,7 +134,7 @@ typedef struct OSyncTimeoutInfo {
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;&amp;nbsp;typedef struct OSyncPendingMessage {
&lt;br&gt;&amp;nbsp;	/** ID of the expected Message */
&lt;br&gt;-	long long int id;
&lt;br&gt;+	osync_messageid id;
&lt;br&gt;&amp;nbsp;	/** Where should the reply be received? */
&lt;br&gt;&amp;nbsp;	OSyncMessageHandler callback;
&lt;br&gt;&amp;nbsp;	/** The user data */
&lt;br&gt;@@ -151,7 +151,7 @@ typedef struct OSyncPendingMessage {
&lt;br&gt;&amp;nbsp; * the lower 2 bytes are a random number
&lt;br&gt;&amp;nbsp; * 
&lt;br&gt;&amp;nbsp; * */
&lt;br&gt;-static long long int opensync_queue_gen_id(const GTimeVal *tv);
&lt;br&gt;+static osync_messageid opensync_queue_gen_id(const GTimeVal *tv);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/*@}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping.c b/opensync/mapping/opensync_mapping.c
&lt;br&gt;index 20382f1..68101af 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping.c
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping.c
&lt;br&gt;@@ -68,13 +68,13 @@ void osync_mapping_unref(OSyncMapping *mapping)
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_mapping_get_id(OSyncMapping *mapping)
&lt;br&gt;+osync_mappingid osync_mapping_get_id(OSyncMapping *mapping)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(mapping);
&lt;br&gt;&amp;nbsp;	return mapping-&amp;gt;id;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-void osync_mapping_set_id(OSyncMapping *mapping, long long int id)
&lt;br&gt;+void osync_mapping_set_id(OSyncMapping *mapping, osync_mappingid id)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(mapping);
&lt;br&gt;&amp;nbsp;	mapping-&amp;gt;id = id;
&lt;br&gt;@@ -109,7 +109,7 @@ void osync_mapping_remove_entry(OSyncMapping *mapping, OSyncMappingEntry *entry)
&lt;br&gt;&amp;nbsp;	return NULL;
&lt;br&gt;&amp;nbsp;	}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-OSyncMappingEntry *osync_mapping_find_entry_by_member_id(OSyncMapping *mapping, long long int memberid)
&lt;br&gt;+OSyncMappingEntry *osync_mapping_find_entry_by_member_id(OSyncMapping *mapping, osync_memberid memberid)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	OSyncList *e;
&lt;br&gt;&amp;nbsp;	for (e = mapping-&amp;gt;entries; e; e = e-&amp;gt;next) {
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping.h b/opensync/mapping/opensync_mapping.h
&lt;br&gt;index cd6db32..0b24ca2 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping.h
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping.h
&lt;br&gt;@@ -62,14 +62,14 @@ OSYNC_EXPORT void osync_mapping_unref(OSyncMapping *mapping);
&lt;br&gt;&amp;nbsp; * @param mapping Pointer to a mapping object
&lt;br&gt;&amp;nbsp; * @returns the mapping ID
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT long long int osync_mapping_get_id(OSyncMapping *mapping);
&lt;br&gt;+OSYNC_EXPORT osync_mappingid osync_mapping_get_id(OSyncMapping *mapping);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Set the ID of a mapping object
&lt;br&gt;&amp;nbsp; * @param mapping Pointer to a mapping object
&lt;br&gt;&amp;nbsp; * @param id the mapping ID to set
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT void osync_mapping_set_id(OSyncMapping *mapping, long long int id);
&lt;br&gt;+OSYNC_EXPORT void osync_mapping_set_id(OSyncMapping *mapping, osync_mappingid id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Returns a OSyncList that contains the OSyncMappingEntries of this mapping
&lt;br&gt;@@ -103,7 +103,7 @@ OSYNC_EXPORT void osync_mapping_remove_entry(OSyncMapping *mapping, OSyncMapping
&lt;br&gt;&amp;nbsp; * @param memberid The ID of the member
&lt;br&gt;&amp;nbsp; * @returns the entry with the specified member ID or NULL if not found
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT OSyncMappingEntry *osync_mapping_find_entry_by_member_id(OSyncMapping *mapping, long long int memberid);
&lt;br&gt;+OSYNC_EXPORT OSyncMappingEntry *osync_mapping_find_entry_by_member_id(OSyncMapping *mapping, osync_memberid memberid);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/*@}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping_entry.c b/opensync/mapping/opensync_mapping_entry.c
&lt;br&gt;index ede816f..34d3aaa 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping_entry.c
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping_entry.c
&lt;br&gt;@@ -124,25 +124,25 @@ const char *osync_mapping_entry_get_uid(OSyncMappingEntry *entry)
&lt;br&gt;&amp;nbsp;	return entry-&amp;gt;uid;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_mapping_entry_get_member_id(OSyncMappingEntry *entry)
&lt;br&gt;+osync_memberid osync_mapping_entry_get_member_id(OSyncMappingEntry *entry)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(entry);
&lt;br&gt;&amp;nbsp;	return entry-&amp;gt;member_id;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-void osync_mapping_entry_set_member_id(OSyncMappingEntry *entry, long long int id)
&lt;br&gt;+void osync_mapping_entry_set_member_id(OSyncMappingEntry *entry, osync_memberid id)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(entry);
&lt;br&gt;&amp;nbsp;	entry-&amp;gt;member_id = id;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_mapping_entry_get_id(OSyncMappingEntry *entry)
&lt;br&gt;+osync_mappingid osync_mapping_entry_get_id(OSyncMappingEntry *entry)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(entry);
&lt;br&gt;&amp;nbsp;	return entry-&amp;gt;id;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-void osync_mapping_entry_set_id(OSyncMappingEntry *entry, long long int id)
&lt;br&gt;+void osync_mapping_entry_set_id(OSyncMappingEntry *entry, osync_mappingid id)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	osync_assert(entry);
&lt;br&gt;&amp;nbsp;	entry-&amp;gt;id = id;
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping_entry.h b/opensync/mapping/opensync_mapping_entry.h
&lt;br&gt;index 52da95b..f30042f 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping_entry.h
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping_entry.h
&lt;br&gt;@@ -98,14 +98,14 @@ OSYNC_EXPORT const char *osync_mapping_entry_get_uid(OSyncMappingEntry *entry);
&lt;br&gt;&amp;nbsp; * @param entry Pointer to a mapping entry object
&lt;br&gt;&amp;nbsp; * @returns the entry's member ID
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT long long int osync_mapping_entry_get_member_id(OSyncMappingEntry *entry);
&lt;br&gt;+OSYNC_EXPORT osync_memberid osync_mapping_entry_get_member_id(OSyncMappingEntry *entry);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Set the member ID of the entry
&lt;br&gt;&amp;nbsp; * @param entry Pointer to a mapping entry object
&lt;br&gt;&amp;nbsp; * @param id the member ID to set
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT void osync_mapping_entry_set_member_id(OSyncMappingEntry *entry, long long int id);
&lt;br&gt;+OSYNC_EXPORT void osync_mapping_entry_set_member_id(OSyncMappingEntry *entry, osync_memberid id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;@@ -113,14 +113,14 @@ OSYNC_EXPORT void osync_mapping_entry_set_member_id(OSyncMappingEntry *entry, lo
&lt;br&gt;&amp;nbsp; * @param entry Pointer to a mapping entry object
&lt;br&gt;&amp;nbsp; * @returns the entry's ID
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT long long int osync_mapping_entry_get_id(OSyncMappingEntry *entry);
&lt;br&gt;+OSYNC_EXPORT osync_mappingid osync_mapping_entry_get_id(OSyncMappingEntry *entry);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Set the ID of the entry
&lt;br&gt;&amp;nbsp; * @param entry Pointer to a mapping entry object
&lt;br&gt;&amp;nbsp; * @param id the ID to set
&lt;br&gt;&amp;nbsp; */
&lt;br&gt;-OSYNC_EXPORT void osync_mapping_entry_set_id(OSyncMappingEntry *entry, long long int id);
&lt;br&gt;+OSYNC_EXPORT void osync_mapping_entry_set_id(OSyncMappingEntry *entry, osync_mappingid id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/*@}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping_entry_internals.h b/opensync/mapping/opensync_mapping_entry_internals.h
&lt;br&gt;index a8c1fc7..1bc21bb 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping_entry_internals.h
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping_entry_internals.h
&lt;br&gt;@@ -40,13 +40,13 @@ struct OSyncMappingEntry {
&lt;br&gt;&amp;nbsp;	char *uid;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	/** uniquely identifies the member */
&lt;br&gt;-	long long int member_id;
&lt;br&gt;+	osync_memberid member_id;
&lt;br&gt;&amp;nbsp;	/** uniquely identifies the mapping table entry */
&lt;br&gt;-	long long int id;
&lt;br&gt;+	osync_mappingid id;
&lt;br&gt;&amp;nbsp;};
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/*@}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_mapping_entry_get_member_id(OSyncMappingEntry *entry);
&lt;br&gt;+osync_memberid osync_mapping_entry_get_member_id(OSyncMappingEntry *entry);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;#endif /*OPENSYNC_MAPPING_ENTRY_INTERNALS_H_*/
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping_internals.h b/opensync/mapping/opensync_mapping_internals.h
&lt;br&gt;index 169498e..52759ff 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping_internals.h
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping_internals.h
&lt;br&gt;@@ -38,7 +38,7 @@ struct OSyncMapping {
&lt;br&gt;&amp;nbsp;	/** Reference Counter */
&lt;br&gt;&amp;nbsp;	int ref_count;
&lt;br&gt;&amp;nbsp;	/** ID of the mapping */
&lt;br&gt;-	long long int id;
&lt;br&gt;+	osync_mappingid id;
&lt;br&gt;&amp;nbsp;	/** list of entries */
&lt;br&gt;&amp;nbsp;	OSyncList *entries;
&lt;br&gt;&amp;nbsp;};
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping_table.c b/opensync/mapping/opensync_mapping_table.c
&lt;br&gt;index 4e15342..d4cd572 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping_table.c
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping_table.c
&lt;br&gt;@@ -88,10 +88,12 @@ osync_bool osync_mapping_table_load(OSyncMappingTable *table, OSyncArchive *arch
&lt;br&gt;&amp;nbsp;	i = memberids;
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;&amp;nbsp;	for (u = uids; u; u = u-&amp;gt;next) {
&lt;br&gt;-		long long int id = (long long int)GPOINTER_TO_INT(d-&amp;gt;data);
&lt;br&gt;+		// FIXME - GPOINTER_TO_INT() only guarantees 32bits of data,
&lt;br&gt;+		// while long long int is 64bits.
&lt;br&gt;+		osync_archiveid id = GPOINTER_TO_INT(d-&amp;gt;data);
&lt;br&gt;&amp;nbsp;		char *uid = u-&amp;gt;data;
&lt;br&gt;-		long long int memberid = (long long int)GPOINTER_TO_INT(i-&amp;gt;data);
&lt;br&gt;-		long long int mappingid = (long long int)GPOINTER_TO_INT(m-&amp;gt;data);
&lt;br&gt;+		osync_memberid memberid = GPOINTER_TO_INT(i-&amp;gt;data);
&lt;br&gt;+		osync_mappingid mappingid = GPOINTER_TO_INT(m-&amp;gt;data);
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;&amp;nbsp;		entry = osync_mapping_entry_new(error);
&lt;br&gt;&amp;nbsp;		if (!entry)
&lt;br&gt;@@ -171,7 +173,7 @@ void osync_mapping_table_close(OSyncMappingTable *table)
&lt;br&gt;&amp;nbsp;	osync_trace(TRACE_EXIT, &amp;quot;%s&amp;quot;, __func__);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-OSyncMapping *osync_mapping_table_find_mapping(OSyncMappingTable *table, long long int id)
&lt;br&gt;+OSyncMapping *osync_mapping_table_find_mapping(OSyncMappingTable *table, osync_mappingid id)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	OSyncList *m;
&lt;br&gt;&amp;nbsp;	osync_assert(table);
&lt;br&gt;@@ -214,9 +216,9 @@ OSyncMapping *osync_mapping_table_nth_mapping(OSyncMappingTable *table, unsigned
&lt;br&gt;&amp;nbsp;	return osync_list_nth_data(table-&amp;gt;mappings, nth);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long long int osync_mapping_table_get_next_id(OSyncMappingTable *table)
&lt;br&gt;+osync_mappingid osync_mapping_table_get_next_id(OSyncMappingTable *table)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;-	long long int new_id = 1;
&lt;br&gt;+	osync_mappingid new_id = 1;
&lt;br&gt;&amp;nbsp;	OSyncList *m;
&lt;br&gt;&amp;nbsp;	for (m = table-&amp;gt;mappings; m; m = m-&amp;gt;next) {
&lt;br&gt;&amp;nbsp;		OSyncMapping *mapping = m-&amp;gt;data;
&lt;br&gt;diff --git a/opensync/mapping/opensync_mapping_table.h b/opensync/mapping/opensync_mapping_table.h
&lt;br&gt;index 55a60a2..40e8f4a 100644
&lt;br&gt;--- a/opensync/mapping/opensync_mapping_table.h
&lt;br&gt;+++ b/opensync/mapping/opensync_mapping_table.h
&lt;br&gt;@@ -90,7 +90,7 @@ OSYNC_EXPORT void osync_mapping_table_close(OSyncMappingTable *table);
&lt;br&gt;&amp;nbsp; * @param id The mapping id to search for
&lt;br&gt;&amp;nbsp; * @return Returns Mapping object or NULL if no mapping matched the mapping id
&lt;br&gt;&amp;nbsp; */ 
&lt;br&gt;-OSYNC_EXPORT OSyncMapping *osync_mapping_table_find_mapping(OSyncMappingTable *table, long long int id);
&lt;br&gt;+OSYNC_EXPORT OSyncMapping *osync_mapping_table_find_mapping(OSyncMappingTable *table, osync_mappingid id);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**
&lt;br&gt;&amp;nbsp; * @brief Add a mapping to the mapping table 
&lt;br&gt;@@ -125,7 +125,7 @@ OSYNC_EXPORT OSyncList *osync_mapping_table_get_mappings(OSyncMappingTable *tabl
&lt;br&gt;&amp;nbsp; * @param table The mapping table object
&lt;br&gt;&amp;nbsp; * @return Next free mapping id of mapping table
&lt;br&gt;&amp;nbsp; */ 
&lt;br&gt;-OSYNC_EXPORT long long int osync_mapping_table_get_next_id(OSyncMappingTable *table);
&lt;br&gt;+OSYNC_EXPORT osync_mappingid osync_mapping_table_get_next_id(OSyncMappingTable *table);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/*@}*/
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/opensync/opensync.h b/opensync/opensync.h
&lt;br&gt;index 2869486..8530135 100644
&lt;br&gt;--- a/opensync/opensync.h
&lt;br&gt;+++ b/opensync/opensync.h
&lt;br&gt;@@ -141,6 +141,11 @@ OPENSYNC_BEGIN_DECLS
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;} } while(0)
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;typedef int osync_bool;
&lt;br&gt;+typedef int osync_memberid;
&lt;br&gt;+typedef int osync_mappingid;
&lt;br&gt;+typedef int osync_groupid;
&lt;br&gt;+typedef long long int osync_archiveid;
&lt;br&gt;+typedef long long int osync_messageid;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;/**************************************************************
&lt;br&gt;&amp;nbsp; * Enums
&lt;br&gt;diff --git a/opensync/plugin/opensync_plugin_info_private.h b/opensync/plugin/opensync_plugin_info_private.h
&lt;br&gt;index 5684704..e983f81 100644
&lt;br&gt;--- a/opensync/plugin/opensync_plugin_info_private.h
&lt;br&gt;+++ b/opensync/plugin/opensync_plugin_info_private.h
&lt;br&gt;@@ -49,7 +49,7 @@ struct OSyncPluginInfo {
&lt;br&gt;&amp;nbsp;	OSyncCapabilities *capabilities;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;#ifdef OPENSYNC_UNITTESTS
&lt;br&gt;-	long long int memberid; // introduced only for testing purpose (mock-sync)
&lt;br&gt;+	osync_memberid memberid; // introduced only for testing purpose (mock-sync)
&lt;br&gt;&amp;nbsp;#endif	
&lt;br&gt;&amp;nbsp;};
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/tests/archive-tests/check_archive.c b/tests/archive-tests/check_archive.c
&lt;br&gt;index 3c10f8e..0f37ddc 100644
&lt;br&gt;--- a/tests/archive-tests/check_archive.c
&lt;br&gt;+++ b/tests/archive-tests/check_archive.c
&lt;br&gt;@@ -58,7 +58,7 @@ START_TEST (archive_save_change)
&lt;br&gt;&amp;nbsp;	OSyncList *memberids;
&lt;br&gt;&amp;nbsp;	osync_archive_load_changes(archive, &amp;quot;contact&amp;quot;, &amp;ids, &amp;uids, &amp;mappingids, &amp;memberids, &amp;error);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	long long int id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;+	osync_archiveid id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;&amp;nbsp;	fail_unless(id != 0, NULL);
&lt;br&gt;&amp;nbsp;	fail_unless(error == NULL, NULL);
&lt;br&gt;&amp;nbsp;		
&lt;br&gt;@@ -83,7 +83,7 @@ START_TEST (archive_save_data)
&lt;br&gt;&amp;nbsp;	OSyncList *memberids;
&lt;br&gt;&amp;nbsp;	osync_archive_load_changes(archive, &amp;quot;contact&amp;quot;, &amp;ids, &amp;uids, &amp;mappingids, &amp;memberids, &amp;error);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	long long int id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;+	osync_archiveid id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;&amp;nbsp;	fail_unless(id != 0, NULL);
&lt;br&gt;&amp;nbsp;	fail_unless(error == NULL, NULL);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;@@ -113,7 +113,7 @@ START_TEST (archive_load_data)
&lt;br&gt;&amp;nbsp;	OSyncList *memberids;
&lt;br&gt;&amp;nbsp;	osync_archive_load_changes(archive, &amp;quot;contact&amp;quot;, &amp;ids, &amp;uids, &amp;mappingids, &amp;memberids, &amp;error);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	long long int id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;+	osync_archiveid id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;&amp;nbsp;	fail_unless(id != 0, NULL);
&lt;br&gt;&amp;nbsp;	fail_unless(error == NULL, NULL);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;@@ -152,7 +152,7 @@ START_TEST (archive_load_data_with_closing_db)
&lt;br&gt;&amp;nbsp;	OSyncList *memberids;
&lt;br&gt;&amp;nbsp;	osync_archive_load_changes(archive, &amp;quot;contact&amp;quot;, &amp;ids, &amp;uids, &amp;mappingids, &amp;memberids, &amp;error);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;-	long long int id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;+	osync_archiveid id = osync_archive_save_change(archive, 0, &amp;quot;uid&amp;quot;, &amp;quot;contact&amp;quot;, 1, 1, &amp;quot;contact&amp;quot;, &amp;error);
&lt;br&gt;&amp;nbsp;	fail_unless(id != 0, NULL);
&lt;br&gt;&amp;nbsp;	fail_unless(error == NULL, NULL);
&lt;br&gt;&amp;nbsp;	
&lt;br&gt;diff --git a/tests/mock-plugin/mock_sync.c b/tests/mock-plugin/mock_sync.c
&lt;br&gt;index 01e54b9..98f1117 100644
&lt;br&gt;--- a/tests/mock-plugin/mock_sync.c
&lt;br&gt;+++ b/tests/mock-plugin/mock_sync.c
&lt;br&gt;@@ -23,7 +23,7 @@
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;#include &amp;quot;opensync/plugin/opensync_plugin_info_private.h&amp;quot;	/* FIXME: access direclty private header */
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static osync_bool mock_get_error(long long int memberid, const char *domain)
&lt;br&gt;+static osync_bool mock_get_error(osync_memberid memberid, const char *domain)
&lt;br&gt;&amp;nbsp;{
&lt;br&gt;&amp;nbsp;	const char *env = g_getenv(domain);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff --git a/wrapper/opensync-group.i b/wrapper/opensync-group.i
&lt;br&gt;index 57ff246..a95fc96 100644
&lt;br&gt;--- a/wrapper/opensync-group.i
&lt;br&gt;+++ b/wrapper/opensync-group.i
&lt;br&gt;@@ -182,7 +182,7 @@ typedef struct {} Group;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;	%apply ConflictResolution *OUTPUT { ConflictResolution *res, int *num };
&lt;br&gt;&amp;nbsp;	%apply int *OUTPUT { ConflictResolution *res, int *num };
&lt;br&gt;-	void get_conflict_resolution(ConflictResolution *res, long long int *winner) {
&lt;br&gt;+	void get_conflict_resolution(ConflictResolution *res, osync_memberid *winner) {
&lt;br&gt;&amp;nbsp;		osync_group_get_conflict_resolution(self, res, winner);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;@@ -314,7 +314,7 @@ typedef struct {} Member;
&lt;br&gt;&amp;nbsp;			wrapper_exception(&amp;quot;osync_member_delete failed but did not set error code&amp;quot;);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-	long long int get_id() {
&lt;br&gt;+	osync_memberid get_id() {
&lt;br&gt;&amp;nbsp;		return osync_member_get_id(self);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-- 
&lt;br&gt;1.6.2.5
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26349342&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-RFC--PATCH--API-change--long-long-patch-tp26349342p26349342.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26343882</id>
	<title>Re: osync_archive_save_ignored_conflict()</title>
	<published>2009-11-13T13:33:12Z</published>
	<updated>2009-11-13T13:33:12Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">On Fri, Nov 13, 2009 at 05:16:49PM +0100, Daniel Gollub wrote:
&lt;br&gt;&amp;gt; On Thursday 12 November 2009 10:23:59 pm Chris Frey wrote:
&lt;br&gt;&amp;gt; &amp;gt; This patch makes it much clearer to follow the IDs through the system.
&lt;br&gt;&amp;gt; &amp;gt; Thanks!
&lt;br&gt;&amp;gt; &amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Ok, thanks for your feedback. Just committed the patch.
&lt;br&gt;&lt;br&gt;I noticed that your patch added a prototype for
&lt;br&gt;osync_mapping_entry_get_member_id() to the opensync_mapping_entry_internals.h
&lt;br&gt;header.
&lt;br&gt;&lt;br&gt;Yet that function already exists in opensync_mapping_entry.h
&lt;br&gt;&lt;br&gt;Was this intended?
&lt;br&gt;&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26343882&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/osync_archive_save_ignored_conflict%28%29-tp26240527p26343882.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26343854</id>
	<title>Re: new printf format checks and compiler settings</title>
	<published>2009-11-13T13:30:03Z</published>
	<updated>2009-11-13T13:30:03Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">On Thu, Nov 12, 2009 at 04:36:40PM -0500, Chris Frey wrote:
&lt;br&gt;&amp;gt; I think the GCC_FORMAT_CHECK is worth it in the long run (there were lots
&lt;br&gt;&amp;gt; of printf style errors in the code), but the (void*) casts are unfortunate.
&lt;br&gt;&amp;gt; Anyone know of a cleaner workaround?
&lt;br&gt;&lt;br&gt;After a conversation on #gcc on irc.freenode.net (thanks to segher),
&lt;br&gt;I had the following enlightenment:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the C standard does not guarantee that all pointers are the same
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; size on all platforms
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - for example, data pointers and function pointers can have differing
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; formats
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the C standard guarantees that you can cast all pointers to void*
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; and back
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the %p format string identifier only takes a void*
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - vararg functions cannot provide implicit casts, since there is
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; no prototype for the variable data
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - so in general, to be standard-C correct, you need to cast all
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; %p pointers to vararg functions
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; - the -pedantic option makes all this show up explicitly, but in
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; most cases you don't need it, at least with gcc
&lt;br&gt;&lt;br&gt;Basically there's no way around it, except disabling -pedantic in your
&lt;br&gt;compiles, or adding (void*) casts to all %p pointers.
&lt;br&gt;&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26343854&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/new-printf-format-checks-and-compiler-settings-tp26326915p26343854.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26340079</id>
	<title>Re: [SPAM] I'm in desperate need for a guide</title>
	<published>2009-11-13T09:15:20Z</published>
	<updated>2009-11-13T09:15:20Z</updated>
	<author>
		<name>Tino Keitel-3</name>
	</author>
	<content type="html">On Fri, Nov 13, 2009 at 14:34:52 +0800, Yiping Cheng wrote:
&lt;br&gt;&lt;br&gt;[...]
&lt;br&gt;&lt;br&gt;&amp;gt; directory on the linux machine. &amp;nbsp;But CMake failed to generate the
&lt;br&gt;&amp;gt; make file giving error notices such as &amp;quot;cannot find glib2, libxml2,
&lt;br&gt;&amp;gt; openobex, etc&amp;quot; I have already downloaded these libraries but I do not
&lt;br&gt;&amp;gt; know where to put them so that they can be found by CMake.
&lt;br&gt;&lt;br&gt;- just use the package manager that comes with your distribution
&lt;br&gt;&lt;br&gt;- install the development packages for those libs, usually they have a
&lt;br&gt;&amp;nbsp; &amp;quot;-dev&amp;quot; appended to the name of the library package
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;Tino
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26340079&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-SPAM--I%27m-in-desperate-need-for-a-guide-tp26332186p26340079.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26339173</id>
	<title>Re: osync_archive_save_ignored_conflict()</title>
	<published>2009-11-13T08:16:49Z</published>
	<updated>2009-11-13T08:16:49Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Thursday 12 November 2009 10:23:59 pm Chris Frey wrote:
&lt;br&gt;&amp;gt; This patch makes it much clearer to follow the IDs through the system.
&lt;br&gt;&amp;gt; Thanks!
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;Ok, thanks for your feedback. Just committed the patch.
&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26339173&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26339173&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26339173/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/osync_archive_save_ignored_conflict%28%29-tp26240527p26339173.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26332186</id>
	<title>[SPAM] I'm in desperate need for a guide</title>
	<published>2009-11-12T22:34:52Z</published>
	<updated>2009-11-12T22:34:52Z</updated>
	<author>
		<name>Yiping Cheng</name>
	</author>
	<content type="html">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;
&lt;HTML&gt;&lt;HEAD&gt;
&lt;META http-equiv=Content-Type content=&quot;text/html; charset=gb2312&quot;&gt;
&lt;META content=&quot;MSHTML 6.00.2900.5890&quot; name=GENERATOR&gt;

&lt;/HEAD&gt;
&lt;BODY bgColor=#ffffff&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;Hi all,&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;I am a newcomer&amp;nbsp;to SyncML and Linux but I&amp;nbsp;have some 
experience on Windows C/C++ programming.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;I am having troubles getting libSyncML C code compiled so I 
need your help.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;I have successfully installed the virtual Linux&amp;nbsp;machine 
(using Sun VirtualBox and Arch Linux distribution).&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;I also successfully installed CMake and copied the LibSyncML 
source files into a directory on the linux machine.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;But CMake failed to generate the make file giving error 
notices such as &quot;cannot find glib2, libxml2, openobex, etc&quot;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;I have already downloaded these libraries but I do not know 
where to put them so that they can be found by CMake. &lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;The INSTALL.txt file gave incomplete information on how to 
build libSyncML. In addition I don't know how I could&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;replace the &quot;prefix&quot;, &quot;path&quot;, &quot;source&quot; with their concrete 
values.&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mkdir build&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cd 
build&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cmake 
-DCMAKE_INSTALL_PREFIX=$&lt;STRONG&gt;prefix&lt;/STRONG&gt;/&lt;STRONG&gt;path&lt;/STRONG&gt;/&lt;STRONG&gt;to&lt;/STRONG&gt;/libsyncml/&lt;STRONG&gt;source&lt;/STRONG&gt;/&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
make&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; make test&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; make 
install&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;Could anyone please give me some&amp;nbsp;enlightenment? Thank you 
very much!&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;Best regards,&lt;/FONT&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;Yiping Cheng&lt;/FONT&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;
&lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26332186&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-SPAM--I%27m-in-desperate-need-for-a-guide-tp26332186p26332186.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26326915</id>
	<title>new printf format checks and compiler settings</title>
	<published>2009-11-12T13:36:40Z</published>
	<updated>2009-11-12T13:36:40Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I noticed that scriptor made some changes to the ldap-sync module,
&lt;br&gt;based on the new warnings caused by my GCC_FORMAT_CHECK patch. (r5955)
&lt;br&gt;&lt;br&gt;I noticed that now there's a lot of (void*) casts for the osync_trace()
&lt;br&gt;calls, and that's likely due to using -pedantic when compiling.
&lt;br&gt;&lt;br&gt;I think the GCC_FORMAT_CHECK is worth it in the long run (there were lots
&lt;br&gt;of printf style errors in the code), but the (void*) casts are unfortunate.
&lt;br&gt;Anyone know of a cleaner workaround?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26326915&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/new-printf-format-checks-and-compiler-settings-tp26326915p26326915.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26326697</id>
	<title>Re: osync_archive_save_ignored_conflict()</title>
	<published>2009-11-12T13:23:59Z</published>
	<updated>2009-11-12T13:23:59Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">On Sun, Nov 08, 2009 at 06:16:46PM +0100, Daniel Gollub wrote:
&lt;br&gt;&amp;gt; Find attachtd a proof of concept patch which is implementing this ...
&lt;br&gt;&lt;br&gt;This patch makes it much clearer to follow the IDs through the system.
&lt;br&gt;Thanks!
&lt;br&gt;&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26326697&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/osync_archive_save_ignored_conflict%28%29-tp26240527p26326697.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26326457</id>
	<title>Re: osync_archive_save_ignored_conflict()</title>
	<published>2009-11-12T13:08:13Z</published>
	<updated>2009-11-12T13:08:13Z</updated>
	<author>
		<name>Chris Frey-2</name>
	</author>
	<content type="html">On Sun, Nov 08, 2009 at 05:14:23PM +0100, Daniel Gollub wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Saturday 07 November 2009 12:58:38 am Chris Frey wrote:
&lt;br&gt;&amp;gt; &amp;gt; Hi,
&lt;br&gt;&amp;gt; &amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; In the opensync_archive_internals.h header, _save_ignored_conflict()
&lt;br&gt;&amp;gt; &amp;gt; is documented as such:
&lt;br&gt;&amp;gt; &amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; /**
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;* @brief Saves an entry in the ignored conflict list.
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;*
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;* @param archive The group archive
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;* @param objtype Reported object type of entry
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;* @param mappingid Mapping Entry ID of entry
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; That's correct.
&lt;/div&gt;&lt;br&gt;[...]
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; Isn't the entryid field used for the archive id's themselves, and not the
&lt;br&gt;&amp;gt; &amp;gt; mapping ids?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Not quite sure which ID you mean for &amp;quot;archive id&amp;quot;.
&lt;br&gt;&lt;br&gt;By &amp;quot;archive id&amp;quot; I'm referring to the IDs returned by the function
&lt;br&gt;osync_archive_save_change(), which seems to be used in other functions
&lt;br&gt;to refer to a row number in the tbl_changes table.
&lt;br&gt;&lt;br&gt;By &amp;quot;mapping id&amp;quot;, I'm referring to IDs returned by the function
&lt;br&gt;osync_mapping_table_get_next_id().
&lt;br&gt;&lt;br&gt;According to your email above, the ID in osync_archive_save_ignored_conflict()
&lt;br&gt;is a mapping id. &amp;nbsp;This is what I was confused about.
&lt;br&gt;&lt;br&gt;It also seems like the id field in tbl_changelog is not used?
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; While looking into this i found a bug in OpenSync which broke the support
&lt;br&gt;&amp;gt; of &amp;quot;ignore conflicts&amp;quot;. Which is hopefully fixed now with r5950
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Here is a dump of the tbl_changes and tbl_changelog, which contains two
&lt;br&gt;&amp;gt; conflicts which got ignored. (I used for that a group with two file-sync members)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;[snip]
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; (changetypes: 3 == deleted, 4 == modified)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; And indeed this looks pretty strange - 4 tbl_changelog for 2 mappings ...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The information is missing which member was sending which changetype ...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I guess it should look like this:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; ----8&amp;lt;---
&lt;br&gt;&amp;gt; BEGIN TRANSACTION;
&lt;br&gt;&amp;gt; CREATE TABLE tbl_changelog (objtype VARCHAR(64) NOT NULL, memberid INTEGER NOT NULL, mappingid INTEGER NOT NULL, changetype INTEGER NOT NULL, PRIMARY KEY (objtype, memberid, 
&lt;br&gt;&amp;gt; mappingid) );
&lt;br&gt;&amp;gt; INSERT INTO &amp;quot;tbl_changelog&amp;quot; VALUES('contact',1,4,4);
&lt;br&gt;&amp;gt; INSERT INTO &amp;quot;tbl_changelog&amp;quot; VALUES('contact',2,4,4);
&lt;br&gt;&amp;gt; INSERT INTO &amp;quot;tbl_changelog&amp;quot; VALUES('contact',1,6,4);
&lt;br&gt;&amp;gt; INSERT INTO &amp;quot;tbl_changelog&amp;quot; VALUES('contact',2,6,3);
&lt;br&gt;&amp;gt; COMMIT;
&lt;br&gt;&amp;gt; ----&amp;gt;8---
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Does this sound sane?
&lt;br&gt;&amp;gt; Does this address your question?
&lt;/div&gt;&lt;br&gt;I'm sorry, but I don't fully understand the tables yet, so I can't
&lt;br&gt;comment on whether it is sane. &amp;nbsp;It does look better that there are no
&lt;br&gt;NULL values in the ID field.
&lt;br&gt;&lt;br&gt;My question was merely which ID belonged where, since I'm working on the
&lt;br&gt;long long patch.
&lt;br&gt;&lt;br&gt;Thanks!
&lt;br&gt;- Chris
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26326457&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/osync_archive_save_ignored_conflict%28%29-tp26240527p26326457.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26321097</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-12T07:50:50Z</published>
	<updated>2009-11-12T07:50:50Z</updated>
	<author>
		<name>Henrik /KaarPoSoft-2</name>
	</author>
	<content type="html">Daniel Gollub wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Thursday 12 November 2009 04:27:04 pm Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt;&amp;gt; I am aware that I can create several plugins; but I was thinking that 
&lt;br&gt;&amp;gt;&amp;gt; maybe there was a way to version plugins / plugin configurations.
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Oh i see .. i missudnerstood your initial topic. I haven't thought about that 
&lt;br&gt;&amp;gt; yet. I guess thats not a problem we should concentrate on today .. .maybe we 
&lt;br&gt;&amp;gt; should first get something which actually makes syning work and then talk 
&lt;br&gt;&amp;gt; about handling different versions.
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;I have created ticket 1189 so we don't forget...
&lt;br&gt;&lt;br&gt;/Henrik
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26321097&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26321097.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26320830</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-12T07:37:21Z</published>
	<updated>2009-11-12T07:37:21Z</updated>
	<author>
		<name>Henrik /KaarPoSoft-2</name>
	</author>
	<content type="html">Juha Tuomala wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Mon, 9 Nov 2009, Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt;&amp;gt; A member of a group has a configuration file.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Would it be possible to implement some mechanism, which would allow us
&lt;br&gt;&amp;gt;&amp;gt; to have more than one default configuration file per plugin?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; This would make sense, if different versions of a plugin supports
&lt;br&gt;&amp;gt;&amp;gt; different AdvancedOptions, different Resources, etc.
&lt;br&gt;&amp;gt; Correct me if I'm wrong, if I say that:
&lt;br&gt;&amp;gt; - the file is in XML format
&lt;br&gt;&amp;gt; - X in XML stands for eXtensible
&lt;br&gt;&amp;gt; - tools reading the XML don't care about stuff they don't understand.
&lt;br&gt;&amp;gt; - thus the XML, the configuration file is always backwards compatible?
&lt;br&gt;&amp;gt; - thus the same file can be used regardless of versions?
&lt;/div&gt;The challenge is not so much the syntax. Even the schema is the same for 
&lt;br&gt;all plugin configuration files. And a Frontend would probably let the 
&lt;br&gt;OpenSync library do the parsing anyway.
&lt;br&gt;&lt;br&gt;The challenge I am thinking of is this: How can a Frontend present a 
&lt;br&gt;nice GUI to configure ANY OpenSync plugin?
&lt;br&gt;&lt;br&gt;Maybe I am wrong, but the way I do it in blueZync is to look at the 
&lt;br&gt;advanced options and creating GUI for those, and look at the resources 
&lt;br&gt;and create GUI for the resources defined in the default config file.
&lt;br&gt;&lt;br&gt;Obviously a Frontend may have specific knowledge of specific plugins and 
&lt;br&gt;create an even better GUI, but it would be nice if a Frontend could 
&lt;br&gt;automatically create a GUI for any OpenSync plugin automatically.
&lt;br&gt;&lt;br&gt;/Henrik
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26320830&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26320830.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26320804</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-12T07:35:22Z</published>
	<updated>2009-11-12T07:35:22Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Thursday 12 November 2009 04:27:04 pm Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; I am aware that I can create several plugins; but I was thinking that 
&lt;br&gt;&amp;gt; maybe there was a way to version plugins / plugin configurations.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;Oh i see .. i missudnerstood your initial topic. I haven't thought about that 
&lt;br&gt;yet. I guess thats not a problem we should concentrate on today .. .maybe we 
&lt;br&gt;should first get something which actually makes syning work and then talk 
&lt;br&gt;about handling different versions.
&lt;br&gt;&lt;br&gt;But what we have &amp;nbsp;- what is maybe interesting for your &amp;quot;problem&amp;quot; ... we have 
&lt;br&gt;the OSyncUpdater which updates old configs to new configs, with the help of 
&lt;br&gt;XSLT conversion stylesheets.
&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26320804&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26320804&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26320804/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26320804.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26320674</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-12T07:27:04Z</published>
	<updated>2009-11-12T07:27:04Z</updated>
	<author>
		<name>Henrik /KaarPoSoft-2</name>
	</author>
	<content type="html">Daniel Gollub wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt; Close, try get_sync_info(). get_sync_info() get called when all the plugins 
&lt;br&gt;&amp;gt; get loaded:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; e.g. osynctool --listplugins
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Perfect example would be the SyncML plugin. It's registering 4 plugins in one 
&lt;br&gt;&amp;gt; get_version() call...
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This is what i try suggested some weeks ago to &amp;nbsp;spawn several plugins for the 
&lt;br&gt;&amp;gt; mozilla-sync to avoid that user have to set the external_command by their own.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It's just about registering some OSyncPlugin* to OSyncPluginEnv ... even if 
&lt;br&gt;&amp;gt; those are the same shared-module or so.
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;/div&gt;Thank you very much for the explanation!
&lt;br&gt;&lt;br&gt;I am aware that I can create several plugins; but I was thinking that 
&lt;br&gt;maybe there was a way to version plugins / plugin configurations.
&lt;br&gt;&lt;br&gt;But from the answer I understand that this is not the case, so I will 
&lt;br&gt;just create two plugins (the new one probably named mozilla-sync-3).
&lt;br&gt;&lt;br&gt;(As mozilla-sync is now a pure external plugin it will be with two xml 
&lt;br&gt;files, not get_sync_info() ).
&lt;br&gt;&lt;br&gt;/Henrik
&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26320674&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26320674.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26315976</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-12T01:49:38Z</published>
	<updated>2009-11-12T01:49:38Z</updated>
	<author>
		<name>Juha Tuomala-2</name>
	</author>
	<content type="html">&lt;br&gt;&lt;br&gt;&lt;br&gt;On Mon, 9 Nov 2009, Henrik /KaarPoSoft wrote:
&lt;br&gt;&amp;gt; A member of a group has a configuration file.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Would it be possible to implement some mechanism, which would allow us
&lt;br&gt;&amp;gt; to have more than one default configuration file per plugin?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This would make sense, if different versions of a plugin supports
&lt;br&gt;&amp;gt; different AdvancedOptions, different Resources, etc.
&lt;br&gt;&lt;br&gt;Correct me if I'm wrong, if I say that:
&lt;br&gt;- the file is in XML format
&lt;br&gt;- X in XML stands for eXtensible
&lt;br&gt;- tools reading the XML don't care about stuff they don't understand.
&lt;br&gt;- thus the XML, the configuration file is always backwards compatible?
&lt;br&gt;- thus the same file can be used regardless of versions?
&lt;br&gt;&lt;br&gt;br,
&lt;br&gt;&lt;br&gt;Tuju
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;Ajatteleva ihminen tarvitsee unta.
&lt;br&gt;&lt;br&gt;&lt;br&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26315976&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26315976.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26315678</id>
	<title>Re: Could we have several versions of a pluginconfiguration file?</title>
	<published>2009-11-12T01:21:33Z</published>
	<updated>2009-11-12T01:21:33Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Tuesday 10 November 2009 09:56:22 pm Jakub Marczynski wrote:
&lt;br&gt;&amp;gt; &amp;gt; I could of course create just one default configuration file with both
&lt;br&gt;&amp;gt; &amp;gt; Formats, but a GUI would not be able to figure out that this particular
&lt;br&gt;&amp;gt; &amp;gt; version of the external plugin will only support one of them.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Maybe, as a temporary solution, just make thin new version of a plugin
&lt;br&gt;&amp;gt; &amp;nbsp;exist &amp;nbsp;as a new plugin, with another configuration file. Then, there's no
&lt;br&gt;&amp;gt; &amp;nbsp;need to change the Opensync logic. Does it make any sense?
&lt;br&gt;&lt;br&gt;&lt;br&gt;Right. The &amp;quot;thinest&amp;quot; way is to build a OSyncPlugin* and register it with 
&lt;br&gt;osync_plugin_env_register_plugin()!
&lt;br&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; I have never figured out what the plugin's get_version is used for.
&lt;br&gt;&amp;gt; &amp;gt; Could it be used here?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; This is a good point. I found a statement:
&lt;br&gt;&amp;gt; &amp;quot;The format/conversion and main plugin modules that are part of a plugin
&lt;br&gt;&amp;gt; &amp;nbsp;now &amp;nbsp;each have a function int get_version(void). At the moment this
&lt;br&gt;&amp;gt; &amp;nbsp;function must return 1. &amp;quot;
&lt;br&gt;&amp;gt; Is this &amp;quot;MUST&amp;quot; still so importart?
&lt;br&gt;&lt;br&gt;Yes, check:
&lt;br&gt;&lt;br&gt;---8&amp;lt;---
&lt;br&gt;osync_bool osync_module_check(OSyncModule *module, OSyncError **error)
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; int version = 0;
&lt;br&gt;[...]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; version = osync_module_get_version(module);
&lt;br&gt;[...]
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (version != OPENSYNC_PLUGINVERSION) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_error_set(error, OSYNC_ERROR_GENERIC, &amp;quot;Plugin API 
&lt;br&gt;version mismatch. Is: %i. Should %i&amp;quot;, version, OPENSYNC_PLUGINVERSION);
&lt;br&gt;-----&amp;gt;8---
&lt;br&gt;&lt;br&gt;One day we might can use this to support several plugins which are 
&lt;br&gt;build/designed against different OpenSync plugins APIs.
&lt;br&gt;&lt;br&gt;Maybe we should introduce some #define instead of a confusing &amp;quot;return 0&amp;quot; ... 
&lt;br&gt;something like: return OSYNC_PLUGIN_SYNC_API_VERSION_1;
&lt;br&gt;&lt;br&gt;What do you think?
&lt;br&gt;&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26315678&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26315678&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26315678/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26315678.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26315352</id>
	<title>Re: Could we have several versions of a plugin configuration file?</title>
	<published>2009-11-12T00:50:12Z</published>
	<updated>2009-11-12T00:50:12Z</updated>
	<author>
		<name>Daniel Gollub-3</name>
	</author>
	<content type="html">On Monday 09 November 2009 07:08:32 pm Henrik /KaarPoSoft wrote:
&lt;br&gt;[...]
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have never figured out what the plugin's get_version is used for.
&lt;br&gt;&amp;gt; Could it be used here?
&lt;br&gt;&lt;br&gt;Close, try get_sync_info(). get_sync_info() get called when all the plugins 
&lt;br&gt;get loaded:
&lt;br&gt;&lt;br&gt;e.g. osynctool --listplugins
&lt;br&gt;&lt;br&gt;Perfect example would be the SyncML plugin. It's registering 4 plugins in one 
&lt;br&gt;get_version() call...
&lt;br&gt;&lt;br&gt;&lt;br&gt;You do this with osync_plugin_env_register_plugin() or so ...
&lt;br&gt;&lt;br&gt;&lt;br&gt;Just set different names for the plugins, then you can have several default-
&lt;br&gt;configuration, due to the different plugins names.
&lt;br&gt;&lt;br&gt;Example:
&lt;br&gt;&lt;br&gt;------8&amp;lt;-----
&lt;br&gt;osync_bool get_sync_info(OSyncPluginEnv *env, OSyncError **error)
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; OSyncPlugin *plugin;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; plugin = osync_plugin_new(error);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!plugin)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto error;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_name(plugin, &amp;quot;syncml-http-server&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_longname(plugin, &amp;quot;SyncML over HTTP Server&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_description(plugin, &amp;quot;Plugin to synchronize with 
&lt;br&gt;SyncML over HTTP&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_initialize(plugin, syncml_http_server_init);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_finalize(plugin, finalize);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_discover(plugin, syncml_http_server_discover);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!osync_plugin_env_register_plugin(env, plugin, error))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto error;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_unref(plugin);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; plugin = osync_plugin_new(error);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!plugin)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto error;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_name(plugin, &amp;quot;syncml-http-client&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_longname(plugin, &amp;quot;SyncML over HTTP Client&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_description(plugin, &amp;quot;Plugin to synchronize with 
&lt;br&gt;SyncML over HTTP&amp;quot;);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_initialize(plugin, syncml_http_client_init);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_finalize(plugin, finalize);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_set_discover(plugin, syncml_http_client_discover);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (!osync_plugin_env_register_plugin(env, plugin, error))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; goto error;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; osync_plugin_unref(plugin);
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return TRUE;
&lt;br&gt;&lt;br&gt;error:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return FALSE;
&lt;br&gt;}
&lt;br&gt;----8&amp;lt;---
&lt;br&gt;&lt;br&gt;This is registering two plugins, which have two different dfeault-
&lt;br&gt;configuration: syncml-http-client and syncml-http-server.
&lt;br&gt;&lt;br&gt;In the case of the SyncML plugin those plugins just differ in the plugin init 
&lt;br&gt;function and discover function.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Any comments on this would be most appreciated.
&lt;br&gt;[...]
&lt;br&gt;&lt;br&gt;&lt;br&gt;This is what i try suggested some weeks ago to &amp;nbsp;spawn several plugins for the 
&lt;br&gt;mozilla-sync to avoid that user have to set the external_command by their own.
&lt;br&gt;&lt;br&gt;It's just about registering some OSyncPlugin* to OSyncPluginEnv ... even if 
&lt;br&gt;those are the same shared-module or so.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Hope this helps.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Best Regards,
&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Daniel Gollub &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Geschaeftsfuehrer: Ralph Dehner
&lt;br&gt;FOSS Developer &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Unternehmenssitz: &amp;nbsp;Vohburg
&lt;br&gt;B1 Systems GmbH &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Amtsgericht: &amp;nbsp; &amp;nbsp; &amp;nbsp; Ingolstadt
&lt;br&gt;Mobil: +49-(0)-160 47 73 970 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Handelsregister: &amp;nbsp; HRB 3537
&lt;br&gt;EMail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26315352&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gollub@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.b1-systems.de&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.b1-systems.de&lt;/a&gt;&lt;br&gt;&lt;br&gt;Adresse: B1 Systems GmbH, Osterfeldstraße 7, 85088 Vohburg
&lt;br&gt;&lt;a href=&quot;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pgpkeys.pca.dfn.de/pks/lookup?op=get&amp;search=0xED14B95C2F8CA78D&lt;/a&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-devel mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26315352&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-devel@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-devel&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-devel&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (204 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26315352/0/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---Dev-f14407.html&quot; embed=&quot;fixTarget[14407]&quot; target=&quot;_top&quot; &gt;Opensync - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Could-we-have-several-versions-of-a-plugin-configuration-file--tp26271027p26315352.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26310370</id>
	<title>Re: libsyncml failure with N97</title>
	<published>2009-11-11T14:55:23Z</published>
	<updated>2009-11-11T14:55:23Z</updated>
	<author>
		<name>Bernhard Reiter</name>
	</author>
	<content type="html">On Monday 02 November 2009, Michael Bell wrote:
&lt;br&gt;&amp;gt; &amp;gt; From source I've build, on a big endian powerpc GNU/Debian Lenny system:
&lt;br&gt;&amp;gt; &amp;gt; build:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; libwbxml-0.10.7
&lt;br&gt;&amp;gt; &amp;gt; libsyncml-0.5.4
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; b) Side problem:
&lt;br&gt;&amp;gt; &amp;gt; Exporting SYNCML_TRACE=/tmp/somedir
&lt;br&gt;&amp;gt; &amp;gt; lead to a seqmentation fault. (SYNCML_LOG was also set and worked).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Do you still have the logged messages?
&lt;br&gt;&lt;br&gt;bin/syncml-ds-tool -u 0 --identifier &amp;quot;PC Suite&amp;quot; --wbxml --sync text/x-vcard 
&lt;br&gt;Contacts
&lt;br&gt;worked for me today, I have no idea why it works today, this is the same 
&lt;br&gt;command as I was trying a few days ago.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;gt; Program received signal SIGSEGV, Segmentation fault.
&lt;br&gt;&amp;gt; &amp;gt; [Switching to Thread 0x490304d0 (LWP 15122)]
&lt;br&gt;&amp;gt; &amp;gt; 0x0fa644c8 in strlen () from /lib/libc.so.6
&lt;br&gt;&amp;gt; &amp;gt; (gdb) bt
&lt;br&gt;&amp;gt; &amp;gt; #0 &amp;nbsp;0x0fa644c8 in strlen () from /lib/libc.so.6
&lt;br&gt;&amp;gt; &amp;gt; #1 &amp;nbsp;0x0fa2d364 in vfprintf@@GLIBC_2.4 () from /lib/libc.so.6
&lt;br&gt;&amp;gt; &amp;gt; #2 &amp;nbsp;0x0fa528e8 in vasprintf@@GLIBC_2.4 () from /lib/libc.so.6
&lt;br&gt;&amp;gt; &amp;gt; #3 &amp;nbsp;0x0fee27c8 in g_vasprintf () from /usr/lib/libglib-2.0.so.0
&lt;br&gt;&amp;gt; &amp;gt; #4 &amp;nbsp;0x0fec8798 in g_strdup_vprintf () from /usr/lib/libglib-2.0.so.0
&lt;br&gt;&amp;gt; &amp;gt; #5 &amp;nbsp;0x0ff87c74 in smlTrace ()
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;from /mobilehome/bernhard/hacking/opensync/lib/libsyncml.so.2
&lt;br&gt;&amp;gt; &amp;gt; #6 &amp;nbsp;0x0ff8a33c in smlTransportReceiveEvent ()
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;from /mobilehome/bernhard/hacking/opensync/lib/libsyncml.so.2
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This is a bug in a trace statement. Do you have the generated traces
&lt;br&gt;&amp;gt; before the crash happens? Usually this is a good description of the
&lt;br&gt;&amp;gt; error condition.
&lt;/div&gt;&lt;/div&gt;Attached as 20091111-crash.tar.bz2, HTH.
&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Managing Director - Owner: www.intevation.net &amp;nbsp; &amp;nbsp; &amp;nbsp; (Free Software Company)
&lt;br&gt;Deputy Germany Coordinator: fsfeurope.org. Coordinator: Kolab-Konsortium.com.
&lt;br&gt;Intevation GmbH, Neuer Graben 17, Osnabrück, DE; AG Osnabrück, HRB 18998
&lt;br&gt;Geschäftsführer Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner
&lt;br&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;------------------------------------------------------------------------------
&lt;br&gt;Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
&lt;br&gt;trial. Simplify your report design, integration and deployment - and focus on 
&lt;br&gt;what you do best, core application coding. Discover what's new with
&lt;br&gt;Crystal Reports now. &amp;nbsp;&lt;a href=&quot;http://p.sf.net/sfu/bobj-july&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://p.sf.net/sfu/bobj-july&lt;/a&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Opensync-users mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26310370&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Opensync-users@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/opensync-users&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/opensync-users&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;20091111-crash.tar.bz2&lt;/strong&gt; (11K) &lt;a href=&quot;http://old.nabble.com/attachment/26310370/0/20091111-crash.tar.bz2&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;signature.asc&lt;/strong&gt; (205 bytes) &lt;a href=&quot;http://old.nabble.com/attachment/26310370/1/signature.asc&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Opensync---User-f14408.html&quot; embed=&quot;fixTarget[14408]&quot; target=&quot;_top&quot; &gt;Opensync - User&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/libsyncml-failure-with-N97-tp26159735p26310370.html" />
</entry>

</feed>
