diff --git a/CASA/doc/product/Readme.txt b/CASA/doc/product/Readme.txt index 3eafc463..332eeaf5 100755 --- a/CASA/doc/product/Readme.txt +++ b/CASA/doc/product/Readme.txt @@ -1,503 +1,173 @@ Common Authentication Service Adapter (CASA) +September 28, 2007 -1.0 Overview - -2.0 Documentation - -3.0 Known Issues - -4.0 Legal Notices - - -1.0 Overview - - Common Authentication Service Adapter (CASA) provides - a common infrastructure for client authentication - across the Linux* and Microsoft* Windows* desktops. - Novell products (such as GroupWise, GroupWise - Messenger, iPrint, Novell iFolder, and the Novell - clients for Windows and Linux) are integrated with the - miCASA interface and can take advantage of the - credential store that provides the cornerstone for - CASA. - - The main components of CASA on Linux are: - - - CASA Identity Development Kit (IDK): The IDK - provides a set of APIs that application and service - developers can use to write user/application - credentials to the credential store. The IDK APIs - internally store the credentials passed onto them - by the applications in miCASAd. There are C, C++, - C# and Java bindings available for the CASA IDK. - - - miCASAd: An active component that starts during - boot time. On Linux, miCASAd is available in the - run-levels 1, 2, 3 and 5. It runs with root - privileges and is active as long as the system is - up. It stores and provides credentials or secrets - based on the Linux user identifier (uid) of the - process that makes the IDK API calls. The - credentials, which are stored by applications in - miCASAd, are maintained in memory and written to - disk for this release. Session-based secrets implies - secrets that are stored in an in-memory cache, are - available only as long as the user is in session on - the desktop, and are destroyed when miCASA daemon - is restarted or the user logs off. When the user - logs back in, the secrets written to disk are read - back into memory. - - - Login Credential Capture Module: On Linux, the - login credential capture module is implemented as a - PAM module. This PAM module captures the user's - desktop login credentials and stores them in - miCASAd using the IDK APIs. This PAM module is - placed as the last module in the auth and session - stacks of xdm, gdm, kdm, login and sshd PAM - configuration files. The functionality of this - module is to store the credentials in miCASAd. - - Any PAM module that uses the IDK APIs must set its - effective user id temporarily to that of the user - logging in (the user returned by calling - pam_get_user()), if the credentials need to be - stored against that user. There might be cases - where the user obtained through pam_get_user() - might not be the one against whom the PAM module - actually intends to store credentials. - - -2.0 Documentation - - To read or print the documentation, you need Adobe - Acrobat Reader 4.0 - (http://www.adobe.com/prodindex/acrobat/readstep.html) - . - - The document in this download was created as a - standalone file; therefore, links to files in other - downloads will not resolve. - - The download includes a single file: - CASA_Reference_Guide.pdf in the [install directory]\doc - directory. - - -3.0 Known issues - - - Secrets with IDs using reserved characters may fail. - These will be fixed in a future release. Reserved - characters are - : - \ - - - CASA Manager might report an error stating that - miCASA Services are not available when selecting - the 'File' option on the main menu. This problem - is resolved by upgrading mono to the latest version - (1.1.9 or later) available for download at - http://www.mono-project.com/Downloads. - - - CASA install rpm that is intended for 32 bit architecture - should not be installed on 64 bit architecture because - it can cause runtime problems. - - - Since CASA is tied to the Linux login process via PAM, - events that cause the system to become inconsistent or - unstable may cause a user to be unable to login to the - workstation. Some possible causes of inconsistency or - instability are: - - - Installing 32 bit CASA RPMs on a 64 bit OS - - Performing a hard reset on the machine - - Following the steps below will restore the ability to - login. - - 1) Reboot machine - 2) When boot loader menu appears, type "init=/bin/bash" - (without quotes) on the options line and then Enter. - This will cause the machine to boot into a command - shell with root privileges. - 3) At the command prompt type "chkconfig micasad off" - (without quotes). This will prevent the CASA daemon - from being loaded during bootup. - 4) With a console based text editor (i.e. vi, emacs) - remove all lines referencing the pam_micasa module in - the following pam configuration files (some files may - not exist depending on what desktop managers have - been installed: - - - /etc/pam.d/gdm - - /etc/pam.d/xdm - - /etc/pam.d/kdm - - /etc/pam.d/sshd - - /etc/pam.d/login - - 5) At the command prompt type "init 5" (without quotes) - to boot into runlevel 5. This will provide you with a - graphical login prompt. You should be able to login - at this point. - - After you have restored login capabilities, you will need - to resolve the inconsistency that prevented login in the - first place. If you had installed a 32 bit CASA package - on a 64 bit OS, you will need to uninstall the 32 bit - package and install a CASA package built for 64 bit - architectures. If you are recovering from a hard reset - no further action should be needed. - - To make it so CASA will run at boot time, open a shell and - at the prompt type "chkconfig micasad 1235" (without - quotes). This will cause micasad to be run at runlevels - 1, 2, 3, and 5. - - - When logged in to a KDE session, the gnome-keyring-daemon - does not run by default. Therefore, all apps that access - the daemon, including our CASAManager will not be able to - manage/access the gnome-keyring. - - You can manually start the daemon by running the following - command from a shell prompt: - - gnome-keyring-daemon - - When the gnome-keyring-daemon starts, it prints the - GNOME_KEYRING_SOCKET environment variable and its value to - the terminal. In Gnome, the daemon is started and the - environment variable is loaded into your X session - environment by default, but in KDE, you will - have to manually load it. - - To load this environment variable, run a command similar to - the following command from a shell prompt (replacing the - value of the environment variable with what the daemon - output to the screen when you started it): - - export GNOME_KEYRING_SOCKET=/tmp/keyring-oaTsPs/socket - - Then you can run CASAManager GUI (from the same terminal - you exported the variable from) and you will be able to - manage and use the gnome-keyring in KDE just like you - could if you were logged into Gnome. - -4.0 Legal Notices - - Novell, Inc. makes no representations or warranties - with respect to the contents or use of this - documentation, and specifically disclaims any express - or implied warranties of merchantability or fitness - for any particular purpose. Further, Novell, Inc. - reserves the right to revise this publication and to - make changes to its content, at any time, without - obligation to notify any person or entity of such - revisions or changes. - - Further, Novell, Inc. makes no representations or - warranties with respect to any software, and - specifically disclaims any express or implied - warranties of merchantability or fitness for any - particular purpose. Further, Novell, Inc. reserves the - right to make changes to any and all parts of Novell - software, at any time, without any obligation to - notify any person or entity of such changes. - - - You may not use, export, or re-export this product in - violation of any applicable laws or regulations - including, without limitation, U.S. export regulations - or the laws of the country in which you reside. - - - Copyright 2005 Novell, Inc. All rights reserved. - Permission is granted to copy, distribute, and/or - modify this document under the terms of the GNU Free - Documentation License (GFDL), Version 1.2 or any later - version, published by the Free Software Foundation - with no Invariant Sections, no Front-Cover Texts, and - no Back-Cover Texts. A copy of the GFDL can be found - at http://www.fsf.org/licenses/fdl.html. - - THIS DOCUMENT AND MODIFIED VERSIONS OF THIS DOCUMENT - ARE PROVIDED UNDER THE TERMS OF THE GNU FREE - DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING - THAT: - - 1. THE DOCUMENT IS PROVIDED ON AN "AS IS" BASIS, - WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR - IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES - THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT - IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR - PURPOSE, OR NON-INFRINGING. THE ENTIRE RISK AS TO THE - QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR - MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD - ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN - ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR - ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY - SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF - WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS - LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF - THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS - DISCLAIMER; AND - - 2. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, - WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR - OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY - CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR - MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF - ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY - DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR - CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, - WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK - STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND - ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING - TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE - DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED - OF THE POSSIBILITY OF SUCH DAMAGES. +* Section 1, “Overview” +* Section 2, “Documentation" +* Section 3, “Documentation Conventions" +* Section 4, “Known Issues" +* Section 5, “Open Source Code" +* Section 6, “Legal Notices" +1 Overview - Novell, Inc. has intellectual property rights relating - to technology embodied in the product that is - described in this document. In particular, and without - limitation, these intellectual property rights may - include one or more of the U.S. patents listed at - http://www.novell.com/company/legal/patents/ and one - or more additional patents or pending patent - applications in the U.S. and in other countries. +Common Authentication Service Adapter (CASA) provides a common infrastructure for client authentication across the Linux* and Microsoft* Windows* desktops. Novell® products (such as GroupWise®, GroupWise Messenger, iPrint, Novell iFolder®, and the Novell clients for Windows and Linux) are integrated with the miCASA interface and can take advantage of the credential store that provides the cornerstone for CASA. +CASA provides the following main components: - AppNotes is a registered trademark of Novell, Inc. + * CASA Identity Development Kit (IDK): The developer kit provides a set of APIs that application and service developers can use to write user/application credentials to the credential store. The APIs internally store the credentials passed onto them by the applications in miCASAd. There are C, C++, C# and Java bindings available for the CASA Identity Development Kit (IDK). - AppTester is a registered trademark of Novell, Inc. in - the United States. + * Login Credential Capture Module: On Linux, the login credential capture module is implemented as a PAM module. This PAM module captures the user’s desktop login credentials and stores them in miCASAd using the IDK APIs. This PAM module is placed as the last module in the auth and session stacks of xdm, gdm, kdm, login and sshd PAM configuration files. In the auth stack, the functionality of this module is to store the credentials in miCASAd and in the session stack, then closes the user’s session with miCASAd. - ASM is a trademark of Novell, Inc. + * miCASAd: An active component that starts during boot time. - BorderManager is a registered trademark of Novell, - Inc. +Linux: - BrainShare is a registered service mark of Novell, - Inc. in the United States and other countries. +miCASAd stores and provides credentials or secrets based on the user identifier (uid) of the process that makes the IDK API calls. It is available in the run-levels 1, 2, 3 and 5. It runs with root privileges and is active as long as the system is up. - C3PO is a trademark of Novell, Inc. +Windows: - Certified Novell Engineer is a service mark of Novell, - Inc. +CASA consists of a single CASA.msi, which is the installation module that contains the following components that match their Linux counterparts: - Client32 is a trademark of Novell, Inc. + * CASA-gui.msm - CNE is a registered service mark of Novell, Inc. + * CASA.msm - ConsoleOne is a registered trademark of Novell, Inc. +A separate Windows package called CASA-devel.msi installs the CASA development kit. - Controlled Access Printer is a trademark of Novell, - Inc. +Credentials saved by user applications are encrypted and saved to the file system. When the user logs into the desktop, the credentials are read back into computer memory and made available to user applications. - Custom 3rd-Party Object is a trademark of Novell, Inc. +NOTE: Any pluggable authentication module (PAM) that uses the IDK APIs must set its effective user ID temporarily to that of the user logging in (the user returned by calling pam_get_user()), if the credentials need to be stored against that user. There might be cases where the user obtained through pam_get_user() might not be the one against whom the PAM module actually intends to store credentials. - DeveloperNet is a registered trademark of Novell, Inc. - in the United States and other countries. +2 Documentation - DirXML is a registered trademark of Novell, Inc. +The following sources provide information about CASA: - eDirectory is a trademark of Novell, Inc. + * Product documentation included with the software: The download includes a single file: CASA Administration Guide(casa_enu.pdf) in the [install directory]\doc directory. - Excelerator is a trademark of Novell, Inc. + * Novell CASA online product documentation: Common Authentication Service Adapter (http://developer.novell.com/wiki/index.php/Casa) - exteNd is a trademark of Novell, Inc. + * Bandit Open Source Common Authentication Services Adapter (CASA) Documentation (http://www.bandit-project.org/index.php/Common_Authentication_Services_Adapter_%28CASA%29_Documentation) - exteNd Director is a trademark of Novell, Inc. +To read or print the documentation, you need Adobe Acrobat Reader 4.0 (http://www.adobe.com/prodindex/acrobat/readstep.html). + +The document in this download was created as a standalone file; therefore, links to files in other downloads will not resolve. - exteNd Workbench is a trademark of Novell, Inc. +3 Documentation Conventions - FAN-OUT FAILOVER is a trademark of Novell, Inc. +In this documentation, a greater-than symbol (>) is used to separate actions within a step and items in a cross-reference path. - GroupWise is a registered trademark of Novell, Inc. in - the United States and other countries. +A trademark symbol (® , TM, etc.) denotes a Novell trademark; an asterisk (*) denotes a third-party trademark. - Hardware Specific Module is a trademark of Novell, - Inc. +4 Known Issues - Hot Fix is a trademark of Novell, Inc. +Here are some known issues when deploying CASA 1.7: + * Section 4.1, “Secret ID Failure" + * Section 4.2, “Upgrading the CASA Authentication Service" + * Section 4.3, “Runtime Architecture Compatibility" + * Section 4.4, “Unstable Login Conditions" + * Section 4.5, “Manually Starting the Gnome Keyring" + * Section 4.6, “Installing CASA Developer Packages" - iChain is a registered trademark of Novell, Inc. +4.1 Secret ID Failure - Internetwork Packet Exchange is a trademark of Novell, - Inc. +Secrets with IDs using \ as a reserved character might fail. This will be fixed in a future release. - IPX is a trademark of Novell, Inc. +4.2 Upgrading the CASA Authentication Service - IPX/SPX is a trademark of Novell, Inc. +There is a know problem with upgrading the CASA authentication service (ATS) to a later release. +If you upgrade manually, you must first stop the CASA ATS before applying the upgrade. You do this by issuing the following command: /etc/init.d/casa_atsd stop - jBroker is a trademark of Novell, Inc. +You may then proceed with the upgrade. - Link Support Layer is a trademark of Novell, Inc. +If the upgrade occurs as part of an automated update, then the CASA ATS must be restarted using the following procedure: - LSL is a trademark of Novell, Inc. + 1 Find the CASA ATS process that needs to be killed by entering the following comand: ps -ef | grep casaats - ManageWise is a registered trademark of Novell, Inc., - in the United States and other countries. + 2 Kill the listed ATS process. - Mirrored Server Link is a trademark of Novell, Inc. + 3 Restart the CASA ATS by entering the following command: /etc/init.d/casa_atsd start - Mono is a registered trademark of Novell, Inc. +4.3 Runtime Architecture Compatibility - MSL is a trademark of Novell, Inc. +To avoid runtime problems, do not install CASA 32 bit architecture RPMs intended for 64 bit architecture machines. - My World is a registered trademark of Novell, Inc. in - the United States. +4.4 Unstable Login Conditions - NCP is a trademark of Novell, Inc. +Because CASA is tied to the Linux login process via a PAM, events that cause the system to become inconsistent or unstable might prevent users from logging in to workstations. Some possible causes of inconsistency or instability are: - NDPS is a registered trademark of Novell, Inc. + * Installing 32 bit CASA RPMs on a 64 bit OS - NDS is a registered trademark of Novell, Inc. in the - United States and other countries. + * Performing a hard reset on the machine - NDS Manager is a trademark of Novell, Inc. + Use the following steps to restore the ability to login: - NE2000 is a trademark of Novell, Inc. + 1 Reboot the machine. - NetMail is a registered trademark of Novell, Inc. + 2 When boot loader menu appears, execute init=/bin/bash on the command option line. This causes the machine to boot into a command shell with root privileges. - NetWare is a registered trademark of Novell, Inc. in - the United States and other countries. + 3 To prevent the CASA daemon from loading during bootup, enter the following at the command prompt: +chkconfig micasad off - NetWare/IP is a trademark of Novell, Inc. + 4 With a console-based text editor (e.g., Vi, Emacs), remove all lines referencing the pam_micasa module in the following PAM configuration files (some files may not exist, depending on which desktop managers are installed): + * /etc/pam.d/gdm + * /etc/pam.d/xdm + * /etc/pam.d/kdm + * /etc/pam.d/sshd + * /etc/pam.d/login - NetWare Core Protocol is a trademark of Novell, Inc. + 5 At the command prompt execute init 5 to boot into runlevel 5 to obtain a graphical login prompt. You should be able to login at this point. - NetWare Loadable Module is a trademark of Novell, Inc. + 6 To enable CASA to run at boot time, open a shell and at the prompt type +chkconfig micasad 1235. This causes micasad to run at runlevels 1, 2, 3, and 5. - NetWare Management Portal is a trademark of Novell, - Inc. + 7 After you have restored login capabilities, resolve the inconsistency that prevented the initial login. If you had installed a 32 bit CASA package on a 64 bit OS, uninstall the 32 bit package and install a CASA package built for 64 bit architectures. If you are recovering from a hard reset, no further action should be needed. - NetWare Name Service is a trademark of Novell, Inc. +4.5 Manually Starting the Gnome Keyring - NetWare Peripheral Architecture is a trademark of - Novell, Inc. +When logged in to a KDE session, the gnome-keyring-daemon does not run by default. Therefore, all applications that access the daemon, including the CASAManager, will not be able to access or manage the gnome-keyring. - NetWare Requester is a trademark of Novell, Inc. +You can manually start the daemon by running the following command from a shell prompt: gnome-keyring-daemon + +After the gnome-keyring-daemon starts, it prints the GNOME_KEYRING_SOCKET environment variable and its value to the terminal. In Gnome, the daemon starts and the environment variable loads into your X session environment by default. However, in KDE, you must manually load this environment variable: - NetWare SFT and NetWare SFT III are trademarks of - Novell, Inc. + 1 Run a command similar to the following command from a shell prompt (replacing the value of the environment variable with what the daemon output to the screen when you started it): export GNOME_KEYRING_SOCKET=/tmp/keyring-oaTsPs/socket - NetWare SQL is a trademark of Novell, Inc. + 2 Run the CASAManager GUI (from the same terminal you exported the variable from). +You can now manage and use the gnome-keyring in KDE just like you could if you were logged into Gnome. - NetWire is a registered service mark of Novell, Inc. - in the United States and other countries. +4.6 Installing CASA Developer Packages - NLM is a trademark of Novell, Inc. +CASA-devel packages are available only for software development and are not automatically included when installing a production Novell Open Enterprise Server. Developers should install CASA-devel at the same time Auth-token-server-devel and Auth-token-client-devel are installed. CASA is an Open Source project found at http://forge.novell.com/modules/xfmod/project/?casa. Download CASA-devel from there. + +4.7 Using CASA in chroot Environment - NMAS is a trademark of Novell, Inc. +For an application to access CASA in a change root (chroot) environment, the root user must do the following: - NMS is a trademark of Novell, Inc. + 1 Copy the micasa libraries to the chroot directory, as shown in the following example: cp /usr/lib/libmicasa* /usr/lib/ - Novell is a registered trademark of Novell, Inc. in - the United States and other countries. + 2 Create the CASA socket file in the chroot directory by linking the current CASA socket. An example of how to do this is explained below: - Novell Application Launcher is a trademark of Novell, - Inc. + 2a From the /var/run directory, execute the following command: ln /var/run/.novellCASA - Novell Authorized Service Center is a service mark of - Novell, Inc. +NOTE: The chrootdir must be on the same disk partition as /var/run. - Novell Certificate Server is a trademark of Novell, - Inc. +5 Open Source Code - Novell Client is a trademark of Novell, Inc. +Novell, hereby, offers to give any third party a complete machine-readable copy of the source code of Common Authentication Service Adapter (CASA) under the terms of Sections 1 and 2 of version 2 of the GNU General Public License as published by the Free Software Foundation, on a medium customarily used for software interchange. Please contact Novell Developer Services if you require a copy of the same. - Novell Cluster Services is a trademark of Novell, Inc. +6 Legal Notices - Novell Directory Services is a registered trademark of - Novell, Inc. +Novell, Inc. makes no representations or warranties with respect to the contents or use of this documentation, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. Further, Novell, Inc. reserves the right to revise this publication and to make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes. - Novell Distributed Print Services is a trademark of - Novell, Inc. +Further, Novell, Inc. makes no representations or warranties with respect to any software, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. Further, Novell, Inc. reserves the right to make changes to any and all parts of Novell software, at any time, without any obligation to notify any person or entity of such changes. - Novell iFolder is a registered trademark of Novell, - Inc. +Any products or technical information provided under this Agreement may be subject to U.S. export controls and the trade laws of other countries. You agree to comply with all export control regulations and to obtain any required licenses or classification to export, re-export, or import deliverables. You agree not to export or re-export to entities on the current U.S. export exclusion lists or to any embargoed or terrorist countries as specified in the U.S. export laws. You agree to not use deliverables for prohibited nuclear, missile, or chemical biological weaponry end uses. Please refer to the Novell International Trade Services Web page (http://www.novell.com/info/exports/) for more information on exporting Novell software. Novell assumes no responsibility for your failure to obtain any necessary export approvals. - Novell Labs is a trademark of Novell, Inc. - - Novell SecretStore is a registered trademark of - Novell, Inc. - - Novell Security Attributes is a trademark of Novell, - Inc. - - Novell Storage Services is a trademark of Novell, Inc. - - Novell, Yes, Tested & Approved logo is a trademark of - Novell, Inc. - - Nsure is a registered trademark of Novell, Inc. - - Nterprise is a trademark of Novell, Inc. - - Nterprise Branch Office is a trademark of Novell, Inc. - - ODI is a trademark of Novell, Inc. - - Open Data-Link Interface is a trademark of Novell, - Inc. - - Packet Burst is a trademark of Novell, Inc. - - PartnerNet is a registered service mark of Novell, - Inc. in the United States and other countries. - - Printer Agent is a trademark of Novell, Inc. - - QuickFinder is a trademark of Novell, Inc. - - Red Box is a trademark of Novell, Inc. - - Red Carpet is a registered trademark of Novell, Inc. - in the United States and other countries. - - Sequenced Packet Exchange is a trademark of Novell, - Inc. - - SFT and SFT III are trademarks of Novell, Inc. - - SPX is a trademark of Novell, Inc. - - Storage Management Services is a trademark of Novell, - Inc. - - SUSE is a registered trademark of SUSE AG, a Novell - business. - - System V is a trademark of Novell, Inc. - - Topology Specific Module is a trademark of Novell, - Inc. - - Transaction Tracking System is a trademark of Novell, - Inc. - - TSM is a trademark of Novell, Inc. - - TTS is a trademark of Novell, Inc. - - Universal Component System is a registered trademark - of Novell, Inc. - - Virtual Loadable Module is a trademark of Novell, Inc. - - VLM is a trademark of Novell, Inc. - - Yes Certified is a trademark of Novell, Inc. - - ZENworks is a registered trademark of Novell, Inc. in - the United States and other countries. - - - All third-party trademarks are the property of their - respective owners. +Copyright © 2007 Novell, Inc. All rights reserved. No part of this publication may be reproduced, photocopied, stored on a retrieval system, or transmitted without the express written consent of the publisher. +Novell, Inc. has intellectual property rights relating to technology embodied in the product that is described in this document. In particular, and without limitation, these intellectual property rights may include one or more of the U.S. patents listed on the Novell Legal Patents Web page (http://www.novell.com/company/legal/patents/) and one or more additional patents or pending patent applications in the U.S. and in other countries. +For Novell trademarks, see the Novell Trademark and Service Mark list (http://www.novell.com/company/legal/trademarks/tmlist.html). +All third-party trademarks are the property of their respective owners. diff --git a/CASA/doc/product/casa_enu.pdf b/CASA/doc/product/casa_enu.pdf index 8bb2fec3..5a58a755 100644 Binary files a/CASA/doc/product/casa_enu.pdf and b/CASA/doc/product/casa_enu.pdf differ diff --git a/CASA/extern/w32/namedpipes/AppModule.InterProcessComm/AppModule.InterProcessComm.xml b/CASA/extern/w32/namedpipes/AppModule.InterProcessComm/AppModule.InterProcessComm.xml index 72cf09ae..5930b717 100644 --- a/CASA/extern/w32/namedpipes/AppModule.InterProcessComm/AppModule.InterProcessComm.xml +++ b/CASA/extern/w32/namedpipes/AppModule.InterProcessComm/AppModule.InterProcessComm.xml @@ -4,87 +4,33 @@ AppModule.InterProcessComm - - - Interface, which defines methods for a Channel Manager class. - - - A Channel Manager is responsible for creating and maintaining channels for inter-process communication. The opened channels are meant to be reusable for performance optimization. Each channel needs to procees requests by calling the HandleRequest method of the Channel Manager. - - - - - Initializes the Channel Manager. - - - - - Closes all opened channels and stops the Channel Manager. - - - - - Handles a request. - - - This method currently caters for text based requests. XML strings can be used in case complex request structures are needed. - - The incoming request. - The resulting response. - - - - Forces the Channel Manager to exit a sleeping mode and create a new channel. - - - Normally the Channel Manager will create a number of reusable channels, which will handle the incoming reqiests, and go into a sleeping mode. However if the request load is high, the Channel Manager needs to be asked to create additional channels. - - - - - Removes an existing channel. - - A parameter identifying the channel. - - - - Indicates whether the Channel Manager is in listening mode. - - - This property is left public so that other classes, like a server channel can start or stop listening based on the Channel Manager mode. - - - + - + - - - + - - - + - - + - + - + + @@ -231,33 +177,87 @@ - + + + Interface, which defines methods for a Channel Manager class. + + + A Channel Manager is responsible for creating and maintaining channels for inter-process communication. The opened channels are meant to be reusable for performance optimization. Each channel needs to procees requests by calling the HandleRequest method of the Channel Manager. + + + + + Initializes the Channel Manager. + + + + + Closes all opened channels and stops the Channel Manager. + + + + + Handles a request. + + + This method currently caters for text based requests. XML strings can be used in case complex request structures are needed. + + The incoming request. + The resulting response. + + + + Forces the Channel Manager to exit a sleeping mode and create a new channel. + + + Normally the Channel Manager will create a number of reusable channels, which will handle the incoming reqiests, and go into a sleeping mode. However if the request load is high, the Channel Manager needs to be asked to create additional channels. + + + + + Removes an existing channel. + + A parameter identifying the channel. + + + + Indicates whether the Channel Manager is in listening mode. + + + This property is left public so that other classes, like a server channel can start or stop listening based on the Channel Manager mode. + + + - + + + - + + + - + - + + - + - - + diff --git a/CASA/extern/w32/namedpipes/AppModule.NamedPipes/AppModule.NamedPipes.xml b/CASA/extern/w32/namedpipes/AppModule.NamedPipes/AppModule.NamedPipes.xml index 4c9dc960..5428ff27 100644 --- a/CASA/extern/w32/namedpipes/AppModule.NamedPipes/AppModule.NamedPipes.xml +++ b/CASA/extern/w32/namedpipes/AppModule.NamedPipes/AppModule.NamedPipes.xml @@ -4,6 +4,234 @@ AppModule.NamedPipes + + + A utility class that exposes named pipes operations. + + + This class uses the exposed exposed kernel32.dll methods by the + NamedPipeNative class + to provided controlled named pipe functionality. + + + + + This exception is thrown by named pipes communication methods. + + + + + Creates a NamedPipeIOException instance. + + The error message text. + + + + Creates a NamedPipeIOException instance. + + The error message text. + The native error code. + + + + Creates a NamedPipeIOException instance. + + The serialization information. + The streaming context. + + + + A utility class that exposes named pipes operations. + + + This class uses the exposed exposed kernel32.dll methods by the + NamedPipeNative class + to provided controlled named pipe functionality. + + + + + The number of retries when creating a pipe or connecting to a pipe. + + + + + Wait time for the + NamedPipeNative.WaitNamedPipe + operation. + + + + + Reads a string from a named pipe using the UTF8 encoding. + + The pipe handle. + The maximum bytes to read. + A UTF8 string. + This function uses + AppModule.NamedPipes.ReadBytes + to read the bytes from the pipe and then converts them to string.

