ReactOS
0.4.16-dev-91-g764881a
rpcdname.c
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2009, Sun Microsystems, Inc.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
* - Redistributions of source code must retain the above copyright notice,
8
* this list of conditions and the following disclaimer.
9
* - Redistributions in binary form must reproduce the above copyright notice,
10
* this list of conditions and the following disclaimer in the documentation
11
* and/or other materials provided with the distribution.
12
* - Neither the name of Sun Microsystems, Inc. nor the names of its
13
* contributors may be used to endorse or promote products derived
14
* from this software without specific prior written permission.
15
*
16
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
20
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26
* POSSIBILITY OF SUCH DAMAGE.
27
*/
28
//#include <sys/cdefs.h>
29
30
/*
31
* rpcdname.c
32
* Gets the default domain name
33
*/
34
35
#include <
wintirpc.h
>
36
#include <stdlib.h>
37
//#include <unistd.h>
38
#include <string.h>
39
40
static
char
*
default_domain
=
NULL
;
41
42
static
char
*
43
get_default_domain
()
44
{
45
#ifndef _WIN32
46
char
temp
[256];
47
#endif
48
49
if
(
default_domain
)
50
return
(
default_domain
);
51
#ifndef _WIN32
// Need a WIN32 version?
52
if
(
getdomainname
(
temp
,
sizeof
(
temp
)) < 0)
53
return
(0);
54
if
((
int
)
strlen
(
temp
) > 0) {
55
default_domain
= (
char
*)
malloc
((
strlen
(
temp
)+(
unsigned
)1));
56
if
(
default_domain
== 0)
57
return
(
NULL
);
58
(
void
)
strcpy
(
default_domain
,
temp
);
59
return
(
default_domain
);
60
}
61
#endif
62
return
(
NULL
);
63
}
64
65
/*
66
* This is a wrapper for the system call getdomainname which returns a
67
* ypclnt.h error code in the failure case. It also checks to see that
68
* the domain name is non-null, knowing that the null string is going to
69
* get rejected elsewhere in the NIS client package.
70
*/
71
int
72
__rpc_get_default_domain
(
domain
)
73
char
**
domain
;
74
{
75
if
((*
domain
=
get_default_domain
()) != 0)
76
return
(0);
77
return
(-1);
78
}
strlen
ACPI_SIZE strlen(const char *String)
Definition:
utclib.c:269
strcpy
char * strcpy(char *DstString, const char *SrcString)
Definition:
utclib.c:388
malloc
#define malloc
Definition:
debug_ros.c:4
NULL
#define NULL
Definition:
types.h:112
void
Definition:
nsiface.idl:2307
getdomainname
static int getdomainname()
Definition:
nfs41_daemon.c:290
__rpc_get_default_domain
int __rpc_get_default_domain(char **domain)
Definition:
rpcdname.c:72
default_domain
static char * default_domain
Definition:
rpcdname.c:40
get_default_domain
static char * get_default_domain()
Definition:
rpcdname.c:43
temp
static calc_node_t temp
Definition:
rpn_ieee.c:38
domain
Definition:
cookie.c:42
wintirpc.h
dll
3rdparty
libtirpc
src
rpcdname.c
Generated on Sun Oct 6 2024 06:02:41 for ReactOS by
1.9.6