Integrate libsane and sane into Solaris [PSARC/2008/170 FastTrack timeout 03/11/2008]

Tzongyu Paul Lee Tzongyu.Lee at sun.com
Thu Mar 6 19:55:02 PST 2008


[non-taxonomy discussion thread, interim update]

I like to summarize the changes so far
per comments and research on the latest data in previous cases:
1) libsane APIs and libsane.so upgraded to Committed.
2) SANE utilities upgraded to Uncommitted.
3) Remove dependency on Gnome, libtiff and libjpeg as they are
Committed interfaces now according to the new
interface taxonomy. It is unnecessary to explicitly list
Committed interfaces in the proposal.

64-bit issue and the corresponding libusb CR will be added to the text
in the final spec.txt.

Best Regards,
T.Paul

---
Tzongyu Paul Lee 写道:
> I am sponsoring this fast-track for Raymond Chen.
> Requested release binding is minor, and the timer is set to
> 03/11/2008.
>
> Regards,
> T.Paul Lee
>
>
> Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
> This information is Copyright 2008 Sun Microsystems
> 1. Introduction
>     1.1. Project/Component Working Name:
> 	 Integrate libsane and sane into Solaris
>     1.2. Name of Document Author/Supplier:
> 	 Author:  Raymond Chen
>     1.3  Date of This Document:
> 	04 March, 2008
> 4. Technical Description
> Summary
> 	This project integrates libsane and sane into Solaris.
> 	This project requests a minor binding.
> 	
> 4.1 Details
> 	
> 	SANE is an application programming interface (API) that provides
> 	standardized access to any raster image scanner hardware. The
> 	standardized interface  makes  it possible to write just one
> 	driver for each scanner device instead of one driver for each
> 	scanner and application.
> 	
> 	SANE is clearly separated into applications(frontends) and scanner
> 	drivers(backends). A SANE backend provides an interface with the
> 	hardware and describes a number of options which drive each scanner.
> 	sane, in this proposal, refers to applications that
> 	are delivered by SANE community, http://www.sane-project.org/.
>
> 	"sane-backends" package of FOSS project SANE contains backends,
> 	documentation, networking support and the command line frontend
> 	"scanimage".
>
> 	In this project, the following components will be ported and
> 	integrated into Solaris:
>
> 	    1)sane-backends
> 	    	sane-backends contain drivers for popular scanners on the
> 		market. This project proposes to only support local USB
> 		scanners.
> 		As an effort to enrich desktop applications for Indiana,
> 		SANE network feature is not considered essential and hence
> 		out of scope for this project. A future case may support
> 		this functionality.
>
> 	    2)libsane
> 	    	Standard SANE APIs are provided by libsane. Different
> 		frontends are developed on the base of such set of API.
>
> 	    3)sane documentation
> 	    	User manuals.
>
> 	    4)scanimage
> 	    	scanimage is a command-line interface to control image
> 		acquisition devices. It is one of the SANE frontends.
>
> 	    5)xscanimage
> 	    	xscanimage provides a graphical user interface to control
> 		an image acquisition device such as scanner. It allows
> 		previewing and scanning individual images.
> 	
> 	SANE depends on the scanner's device special file for access control.
> 	For USB interface scanners, by default only users on console or
> 	superuser have permission to access the devnode, which is controlled
> 	by logindevperm(4). It is also possible to restrict access to a
> 	scanner using Solaris device allocation subsystem. Sysadmin can enable
> 	BSM and put scanner device special file (exported by ugen(7D)) in
> 	device_map and device_allocate(4), so that the scanner is allocatable
> 	and then can be used by only one qualified user at a time.
>
>  
> 4.2 Interface description
>
>     All interfaces in sane.h and saneopts.h are exported as Volatile.
>
>     Exported interfaces
>     -------------------
>     SUNWsane			Uncommitted	SANE frontends
>     SUNWsane-backends		Uncommitted	SANE backends --
>     						library and drivers
>     /usr/include/sane/sane.h	Volatile	SANE API header file
>     /usr/include/sane/saneopts.h	Volatile SANE options header file
>     /usr/lib/libsane.so.1.0.19	Volatile	SANE library
>     /usr/lib/sane/*		Volatile	SANE backends
>     /etc/sane.d/dll.conf	Volatile	Contain backend names
>     /etc/sane.d/*.conf		Volatile	Each backend has a .conf
>
>     /usr/bin/scanimage		Volatile	SANE CLI frontend
>     /usr/bin/xscanimage		Volatile	SANE GUI frontend
>     /usr/bin/sane-config	Volatile	Utility to get information
>     						about installed libsane
>     /usr/bin/sane-find-scanner	Volatile	Utility to find scanners
>
>     /usr/share/man/man1/scanimage.1	Volatile	manual
>     /usr/share/man/man1/xscanimage.1	Volatile	manual
>     /usr/share/man/man1/sane-find-scanner.1	Volatile	manual
>     /usr/share/man/man1/sane-config.1	Volatile	manual
>     /usr/share/man/man7/sane.7	Volatile	manual
>     /usr/share/man/man5/sane-*.5	Volatile	Sane backends manual
>
>     --------------- SANE C API ----------------------------------------
>     sane_init		Volatile	Initialize the backend
>     sane_exit		Volatile	Terminate use of a backend
>     sane_get_devices	Volatile	Query the list of devices
>     sane_open		Volatile	Establish association with a
>     					particular device
>     sane_close		Volatile	Terminates the above association 
>     sane_get_option_descriptor	Volatile	Access option descriptors
>     sane_control_option	Volatile	Set/query the current value of
>     					option number 
>     sane_get_parameters	Volatile	Obtain the current scan parameters
>     sane_start		Volatile	Initiates acquisition of an image
>     sane_read		Volatile	Read image data from the device
>     sane_cancel		Volatile	Cancel the pending operation
>     sane_set_io_mode	Volatile	Set the I/O mode
>     sane_get_select_fd	Volatile	Obtain file-descriptor from handle
>     sane_strstatus	Volatile	Translate SANE status code into
>     					printable string 
>
>     Imported Interfaces
>     --------------------
>     libusb		Volatile	User-space USB device management
>     					library
>     libjpeg		Uncommitted	JPEG image compression and
>     					decompression
>     libtiff		Uncommitted     Reading and writing TIFF files
>     GTK+		Volatile        GNOME Desktop Library  
>     GDK			Volatile        GNOME Desktop Library
>
>
> 5. References
> 	[1] http://www.sane-project.org/
> 	[2] LSARC/2006/734 GNOME 2.16
> 	[3] LSARC 2003/085 libtiff, libjpeg and libpng.
> 	[4] PSARC 2003/721 libusb: user level usb library
> 	[5] LSARC 2007/018 Sane-backends and Xsane
>
> 6. Resources and Schedule
>     6.4. Steering Committee requested information
>    	6.4.1. Consolidation C-team Name:
> 		sfw
>     6.5. ARC review type: FastTrack
>     6.6. ARC Exposure: open
>
>   


-- 
Tzongyu Paul Lee, Tzongyu.Lee at Sun.Com or Paul.Lee at Sun.COM
BJS05 7225, x84343
http://blogs.sun.com/tpaullee/  Feel the Pulses of China
http://tpaullee.blogspot.com/

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: spec.txt
URL: <http://mail.opensolaris.org/pipermail/opensolaris-arc/attachments/20080307/500f6d0c/attachment.txt>


More information about the opensolaris-arc mailing list