+ The first four bytes of the pipe data are expected to contain + the data length of the message. This method first reads those four + bytes and converts them to integer. It then continues to read from the pipe using + the extracted data length. +
+
+ + + Reads the bytes from a named pipe. + + The pipe handle. + The maximum bytes to read. + An array of bytes. + This method expects that the first four bytes in the pipe define + the length of the data to read. If the data length is greater than + maxBytes the method returns null.

+ The first four bytes of the pipe data are expected to contain + the data length of the message. This method first reads those four + bytes and converts them to integer. It then continues to read from the pipe using + the extracted data length. +
+
+ + + Writes a string to a named pipe. + + The pipe handle. + The text to write to the pipe. + This method converts the text into an array of bytes, using the + UTF8 encoding and the uses + AppModule.NamedPipes.WriteBytes + to write to the pipe.

+ When writing to a pipe the method first writes four bytes that define the data length. + It then writes the whole message.
+
+ + + Writes an array of bytes to a named pipe. + + The pipe handle. + The bytes to write. + If we try bytes array we attempt to write is empty then this method write a space character to the pipe. This is necessary because the other end of the pipe uses a blocking Read operation so we must write someting.

+ The bytes length is restricted by the maxBytes parameter, which is done primarily for security reasons.

+ When writing to a pipe the method first writes four bytes that define the data length. + It then writes the whole message.
+
+ + + Tries to connect to a named pipe on the same machine. + + The name of the pipe. + The resulting pipe handle. + Return true if the attempt succeeds. + This method is used mainly when stopping the pipe server. It unblocks the existing pipes, which wait for client connection. + + + + Tries to connect to a named pipe. + + The name of the pipe. + The name of the server. + The resulting pipe handle. + Return true if the attempt succeeds. + This method is used mainly when stopping the pipe server. It unblocks the existing pipes, which wait for client connection. + + + + Connects to a server named pipe on the same machine. + + The pipe name. + The pipe handle, which also contains the pipe state. + This method is used by clients to establish a pipe connection with a server pipe. + + + + Connects to a server named pipe. + + The pipe name. + The server name. + The pipe handle, which also contains the pipe state. + This method is used by clients to establish a pipe connection with a server pipe. + + + + Creates a server named pipe. + + The name of the pipe. + The size of the outbound buffer. + The size of the inbound buffer. + The pipe handle. + + + + Creates a server named pipe. + + The name of the pipe. + The size of the outbound buffer. + The size of the inbound buffer. + Specifies whether to make the pipe secure. + The pipe handle. + You can specify a security descriptor for a named pipe when you call the CreateNamedPipe function. The security descriptor controls access to both client and server ends of the named pipe. If NULL is specified, the named pipe gets a default security descriptor. The ACLs in the default security descriptor for a named pipe grant full control to the LocalSystem account, administrators, and the creator owner. They also grant read access to members of the Everyone group and the anonymous account. +

