I'm sponsoring this fast-track case for Bill Yan. This case is to
integrate an open source file synchronizer 'unison' into Solaris.
A draft man page of this tool was put in the case directory.

The requested binding is patch/micro. The timer is set to 03/31/2008.

-Frank

4. Technical Description
     The intent of this case is to integrate an open source file synchronizer
     'unison' into Solaris OS.

4.1 Unison Introduction
     Unison is a cross-platform file-synchronization tool [1]. It allows two
     replicas of a collection of files and directories to be stored on
     different hosts (or different disks on the same host), modified
     separately, and then brought up to date by propagating the changes in each
     replica to the other. [2]

4.2 Security concerns:
     Security becomes a concern when synchronizing files across network. Unison
     provides two methods for communicating between the client and the server:

     * Remote shell method: To use this method, you must have some way of
     invoking remote commands on the server from the client's command line,
     using a facility such as ssh. This method is more convenient and also more
     secure (especially if you use ssh).

     * Socket method: This method requires only that you can get TCP packets
     from the client to the server and back.
     The socket method is insecure: not only are the texts of your changes
     transmitted over the network in unprotected form, it is also possible for
     anyone in the network to connect to the server process and read out the
     contents of your file system! The socket method is provided only for
     expert users with specific needs; everyone else should use the remote
     shell (ssh) method.

4.3 Limitations:
     There are a few limitations in current version of Unison [2]:

4.3.1 In the interests of speed, the update detection algorithm may (depending
on which OS architecture that you run Unison on) actually use an
approximation.

4.3.2 When synchronize between a single-user file system and a shared Unix
server, by default, Unison will synchronize permissions verbatim, which may
leave group-writable files on the server that could be written over by a lot of
people.

4.3.3 The graphical user interface of Unison is single-threaded.

4.3.4 Unison does not understand hard links.

4.3.5 Renaming directories that containing "ignore"d files may result in loss
of data.

4.5 Interfaces

4.5.1 Imported Interfaces
     +------------------------------------------------------------------+
     |        NAME           | STABILITY LABEL |       DESCRIPTION      |
     +-----------------------+-----------------+------------------------+
     | libsocket             | Committed       | PSARC/1995/014         |
     +------------------------------------------------------------------+

4.5.2 Exported Interfaces
     +------------------------------------------------------------------+
     |        NAME           | PROPOSED        |      DESCRIPTION       |
     |                       | STABILITY LABEL |                        |
     +-----------------------+-----------------+------------------------+
     | SUNWunison            | Uncommitted     | Unison package         |
     |-----------------------+-----------------+------------------------|
     | /usr/bin/unison       | Committed       | Unison executable      |
     |-----------------------+-----------------+------------------------|
     | ~/.unison/default.prf | Uncommitted     | Unison default profile |
     +------------------------------------------------------------------+

4.6 Release binding
     Release binding requested: patch/micro.


6. Resources and Schedule
     6.4 Steering Committee Requested Information
     6.4.1 Consolidation C-team Name: SFW
     6.5 ARC review type: Fast Track
     6.6 ARC exposure: open


Footnotes:
----------
     [1] http://www.cis.upenn.edu/~bcpierce/unison
     [2] See man page of Unison for more details.



Reply via email to