bottleneck testcase based on rubbos
[bottlenecks.git] / rubbos / app / httpd-2.0.64 / srclib / apr / user / netware / userinfo.c
1 /* Licensed to the Apache Software Foundation (ASF) under one or more
2  * contributor license agreements.  See the NOTICE file distributed with
3  * this work for additional information regarding copyright ownership.
4  * The ASF licenses this file to You under the Apache License, Version 2.0
5  * (the "License"); you may not use this file except in compliance with
6  * the License.  You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #include "apr_strings.h"
18 #include "apr_portable.h"
19 #include "apr_user.h"
20 #include "apr_private.h"
21 #ifdef HAVE_PWD_H
22 #include <pwd.h>
23 #endif
24 #if APR_HAVE_SYS_TYPES_H
25 #include <sys/types.h>
26 #endif
27 #if APR_HAVE_UNISTD_H
28 #include <unistd.h> /* for _POSIX_THREAD_SAFE_FUNCTIONS */
29 #endif
30
31 #define PWBUF_SIZE 512
32
33 static apr_status_t getpwnam_safe(const char *username,
34                                   struct passwd *pw,
35                                   char pwbuf[PWBUF_SIZE])
36 {
37     return APR_ENOTIMPL;
38 }
39
40 APR_DECLARE(apr_status_t) apr_uid_homepath_get(char **dirname,
41                                                const char *username,
42                                                apr_pool_t *p)
43 {
44     return APR_ENOTIMPL;
45 }
46
47
48
49 APR_DECLARE(apr_status_t) apr_uid_current(apr_uid_t *uid,
50                                           apr_gid_t *gid,
51                                           apr_pool_t *p)
52 {
53     return APR_ENOTIMPL;
54 }
55
56
57
58
59 APR_DECLARE(apr_status_t) apr_uid_get(apr_uid_t *uid, apr_gid_t *gid,
60                                       const char *username, apr_pool_t *p)
61 {
62     return APR_ENOTIMPL;
63 }
64
65 APR_DECLARE(apr_status_t) apr_uid_name_get(char **username, apr_uid_t userid,
66                                            apr_pool_t *p)
67 {
68     return APR_ENOTIMPL;
69 }
70
71 /* deprecated */
72 APR_DECLARE(apr_status_t) apr_get_home_directory(char **dirname,
73                                                  const char *username,
74                                                  apr_pool_t *p)
75 {
76     return apr_uid_homepath_get(dirname, username, p);
77 }
78
79 /* deprecated */
80 APR_DECLARE(apr_status_t) apr_get_userid(apr_uid_t *uid, apr_gid_t *gid,
81                                          const char *username, apr_pool_t *p)
82 {
83     return apr_uid_get(uid, gid, username, p);
84 }
85
86 /* deprecated */
87 APR_DECLARE(apr_status_t) apr_current_userid(apr_uid_t *uid,
88                                              apr_gid_t *gid,
89                                              apr_pool_t *p)
90 {
91     return apr_uid_current(uid, gid, p);
92 }
93
94 /* deprecated */
95 APR_DECLARE(apr_status_t) apr_get_username(char **username, apr_uid_t userid, apr_pool_t *p)
96 {
97     return apr_uid_name_get(username, userid, p);
98 }