+ If the secure parameter is false the method creates a security descriptor that grants full access to Everyone. +
+
+ + + Creates a SECURITY_DESCRIPTOR with DACL = null, which allows full access to Everyone. + + The SECURITY_DESCRIPTOR structure. + + + + Starts waiting for client connections. + + + Blocks the current execution until a client pipe attempts to establish a connection. + + The pipe handle. + + + + Returns the number of instances of a named pipe. + + The pipe handle. + The number of instances. + + + + Closes a named pipe and releases the native handle. + + The pipe handle. + + + + Flushes all the data in a named pipe. + + The pipe handle. + + + + Disconnects a server named pipe from the client. + + + Server pipes can be reused by first disconnecting them from the client and then + calling the Connect + method to start listening. This improves the performance as it is not necessary + to create new pipe handles. + + The pipe handle. + + + + Private constructor. + + + + + Used by server applications to communicate with client ones by using named pipes. + + An abstract class, which defines the methods for creating named pipes @@ -120,346 +348,63 @@ Retrieved the operating system native handle for the pipe connection. - + - Used by client applications to communicate with server ones by using named pipes. - - - - - The network name of the server where the server pipe is created. + Disconnects a client named pipe. - If "." is used as a server name then the pipe is connected to the local machine. + When a client named pipe is disconnected, the server one is not closed. + The latter can later be reused by starting to listen again.

