1355b4669Sjacobs /*
2355b4669Sjacobs  * CDDL HEADER START
3355b4669Sjacobs  *
4355b4669Sjacobs  * The contents of this file are subject to the terms of the
5355b4669Sjacobs  * Common Development and Distribution License (the "License").
6355b4669Sjacobs  * You may not use this file except in compliance with the License.
7355b4669Sjacobs  *
8355b4669Sjacobs  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9355b4669Sjacobs  * or http://www.opensolaris.org/os/licensing.
10355b4669Sjacobs  * See the License for the specific language governing permissions
11355b4669Sjacobs  * and limitations under the License.
12355b4669Sjacobs  *
13355b4669Sjacobs  * When distributing Covered Code, include this CDDL HEADER in each
14355b4669Sjacobs  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15355b4669Sjacobs  * If applicable, add the following below this CDDL HEADER, with the
16355b4669Sjacobs  * fields enclosed by brackets "[]" replaced with your own identifying
17355b4669Sjacobs  * information: Portions Copyright [yyyy] [name of copyright owner]
18355b4669Sjacobs  *
19355b4669Sjacobs  * CDDL HEADER END
20355b4669Sjacobs  */
21355b4669Sjacobs 
22355b4669Sjacobs /*
23355b4669Sjacobs  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
24355b4669Sjacobs  * Use is subject to license terms.
25355b4669Sjacobs  *
26355b4669Sjacobs  */
27355b4669Sjacobs 
28355b4669Sjacobs /* $Id: common.c 151 2006-04-25 16:55:34Z njacobs $ */
29355b4669Sjacobs 
30355b4669Sjacobs /*
31355b4669Sjacobs  * Shared "unsupported" function implementations that can be overridden
32355b4669Sjacobs  * by libpapi and the various print service modules (psms).
33355b4669Sjacobs  */
34355b4669Sjacobs 
35355b4669Sjacobs #include <stdlib.h>
36355b4669Sjacobs #include <papi.h>
37355b4669Sjacobs 
38355b4669Sjacobs static papi_status_t
_unsupported()39355b4669Sjacobs _unsupported()
40355b4669Sjacobs {
41355b4669Sjacobs 	return (PAPI_OPERATION_NOT_SUPPORTED);
42355b4669Sjacobs }
43355b4669Sjacobs 
44355b4669Sjacobs static void *
_unsupported_null_return()45355b4669Sjacobs _unsupported_null_return()
46355b4669Sjacobs {
47355b4669Sjacobs 	return (NULL);
48355b4669Sjacobs }
49355b4669Sjacobs 
50355b4669Sjacobs static void
_unsupported_no_return()51355b4669Sjacobs _unsupported_no_return()
52355b4669Sjacobs {
53355b4669Sjacobs }
54355b4669Sjacobs 
55355b4669Sjacobs /*
56355b4669Sjacobs  * Service interfaces
57355b4669Sjacobs  */
58355b4669Sjacobs #pragma weak papiServiceCreate = _unsupported
59355b4669Sjacobs #pragma weak papiServiceDestroy = _unsupported_no_return
60355b4669Sjacobs #pragma weak papiServiceSetPeer = _unsupported
61355b4669Sjacobs #pragma weak papiServiceSetUserName = _unsupported
62355b4669Sjacobs #pragma weak papiServiceSetPassword = _unsupported
63355b4669Sjacobs #pragma weak papiServiceSetEncryption = _unsupported
64355b4669Sjacobs #pragma weak papiServiceSetAuthCB = _unsupported
65355b4669Sjacobs #pragma weak papiServiceSetAppData = _unsupported
66355b4669Sjacobs 
67355b4669Sjacobs #pragma weak papiServiceGetServiceName = _unsupported_null_return
68355b4669Sjacobs #pragma weak papiServiceGetUserName = _unsupported_null_return
69355b4669Sjacobs #pragma weak papiServiceGetPassword = _unsupported_null_return
70355b4669Sjacobs #pragma weak papiServiceGetAppData = _unsupported_null_return
71355b4669Sjacobs 
72355b4669Sjacobs papi_encryption_t
papiServiceGetEncryption(papi_service_t handle)73355b4669Sjacobs papiServiceGetEncryption(papi_service_t handle)
74355b4669Sjacobs {
75355b4669Sjacobs 	return (PAPI_ENCRYPT_NEVER);
76355b4669Sjacobs }
77355b4669Sjacobs 
78355b4669Sjacobs #pragma weak papiServiceGetAttributeList = _unsupported_null_return
79355b4669Sjacobs #pragma weak papiServiceGetStatusMessage = _unsupported_null_return
80355b4669Sjacobs 
81355b4669Sjacobs /*
82355b4669Sjacobs  * Printer operations
83355b4669Sjacobs  */
84355b4669Sjacobs #pragma weak papiPrintersList = _unsupported
85355b4669Sjacobs #pragma weak papiPrinterQuery = _unsupported
86355b4669Sjacobs #pragma weak papiPrinterEnable = _unsupported
87355b4669Sjacobs #pragma weak papiPrinterDisable = _unsupported
88355b4669Sjacobs #pragma weak papiPrinterPause = _unsupported
89355b4669Sjacobs #pragma weak papiPrinterResume = _unsupported
90355b4669Sjacobs #pragma weak papiPrinterAdd = _unsupported
91355b4669Sjacobs #pragma weak papiPrinterModify = _unsupported
92355b4669Sjacobs #pragma weak papiPrinterRemove = _unsupported
93355b4669Sjacobs #pragma weak papiPrinterPurgeJobs = _unsupported
94355b4669Sjacobs #pragma weak papiPrinterListJobs = _unsupported
95355b4669Sjacobs #pragma weak papiPrinterGetAttributeList = _unsupported_null_return
96355b4669Sjacobs #pragma weak papiPrinterFree = _unsupported_no_return
97355b4669Sjacobs #pragma weak papiPrinterListFree = _unsupported_no_return
98355b4669Sjacobs 
99355b4669Sjacobs /*
100355b4669Sjacobs  * Job interfaces
101355b4669Sjacobs  */
102355b4669Sjacobs #pragma weak papiJobHold = _unsupported
103355b4669Sjacobs #pragma weak papiJobRelease = _unsupported
104355b4669Sjacobs #pragma weak papiJobRestart = _unsupported
105355b4669Sjacobs #pragma weak papiJobPromote = _unsupported
106355b4669Sjacobs #pragma weak papiJobModify = _unsupported
107355b4669Sjacobs #pragma weak papiJobSubmit = _unsupported
108355b4669Sjacobs #pragma weak papiJobSubmitByReference = _unsupported
109355b4669Sjacobs #pragma weak papiJobValidate = _unsupported
110355b4669Sjacobs #pragma weak papiJobStreamOpen = _unsupported
111355b4669Sjacobs #pragma weak papiJobStreamWrite = _unsupported
112355b4669Sjacobs #pragma weak papiJobStreamClose = _unsupported
113355b4669Sjacobs #pragma weak papiJobQuery = _unsupported
114355b4669Sjacobs #pragma weak papiJobMove = _unsupported
115355b4669Sjacobs #pragma weak papiJobCancel = _unsupported
116355b4669Sjacobs #pragma weak papiJobGetAttributeList = _unsupported_null_return
117355b4669Sjacobs #pragma weak papiJobGetPrinterName = _unsupported_null_return
118355b4669Sjacobs #pragma weak papiJobCreate = _unsupported
119355b4669Sjacobs #pragma weak papiJobStreamAdd = _unsupported
120355b4669Sjacobs #pragma weak papiJobCommit = _unsupported
121355b4669Sjacobs 
122355b4669Sjacobs int
papiJobGetId(papi_job_t job)123355b4669Sjacobs papiJobGetId(papi_job_t job)
124355b4669Sjacobs {
125355b4669Sjacobs 	return (-1);
126355b4669Sjacobs }
127355b4669Sjacobs 
128355b4669Sjacobs #pragma weak papiJobGetJobTicket = _unsupported_null_return
129355b4669Sjacobs #pragma weak papiJobFree = _unsupported_no_return
130355b4669Sjacobs #pragma weak papiJobListFree = _unsupported_no_return
131*0a44ef6dSjacobs 
132*0a44ef6dSjacobs /* private functions */
133*0a44ef6dSjacobs #pragma weak getprinterbyname = _unsupported_null_return
134