


     aio_cancel(rt.os/aiVSRT 5.1.1 (The	Open Grouaio_cancel(rt.os/aio)



     NAME
	  rt.os/aio/aio_cancel - cancel	an Asynchronous	I/O request
	  testset

     DESCRIPTION
	  Tests	the aio_cancel() function for conformance to System
	  Interfaces and Headers, Issue	5 Page:	aio_cancel().

     TESTS
     Compliance
	  1    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	when aiocbp is not NULL	shall
		 cancel	the the	corresponding asynchronous I/O request
		 against fildes.

	  2    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	when aiocbp is NULL shall
		 cancel	all outstanding	cancelable asynchronous	I/O
		 requests against fildes.

	  3    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	shall return AIO_CANCELED if
		 all the requested operation(s)	were canceled.

	  4    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	shall return AIO_ALLDONE if
		 all the requested operation(s)	have already
		 completed.

	  5    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	shall cause normal
		 asynchronous notification to occur for	operations



     Page 1					    (printed 2/21/103)






     aio_cancel(rt.os/aiVSRT 5.1.1 (The	Open Grouaio_cancel(rt.os/aio)



		 that are successfully canceled.

	  6    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 After a call to aio_cancel() the associated error
		 status	for operations that are	successfully canceled
		 shall be set to ECANCELED and return status set to
		 -1.

     Deviance
	  7    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	shall return -1	and set	errno
		 to EBADF if fildes is not a valid file	descriptor.

	  8    If _POSIX_ASYNCHRONOUS_IO is not	defined	and the
	       implementation does not support the aio_cancel()
	       function	as described in	System Interfaces and Headers,
	       Issue 5:
		 A call	to aio_cancel()	shall return -1	and set	errno
		 to ENOSYS.

     Untestable	Aspects
	  1    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 A call	to aio_cancel()	shall return AIO_NOTCANCELED
		 when at least one or the requested operation(s)
		 cannot	be canceled as it is in	progress.
		 Reason	for omission:  There is	no reliable method for
		 ensuring an operation is in progress at the time of a
		 call to aio_cancel().

	  2    If _POSIX_ASYNCHRONOUS_IO is defined or the
	       implementation supports the aio_cancel()	function as
	       described in System Interfaces and Headers, Issue 5,
	       and there are one or more asynchronous I/O operations
	       which the implementation	defines	as cancelable:
		 After a call to aio_cancel() the normal asynchronous
		 completion process shall take place for requests
		 which could not be canceled.
		 Reason	for omission:  There is	no reliable method for
		 ensuring an operation is in progress at the time of a
		 call to aio_cancel().



     Page 2					    (printed 2/21/103)






     aio_cancel(rt.os/aiVSRT 5.1.1 (The	Open Grouaio_cancel(rt.os/aio)



     RELEASE
	  Release VSRT 5.1.1
	  Copyright (c)	1997 X/Open Company Ltd., A member of The Open
	  Group.
	  All rights reserved


















































     Page 3					    (printed 2/21/103)