+ In a message oriented protocol the server will disconnect the client when the + response is sent and all the data is flushed. The same server named pipe + could then be reused by calling the + Connect method.
- + - Closes a client named pipe connection. + Closes the operating system native handle of the named pipe. + + + + + Starts listening to client pipe connections. - A client pipe connection is closed by closing the underlying pipe handle. + This method will block the program execution until a client pipe attempts + to establish a connection.

+ When a client named pipe is disconnected, the server one is not closed. + The latter can later be reused by starting to listen again.

- + - Connects a client pipe to an existing server one. + Creates a ServerPipeConnection instance and the underlying operating system handle. + The name of the pipe. + The outbound buffer. + The inbound buffer. + The maximum bytes to read from clients. - + - Attempts to establish a connection to the a server named pipe. + Creates a ServerPipeConnection instance and the underlying operating system handle. - - If the attempt is successful the method creates the - PipeHandle object - and assigns it to the Handle - field.

- This method is used when it is not known whether a server pipe already exists. + The name of the pipe. + The outbound buffer. + The inbound buffer. + Specifies whether the pipe is secure. + The maximum bytes to read from clients. + If the secure parameter is true the default security descriptor is used. The ACLs in the default security descriptor for a named pipe grant full control to the LocalSystem account, administrators, and the creator owner. They also grant read access to members of the Everyone group and the anonymous account. +

