libcli/security: SDDL accepts lowercase "s-" in SIDs
[samba.git] / source3 / lib / substitute.h
blob6596ffdbf0c8ccd9d5ed1d13407cff9db93faf53
1 /*
2 Unix SMB/CIFS implementation.
3 string substitution functions
4 Copyright (C) Andrew Tridgell 1992-2000
5 Copyright (C) Gerald Carter 2006
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef SUBSTITUTE_H
22 #define SUBSTITUTE_H
24 void set_remote_proto(const char *proto);
25 bool set_local_machine_name(const char *local_name, bool perm);
26 const char *get_local_machine_name(void);
27 bool set_remote_machine_name(const char *remote_name, bool perm);
28 const char *get_remote_machine_name(void);
29 void sub_set_socket_ids(const char *peeraddr, const char *peername,
30 const char *sockaddr);
31 void set_current_user_info(const char *smb_name,
32 const char *unix_name,
33 const char *domain);
34 const char *get_current_username(void);
35 const char *get_current_user_info_domain(void);
36 void standard_sub_basic(const char *smb_name,
37 const char *domain_name,
38 char *str,
39 size_t len);
40 char *talloc_sub_basic(TALLOC_CTX *mem_ctx,
41 const char *smb_name,
42 const char *domain_name,
43 const char *str);
44 char *talloc_sub_specified(TALLOC_CTX *mem_ctx,
45 const char *input_string,
46 const char *username,
47 const char *grpname,
48 const char *domain,
49 uid_t uid,
50 gid_t gid);
51 char *talloc_sub_advanced(TALLOC_CTX *ctx,
52 const char *servicename,
53 const char *user,
54 const char *connectpath,
55 gid_t gid,
56 const char *str);
57 char *talloc_sub_full(TALLOC_CTX *ctx,
58 const char *servicename,
59 const char *user,
60 const char *connectpath,
61 gid_t gid,
62 const char *smb_name,
63 const char *domain_name,
64 const char *str);
65 #endif