+ If the secure parameter is false the method creates a security descriptor that grants full access to Everyone.
- True if a connection is established.
- - - Creates an instance of the ClientPipeConnection assuming that the server pipe - is created on the same machine. - - - The maximum bytes to read from the client is set to be Int32.MaxValue. - - The name of the server pipe. - - - - Creates an instance of the ClientPipeConnection specifying the network name - of the server. - - - The maximum bytes to read from the client is set to be Int32.MaxValue. - - The name of the server pipe. - The network name of the machine, where the server pipe is created. - - + Object destructor. - - - This utility class exposes kernel32.dll methods for named pipes communication. - - - Use the following links for complete information about the exposed methods: - - - Named Pipe Functions - - - File Management Functions - - - Handle and Object Functions - - - System Error Codes - - - - - - - - - - - - Creates an instance of a named pipe and returns a handle for - subsequent pipe operations. - - Pointer to the null-terminated string that - uniquely identifies the pipe. - Pipe access mode, the overlapped mode, - the write-through mode, and the security access mode of the pipe handle. - Type, read, and wait modes of the pipe handle. - Maximum number of instances that can be - created for this pipe. - Number of bytes to reserve for the output buffer. - Number of bytes to reserve for the input buffer. - Default time-out value, in milliseconds. - Pointer to a - SecurityAttributes - object that specifies a security descriptor for the new named pipe. - If the function succeeds, the return value is a handle - to the server end of a named pipe instance. - - - - Enables a named pipe server process to wait for a client - process to connect to an instance of a named pipe. - - Handle to the server end of a named pipe instance. - Pointer to an - Overlapped object. - If the function succeeds, the return value is nonzero. - - - - Connects to a message-type pipe (and waits if an instance of the - pipe is not available), writes to and reads from the pipe, and then closes the pipe. - - Pointer to a null-terminated string - specifying the pipe name. - Pointer to the buffer containing the data written - to the pipe. - Size of the write buffer, in bytes. - Pointer to the buffer that receives the data - read from the pipe. - Size of the read buffer, in bytes. - Pointer to a variable that receives the number - of bytes read from the pipe. - Number of milliseconds to wait for the - named pipe to be available. - If the function succeeds, the return value is nonzero. - - - - Creates or opens a file, directory, physical disk, volume, console buffer, - tape drive, communications resource, mailslot, or named pipe. - - Pointer to a null-terminated string that - specifies the name of the object to create or open. - Access to the object (reading, writing, or both). - Sharing mode of the object (reading, writing, both, or neither). - Pointer to a - SecurityAttributes - object that determines whether the returned handle can be inherited - by child processes. - Action to take on files that exist, - and which action to take when files do not exist. - File attributes and flags. - Handle to a template file, with the GENERIC_READ access right. - If the function succeeds, the return value is an open handle to the specified file. - - - - Reads data from a file, starting at the position indicated by the file pointer. - - Handle to the file to be read. - Pointer to the buffer that receives the data read from the file. - Number of bytes to be read from the file. - Pointer to the variable that receives the number of bytes read. - Pointer to an - Overlapped object. - The ReadFile function returns when one of the following - conditions is met: a write operation completes on the write end of - the pipe, the number of bytes requested has been read, or an error occurs. - - - - Writes data to a file at the position specified by the file pointer. - - Handle to the file. - Pointer to the buffer containing the data to be written to the file. - - Pointer to the variable that receives the number of bytes written. - Pointer to an - Overlapped object. - If the function succeeds, the return value is nonzero. - - - - Retrieves information about a specified named pipe. - - Handle to the named pipe for which information is wanted. - Pointer to a variable that indicates the current - state of the handle. - Pointer to a variable that receives the - number of current pipe instances. - Pointer to a variable that receives - the maximum number of bytes to be collected on the client's computer - before transmission to the server. - Pointer to a variable that receives - the maximum time, in milliseconds, that can pass before a remote named - pipe transfers information over the network. - Pointer to a buffer that receives the - null-terminated string containing the user name string associated - with the client application. - Size of the buffer specified by the - lpUserName parameter. - If the function succeeds, the return value is nonzero. - - - - Cancels all pending input and output (I/O) operations that were - issued by the calling thread for the specified file handle. - - Handle to a file. - If the function succeeds, the return value is nonzero. - - - - Waits until either a time-out interval elapses or an instance - of the specified named pipe is available for connection. - - Pointer to a null-terminated string that specifies - the name of the named pipe. - Number of milliseconds that the function will - wait for an instance of the named pipe to be available. - If an instance of the pipe is available before the - time-out interval elapses, the return value is nonzero. - - - - Retrieves the calling thread's last-error code value. - - The return value is the calling thread's last-error code value. - - - - Flushes the buffers of the specified file and causes all buffered data to be written to the file. - - Handle to an open file. - If the function succeeds, the return value is nonzero. - - - - Disconnects the server end of a named pipe instance from a client process. - - Handle to an instance of a named pipe. - If the function succeeds, the return value is nonzero. - - - - Sets the read mode and the blocking mode of the specified named pipe. - - - If the specified handle is to the client end of a named pipe and if - the named pipe server process is on a remote computer, the function - can also be used to control local buffering. - - Handle to the named pipe instance. - Pointer to a variable that supplies the new mode. - Pointer to a variable that specifies the maximum - number of bytes collected on the client computer before - transmission to the server. - Pointer to a variable that specifies the - maximum time, in milliseconds, that can pass before a remote - named pipe transfers information over the network. - If the function succeeds, the return value is nonzero. - - - - Closes an open object handle. - - Handle to an open object. - If the function succeeds, the return value is nonzero. - - - - Closes an open object handle. - - Handle to an open object. - If the function succeeds, the return value is nonzero. - - - - Sets the security descriptor attributes - - Reference to a SECURITY_DESCRIPTOR structure. - - - - - - - - Initializes a SECURITY_DESCRIPTOR structure. - - - - - - - - Private constructor. - - - - - A utility class that exposes named pipes operations. - - - This class uses the exposed exposed kernel32.dll methods by the - NamedPipeNative class - to provided controlled named pipe functionality. - - - - - This exception is thrown by named pipes communication methods. - - - - - Creates a NamedPipeIOException instance. - - The error message text. - - - - Creates a NamedPipeIOException instance. - - The error message text. - The native error code. - - - - Creates a NamedPipeIOException instance. - - The serialization information. - The streaming context. - This utility class exposes kernel32.dll methods for named pipes communication. @@ -873,190 +818,242 @@ This class is used as a dummy parameter only. - + - A utility class that exposes named pipes operations. + This utility class exposes kernel32.dll methods for named pipes communication. - This class uses the exposed exposed kernel32.dll methods by the - NamedPipeNative class - to provided controlled named pipe functionality. + Use the following links for complete information about the exposed methods: + + + Named Pipe Functions + + + File Management Functions + + + Handle and Object Functions + + + System Error Codes + + - + - The number of retries when creating a pipe or connecting to a pipe. + - + - Wait time for the - NamedPipeNative.WaitNamedPipe - operation. + Creates an instance of a named pipe and returns a handle for + subsequent pipe operations. + Pointer to the null-terminated string that + uniquely identifies the pipe. + Pipe access mode, the overlapped mode, + the write-through mode, and the security access mode of the pipe handle. + Type, read, and wait modes of the pipe handle. + Maximum number of instances that can be + created for this pipe. + Number of bytes to reserve for the output buffer. + Number of bytes to reserve for the input buffer. + Default time-out value, in milliseconds. + Pointer to a + SecurityAttributes + object that specifies a security descriptor for the new named pipe. + If the function succeeds, the return value is a handle + to the server end of a named pipe instance. - + - Reads a string from a named pipe using the UTF8 encoding. + Enables a named pipe server process to wait for a client + process to connect to an instance of a named pipe. - The pipe handle. - The maximum bytes to read. - A UTF8 string. - This function uses - AppModule.NamedPipes.ReadBytes - to read the bytes from the pipe and then converts them to string.

- The first four bytes of the pipe data are expected to contain - the data length of the message. This method first reads those four - bytes and converts them to integer. It then continues to read from the pipe using - the extracted data length. -
+ Handle to the server end of a named pipe instance. + Pointer to an + Overlapped object. + If the function succeeds, the return value is nonzero.
- + - Reads the bytes from a named pipe. + Connects to a message-type pipe (and waits if an instance of the + pipe is not available), writes to and reads from the pipe, and then closes the pipe. - The pipe handle. - The maximum bytes to read. - An array of bytes. - This method expects that the first four bytes in the pipe define - the length of the data to read. If the data length is greater than - maxBytes the method returns null.

- The first four bytes of the pipe data are expected to contain - the data length of the message. This method first reads those four - bytes and converts them to integer. It then continues to read from the pipe using - the extracted data length. -
+ Pointer to a null-terminated string + specifying the pipe name. + Pointer to the buffer containing the data written + to the pipe. + Size of the write buffer, in bytes. + Pointer to the buffer that receives the data + read from the pipe. + Size of the read buffer, in bytes. + Pointer to a variable that receives the number + of bytes read from the pipe. + Number of milliseconds to wait for the + named pipe to be available. + If the function succeeds, the return value is nonzero.
- + - Writes a string to a named pipe. + Creates or opens a file, directory, physical disk, volume, console buffer, + tape drive, communications resource, mailslot, or named pipe. - The pipe handle. - The text to write to the pipe. - This method converts the text into an array of bytes, using the - UTF8 encoding and the uses - AppModule.NamedPipes.WriteBytes - to write to the pipe.

- When writing to a pipe the method first writes four bytes that define the data length. - It then writes the whole message.
+ Pointer to a null-terminated string that + specifies the name of the object to create or open. + Access to the object (reading, writing, or both). + Sharing mode of the object (reading, writing, both, or neither). + Pointer to a + SecurityAttributes + object that determines whether the returned handle can be inherited + by child processes. + Action to take on files that exist, + and which action to take when files do not exist. + File attributes and flags. + Handle to a template file, with the GENERIC_READ access right. + If the function succeeds, the return value is an open handle to the specified file.
- + - Writes an array of bytes to a named pipe. + Reads data from a file, starting at the position indicated by the file pointer. - The pipe handle. - The bytes to write. - If we try bytes array we attempt to write is empty then this method write a space character to the pipe. This is necessary because the other end of the pipe uses a blocking Read operation so we must write someting.

- The bytes length is restricted by the maxBytes parameter, which is done primarily for security reasons.

- When writing to a pipe the method first writes four bytes that define the data length. - It then writes the whole message.
+ Handle to the file to be read. + Pointer to the buffer that receives the data read from the file. + Number of bytes to be read from the file. + Pointer to the variable that receives the number of bytes read. + Pointer to an + Overlapped object. + The ReadFile function returns when one of the following + conditions is met: a write operation completes on the write end of + the pipe, the number of bytes requested has been read, or an error occurs.
- + - Tries to connect to a named pipe on the same machine. + Writes data to a file at the position specified by the file pointer. - The name of the pipe. - The resulting pipe handle. - Return true if the attempt succeeds. - This method is used mainly when stopping the pipe server. It unblocks the existing pipes, which wait for client connection. + Handle to the file. + Pointer to the buffer containing the data to be written to the file. + + Pointer to the variable that receives the number of bytes written. + Pointer to an + Overlapped object. + If the function succeeds, the return value is nonzero. - + - Tries to connect to a named pipe. + Retrieves information about a specified named pipe. - The name of the pipe. - The name of the server. - The resulting pipe handle. - Return true if the attempt succeeds. - This method is used mainly when stopping the pipe server. It unblocks the existing pipes, which wait for client connection. + Handle to the named pipe for which information is wanted. + Pointer to a variable that indicates the current + state of the handle. + Pointer to a variable that receives the + number of current pipe instances. + Pointer to a variable that receives + the maximum number of bytes to be collected on the client's computer + before transmission to the server. + Pointer to a variable that receives + the maximum time, in milliseconds, that can pass before a remote named + pipe transfers information over the network. + Pointer to a buffer that receives the + null-terminated string containing the user name string associated + with the client application. + Size of the buffer specified by the + lpUserName parameter. + If the function succeeds, the return value is nonzero. - + - Connects to a server named pipe on the same machine. + Cancels all pending input and output (I/O) operations that were + issued by the calling thread for the specified file handle. - The pipe name. - The pipe handle, which also contains the pipe state. - This method is used by clients to establish a pipe connection with a server pipe. + Handle to a file. + If the function succeeds, the return value is nonzero. - + - Connects to a server named pipe. + Waits until either a time-out interval elapses or an instance + of the specified named pipe is available for connection. - The pipe name. - The server name. - The pipe handle, which also contains the pipe state. - This method is used by clients to establish a pipe connection with a server pipe. + Pointer to a null-terminated string that specifies + the name of the named pipe. + Number of milliseconds that the function will + wait for an instance of the named pipe to be available. + If an instance of the pipe is available before the + time-out interval elapses, the return value is nonzero. - + - Creates a server named pipe. + Retrieves the calling thread's last-error code value. - The name of the pipe. - The size of the outbound buffer. - The size of the inbound buffer. - The pipe handle. + The return value is the calling thread's last-error code value. - + - Creates a server named pipe. + Flushes the buffers of the specified file and causes all buffered data to be written to the file. - The name of the pipe. - The size of the outbound buffer. - The size of the inbound buffer. - Specifies whether to make the pipe secure. - The pipe handle. - You can specify a security descriptor for a named pipe when you call the CreateNamedPipe function. The security descriptor controls access to both client and server ends of the named pipe. If NULL is specified, the named pipe gets a default security descriptor. The ACLs in the default security descriptor for a named pipe grant full control to the LocalSystem account, administrators, and the creator owner. They also grant read access to members of the Everyone group and the anonymous account. -

- If the secure parameter is false the method creates a security descriptor that grants full access to Everyone. -
+ Handle to an open file. + If the function succeeds, the return value is nonzero.
- + - Creates a SECURITY_DESCRIPTOR with DACL = null, which allows full access to Everyone. + Disconnects the server end of a named pipe instance from a client process. - The SECURITY_DESCRIPTOR structure. + Handle to an instance of a named pipe. + If the function succeeds, the return value is nonzero. - + - Starts waiting for client connections. + Sets the read mode and the blocking mode of the specified named pipe. - Blocks the current execution until a client pipe attempts to establish a connection. + If the specified handle is to the client end of a named pipe and if + the named pipe server process is on a remote computer, the function + can also be used to control local buffering. - The pipe handle. + Handle to the named pipe instance. + Pointer to a variable that supplies the new mode. + Pointer to a variable that specifies the maximum + number of bytes collected on the client computer before + transmission to the server. + Pointer to a variable that specifies the + maximum time, in milliseconds, that can pass before a remote + named pipe transfers information over the network. + If the function succeeds, the return value is nonzero. - + - Returns the number of instances of a named pipe. + Closes an open object handle. - The pipe handle. - The number of instances. + Handle to an open object. + If the function succeeds, the return value is nonzero. - + - Closes a named pipe and releases the native handle. + Closes an open object handle. - The pipe handle. + Handle to an open object. + If the function succeeds, the return value is nonzero. - + - Flushes all the data in a named pipe. + Sets the security descriptor attributes - The pipe handle. + Reference to a SECURITY_DESCRIPTOR structure. + + + + - + - Disconnects a server named pipe from the client. + Initializes a SECURITY_DESCRIPTOR structure. - - Server pipes can be reused by first disconnecting them from the client and then - calling the Connect - method to start listening. This improves the performance as it is not necessary - to create new pipe handles. - - The pipe handle. + + + - + Private constructor. @@ -1094,64 +1091,67 @@ Creates a PipeHandle instance with an invalid native handle. - + - Used by server applications to communicate with client ones by using named pipes. + Used by client applications to communicate with server ones by using named pipes. - + - Disconnects a client named pipe. + The network name of the server where the server pipe is created. - When a client named pipe is disconnected, the server one is not closed. - The latter can later be reused by starting to listen again.

- In a message oriented protocol the server will disconnect the client when the - response is sent and all the data is flushed. The same server named pipe - could then be reused by calling the - Connect method. + If "." is used as a server name then the pipe is connected to the local machine.
- + - Closes the operating system native handle of the named pipe. - - - - - Starts listening to client pipe connections. + Closes a client named pipe connection. - This method will block the program execution until a client pipe attempts - to establish a connection.

- When a client named pipe is disconnected, the server one is not closed. - The latter can later be reused by starting to listen again.

+ A client pipe connection is closed by closing the underlying pipe handle.
- + - Creates a ServerPipeConnection instance and the underlying operating system handle. + Connects a client pipe to an existing server one. - The name of the pipe. - The outbound buffer. - The inbound buffer. - The maximum bytes to read from clients. - + - Creates a ServerPipeConnection instance and the underlying operating system handle. + Attempts to establish a connection to the a server named pipe. - The name of the pipe. - The outbound buffer. - The inbound buffer. - Specifies whether the pipe is secure. - The maximum bytes to read from clients. - If the secure parameter is true the default security descriptor is used. The ACLs in the default security descriptor for a named pipe grant full control to the LocalSystem account, administrators, and the creator owner. They also grant read access to members of the Everyone group and the anonymous account. -

- If the secure parameter is false the method creates a security descriptor that grants full access to Everyone. + + If the attempt is successful the method creates the + PipeHandle object + and assigns it to the Handle + field.

+ This method is used when it is not known whether a server pipe already exists.
+ True if a connection is established.
- + + + Creates an instance of the ClientPipeConnection assuming that the server pipe + is created on the same machine. + + + The maximum bytes to read from the client is set to be Int32.MaxValue. + + The name of the server pipe. + + + + Creates an instance of the ClientPipeConnection specifying the network name + of the server. + + + The maximum bytes to read from the client is set to be Int32.MaxValue. + + The name of the server pipe. + The network name of the machine, where the server pipe is created. + + Object destructor. diff --git a/CASA/gui/help/en/AddNewSecrets.htm b/CASA/gui/help/en/AddNewSecrets.htm index 9f886be1..8b9f6dea 100644 --- a/CASA/gui/help/en/AddNewSecrets.htm +++ b/CASA/gui/help/en/AddNewSecrets.htm @@ -5,7 +5,7 @@ +
-
-
CASA - Common Authentication Services Adapter

- -
Legal Notices
-Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved.
-This library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Lesser General Public
-License as published by the Free Software Foundation; version 2.1
-of the License.
-
-This library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-Library Lesser General Public License for more details.
+
+ +
Legal Notices
-You should have received a copy of the GNU Lesser General Public
-License along with this library; if not, Novell, Inc.
-
-To contact Novell about this file by physical or electronic mail,
-you may find current contact information at www.novell.com. -
+

Disclaimer
+Novell, Inc. makes no representations or warranties with respect to the contents or use of +this documentation and specifically disclaims any express or implied warranties of +merchantability or fitness for any particular purpose. Further, Novell, Inc. reserves the +right to revise this publication and to make changes to its content, at any time, without +obligation to notify any person or entity of such revisions or changes.

+ +

Further, Novell, Inc. makes no representations or warranties with respect to any Novell +software, and specifically disclaims any express or implied warranties of merchantability +or fitness for any particular purpose. Further, Novell, Inc. reserves the right to make +changes to any and all parts of Novell software, at any time, without any obligation to +notify any person or entity of such changes.

+ +

Export Notice
+ You may not use, export, or re-export this product in violation of any applicable + laws or regulations including, without limitation, U.S. export regulations + or the laws of the country in which you reside. +

Copyright
+ Copyright © 2005-2007 Novell, Inc. All rights reserved. No part of this publication + may be reproduced, photocopied, stored on a retrieval system, or transmitted + without the express written consent of the publisher.

+ +

Patents
+ Novell, Inc. has intellectual property rights relating to technology embodied + in the product that is described in this document. In particular, and without + limitation, these intellectual property rights may include one or more of + the U.S. patents listed at http://www.novell.com/company/legal/patents/ + and one or more additional patents or pending patent applications in the U.S. + and in other countries.

+ +

Novell Trademarks
+Novell, NetWare, and ZENworks are registered trademarks of Novell, Inc. in the United States and +other countries. +

eDirectory and Red Carpet are trademarks of Novell, Inc.

+ +

Third-Party Trademarks
+All third-party trademarks are the property of their respective owners.

+
\ No newline at end of file