mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
Fix various spelling errors
Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Michael Adam <obnox@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Fri Nov 6 13:43:45 CET 2015 on sn-devel-104
This commit is contained in:
parent
f3033a1943
commit
c315fce17e
@ -1014,7 +1014,7 @@ static void ctdb_client_reply_control(struct ctdb_context *ctdb,
|
|||||||
c->errorlen);
|
c->errorlen);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* state->outdata now uses resources from c so we dont want c
|
/* state->outdata now uses resources from c so we don't want c
|
||||||
to just dissappear from under us while state is still alive
|
to just dissappear from under us while state is still alive
|
||||||
*/
|
*/
|
||||||
talloc_steal(state, c);
|
talloc_steal(state, c);
|
||||||
|
@ -64,9 +64,9 @@ static int tree_destructor(trbt_tree_t *tree)
|
|||||||
|
|
||||||
/* traverse the tree and remove the node destructor and steal
|
/* traverse the tree and remove the node destructor and steal
|
||||||
the node to the temporary context.
|
the node to the temporary context.
|
||||||
we dont want to use the existing destructor for the node
|
we don't want to use the existing destructor for the node
|
||||||
since that will remove the nodes one by one from the tree.
|
since that will remove the nodes one by one from the tree.
|
||||||
since the entire tree will be completely destroyed we dont care
|
since the entire tree will be completely destroyed we don't care
|
||||||
if it is inconsistent or unbalanced while freeing the
|
if it is inconsistent or unbalanced while freeing the
|
||||||
individual nodes
|
individual nodes
|
||||||
*/
|
*/
|
||||||
@ -504,7 +504,7 @@ delete_node(trbt_node_t *node, bool from_destructor)
|
|||||||
Once the delete of the node is finished, we remove this dummy
|
Once the delete of the node is finished, we remove this dummy
|
||||||
node, which is simple to do since it is guaranteed that it will
|
node, which is simple to do since it is guaranteed that it will
|
||||||
still not have any children after the delete operation.
|
still not have any children after the delete operation.
|
||||||
This is because we dont represent the leaf-nodes as actual nodes
|
This is because we don't represent the leaf-nodes as actual nodes
|
||||||
in this implementation.
|
in this implementation.
|
||||||
*/
|
*/
|
||||||
if (!child) {
|
if (!child) {
|
||||||
|
@ -212,7 +212,7 @@ int ctdb_sys_close_capture_socket(void *private_data)
|
|||||||
*/
|
*/
|
||||||
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
||||||
{
|
{
|
||||||
/* FIXME AIX: We dont do gratuitous arp yet */
|
/* FIXME AIX: We don't do gratuitous arp yet */
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -81,7 +81,7 @@ static uint16_t tcp_checksum6(uint16_t *data, size_t n, struct ip6_hdr *ip6)
|
|||||||
*/
|
*/
|
||||||
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
||||||
{
|
{
|
||||||
/* FIXME FreeBSD: We dont do gratuitous arp yet */
|
/* FIXME FreeBSD: We don't do gratuitous arp yet */
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -220,7 +220,7 @@ int ctdb_sys_send_tcp(const ctdb_sock_addr *dest,
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
}
|
}
|
||||||
/* sendto() dont like if the port is set and the socket is
|
/* sendto() don't like if the port is set and the socket is
|
||||||
in raw mode.
|
in raw mode.
|
||||||
*/
|
*/
|
||||||
tmpdest = discard_const(dest);
|
tmpdest = discard_const(dest);
|
||||||
|
@ -80,7 +80,7 @@ static uint16_t tcp_checksum6(uint16_t *data, size_t n, struct ip6_hdr *ip6)
|
|||||||
*/
|
*/
|
||||||
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
||||||
{
|
{
|
||||||
/* FIXME GNU/Hurd: We dont do gratuitous arp yet */
|
/* FIXME GNU/Hurd: We don't do gratuitous arp yet */
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -215,7 +215,7 @@ int ctdb_sys_send_tcp(const ctdb_sock_addr *dest,
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
}
|
}
|
||||||
/* sendto() dont like if the port is set and the socket is
|
/* sendto() don't like if the port is set and the socket is
|
||||||
in raw mode.
|
in raw mode.
|
||||||
*/
|
*/
|
||||||
tmpdest = discard_const(dest);
|
tmpdest = discard_const(dest);
|
||||||
|
@ -80,7 +80,7 @@ static uint16_t tcp_checksum6(uint16_t *data, size_t n, struct ip6_hdr *ip6)
|
|||||||
*/
|
*/
|
||||||
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
|
||||||
{
|
{
|
||||||
/* FIXME kFreeBSD: We dont do gratuitous arp yet */
|
/* FIXME kFreeBSD: We don't do gratuitous arp yet */
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -215,7 +215,7 @@ int ctdb_sys_send_tcp(const ctdb_sock_addr *dest,
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
}
|
}
|
||||||
/* sendto() dont like if the port is set and the socket is
|
/* sendto() don't like if the port is set and the socket is
|
||||||
in raw mode.
|
in raw mode.
|
||||||
*/
|
*/
|
||||||
tmpdest = discard_const(dest);
|
tmpdest = discard_const(dest);
|
||||||
|
@ -419,7 +419,7 @@ int ctdb_sys_send_tcp(const ctdb_sock_addr *dest,
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
}
|
}
|
||||||
/* sendto() dont like if the port is set and the socket is
|
/* sendto() don't like if the port is set and the socket is
|
||||||
in raw mode.
|
in raw mode.
|
||||||
*/
|
*/
|
||||||
tmpdest = discard_const(dest);
|
tmpdest = discard_const(dest);
|
||||||
@ -577,7 +577,7 @@ bool ctdb_sys_check_iface_exists(const char *iface)
|
|||||||
|
|
||||||
s = socket(PF_PACKET, SOCK_RAW, 0);
|
s = socket(PF_PACKET, SOCK_RAW, 0);
|
||||||
if (s == -1){
|
if (s == -1){
|
||||||
/* We dont know if the interface exists, so assume yes */
|
/* We don't know if the interface exists, so assume yes */
|
||||||
DEBUG(DEBUG_CRIT,(__location__ " failed to open raw socket\n"));
|
DEBUG(DEBUG_CRIT,(__location__ " failed to open raw socket\n"));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -130,7 +130,7 @@ monitor_interfaces()
|
|||||||
mark_up $iface
|
mark_up $iface
|
||||||
;;
|
;;
|
||||||
ib*)
|
ib*)
|
||||||
# we dont know how to test ib links
|
# we don't know how to test ib links
|
||||||
mark_up $iface
|
mark_up $iface
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
@ -93,7 +93,7 @@ case "$1" in
|
|||||||
|
|
||||||
notify)
|
notify)
|
||||||
# we must restart the lockmanager (on all nodes) so that we get
|
# we must restart the lockmanager (on all nodes) so that we get
|
||||||
# a clusterwide grace period (so other clients dont take out
|
# a clusterwide grace period (so other clients don't take out
|
||||||
# conflicting locks through other nodes before all locks have been
|
# conflicting locks through other nodes before all locks have been
|
||||||
# reclaimed)
|
# reclaimed)
|
||||||
|
|
||||||
@ -103,7 +103,7 @@ case "$1" in
|
|||||||
#echo 0 > /proc/sys/net/ipv4/tcp_max_tw_buckets
|
#echo 0 > /proc/sys/net/ipv4/tcp_max_tw_buckets
|
||||||
#echo 0 > /proc/sys/net/ipv4/tcp_max_orphans
|
#echo 0 > /proc/sys/net/ipv4/tcp_max_orphans
|
||||||
|
|
||||||
# Delete the notification list for statd, we dont want it to
|
# Delete the notification list for statd, we don't want it to
|
||||||
# ping any clients
|
# ping any clients
|
||||||
rm -f /var/lib/nfs/statd/sm/*
|
rm -f /var/lib/nfs/statd/sm/*
|
||||||
rm -f /var/lib/nfs/statd/sm.bak/*
|
rm -f /var/lib/nfs/statd/sm.bak/*
|
||||||
|
@ -400,7 +400,7 @@
|
|||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
IPADDR specifies the single IP that CTDB will use in
|
IPADDR specifies the single IP that CTDB will use in
|
||||||
conjuction with LVS.
|
conjunction with LVS.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
Please see the <citetitle>LVS</citetitle> section in
|
Please see the <citetitle>LVS</citetitle> section in
|
||||||
|
@ -414,7 +414,7 @@
|
|||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
If you change this then you probably want to set this in
|
If you change this then you probably want to set this in
|
||||||
root's enviroment (perhaps in a file in
|
root's environment (perhaps in a file in
|
||||||
<filename>/etc/profile.d</filename>) so that you can use
|
<filename>/etc/profile.d</filename>) so that you can use
|
||||||
the <citerefentry><refentrytitle>ctdb</refentrytitle>
|
the <citerefentry><refentrytitle>ctdb</refentrytitle>
|
||||||
<manvolnum>1</manvolnum></citerefentry> command in a
|
<manvolnum>1</manvolnum></citerefentry> command in a
|
||||||
|
@ -277,7 +277,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
* Tue Nov 8 2011 : Version 1.12
|
* Tue Nov 8 2011 : Version 1.12
|
||||||
- Add new tunable : AllowClientDBAttach that can be used to stop
|
- Add new tunable : AllowClientDBAttach that can be used to stop
|
||||||
client db access during maintenance operations
|
client db access during maintenance operations
|
||||||
- Updated logging for interfaces that are missing or dont exist but are
|
- Updated logging for interfaces that are missing or don't exist but are
|
||||||
configured to be used.
|
configured to be used.
|
||||||
- Add timeout argument to ctdb_cmdline_client
|
- Add timeout argument to ctdb_cmdline_client
|
||||||
- PDMA support
|
- PDMA support
|
||||||
@ -343,7 +343,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
just do a less disruptive ip-reallocation
|
just do a less disruptive ip-reallocation
|
||||||
- When starting ctdbd, wait until all initial recoveries have finished
|
- When starting ctdbd, wait until all initial recoveries have finished
|
||||||
before we issue the "startup" event.
|
before we issue the "startup" event.
|
||||||
So dont start services or monitoring until the cluster has
|
So don't start services or monitoring until the cluster has
|
||||||
stabilized.
|
stabilized.
|
||||||
- Major eventscript overhaul by Ronnie, Rusty and Martins and fixes of a few
|
- Major eventscript overhaul by Ronnie, Rusty and Martins and fixes of a few
|
||||||
bugs found.
|
bugs found.
|
||||||
@ -392,14 +392,14 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
"time since last ..." if from either the last recovery OR the last failover
|
"time since last ..." if from either the last recovery OR the last failover
|
||||||
- Michael A: transaction updates
|
- Michael A: transaction updates
|
||||||
* Wed Oct 28 2009 : Version 1.0.101
|
* Wed Oct 28 2009 : Version 1.0.101
|
||||||
- create a separate context for non-monitoring events so they dont interfere with the monitor event
|
- create a separate context for non-monitoring events so they don't interfere with the monitor event
|
||||||
- make sure to return status 0 in teh callback when we abort an event
|
- make sure to return status 0 in teh callback when we abort an event
|
||||||
* Wed Oct 28 2009 : Version 1.0.100
|
* Wed Oct 28 2009 : Version 1.0.100
|
||||||
- Change eventscript handling to allow EventScriptTimeout for each individual script instead of for all scripts as a whole.
|
- Change eventscript handling to allow EventScriptTimeout for each individual script instead of for all scripts as a whole.
|
||||||
- Enhanced logging from the eventscripts, log the name and the duration for each script as it finishes.
|
- Enhanced logging from the eventscripts, log the name and the duration for each script as it finishes.
|
||||||
- Add a check to use wbinfo -t for the startup event of samba
|
- Add a check to use wbinfo -t for the startup event of samba
|
||||||
- TEMP: allow clients to attach to databases even when teh node is in recovery mode
|
- TEMP: allow clients to attach to databases even when teh node is in recovery mode
|
||||||
- dont run the monitor event as frequently after an event has failed
|
- don't run the monitor event as frequently after an event has failed
|
||||||
- DEBUG: in the eventloops, check the local time and warn if the time changes backward or rapidly forward
|
- DEBUG: in the eventloops, check the local time and warn if the time changes backward or rapidly forward
|
||||||
- From Metze, fix a bug where recovery master becoming unhealthy did not trigger an ip failover.
|
- From Metze, fix a bug where recovery master becoming unhealthy did not trigger an ip failover.
|
||||||
- Disable the multipath script by default
|
- Disable the multipath script by default
|
||||||
@ -411,7 +411,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- Fix a SEGV in the new db priority code.
|
- Fix a SEGV in the new db priority code.
|
||||||
- From Wolfgang : eliminate a ctdb_fatal() if there is a dmaster violation detected.
|
- From Wolfgang : eliminate a ctdb_fatal() if there is a dmaster violation detected.
|
||||||
- During testing we often add/delete eventscripts at runtime. This could cause an eventscript to fail and mark the node unhealthy if an eventscript was deleted while we were listing the names. Handle the errorcode and make sure the node does not becomne unhealthy in this case.
|
- During testing we often add/delete eventscripts at runtime. This could cause an eventscript to fail and mark the node unhealthy if an eventscript was deleted while we were listing the names. Handle the errorcode and make sure the node does not becomne unhealthy in this case.
|
||||||
- Lower the debuglevel for the messages when ctdb creates a filedescruiptor so we dont spam the logs with these messages.
|
- Lower the debuglevel for the messages when ctdb creates a filedescruiptor so we don't spam the logs with these messages.
|
||||||
- Dont have the RPM automatically restart ctdb
|
- Dont have the RPM automatically restart ctdb
|
||||||
- Volker : add a missing transaction_cancel() in the handling of persistent databases
|
- Volker : add a missing transaction_cancel() in the handling of persistent databases
|
||||||
- Treat interfaces with the anme ethX* as bond devices in 10.interfaces so we do the correct test for if they are up or not.
|
- Treat interfaces with the anme ethX* as bond devices in 10.interfaces so we do the correct test for if they are up or not.
|
||||||
@ -434,7 +434,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- Add more debugging output when eventscripts have trouble. Print a
|
- Add more debugging output when eventscripts have trouble. Print a
|
||||||
"pstree -p" to the log when scripts have hung.
|
"pstree -p" to the log when scripts have hung.
|
||||||
- Update the initscript, only print the "No reclock file used" warning
|
- Update the initscript, only print the "No reclock file used" warning
|
||||||
when we do "service ctdb start", dont also print them for all other
|
when we do "service ctdb start", don't also print them for all other
|
||||||
actions.
|
actions.
|
||||||
- When changing between unhealthy/healthy state, push a request to the
|
- When changing between unhealthy/healthy state, push a request to the
|
||||||
recovery master to perform an ip reallocation instead of waiting for the
|
recovery master to perform an ip reallocation instead of waiting for the
|
||||||
@ -477,7 +477,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- Add machinereadable output to the ctdb getreclock command
|
- Add machinereadable output to the ctdb getreclock command
|
||||||
- merge transaction updates from Michael Adam
|
- merge transaction updates from Michael Adam
|
||||||
- In the new banning code, reset the culprit count to 0 for all nodes that could successfully compelte a full recovery.
|
- In the new banning code, reset the culprit count to 0 for all nodes that could successfully compelte a full recovery.
|
||||||
- dont mark the recovery master as a ban culprit because a node in the cluster needs a recovery. this happens naturally when using ctdb recover command so dont make this cause a node to be banned.
|
- don't mark the recovery master as a ban culprit because a node in the cluster needs a recovery. this happens naturally when using ctdb recover command so dont make this cause a node to be banned.
|
||||||
* Sat Sep 12 2009 : Version 1.0.90
|
* Sat Sep 12 2009 : Version 1.0.90
|
||||||
- Be more forgiving for eventscripts that hang during startup
|
- Be more forgiving for eventscripts that hang during startup
|
||||||
- Fix for a banning bug in the new banning logic
|
- Fix for a banning bug in the new banning logic
|
||||||
@ -565,7 +565,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- When building initial vnnmap, ignode any nonexisting nodes
|
- When building initial vnnmap, ignode any nonexisting nodes
|
||||||
- Add a new nodestate : DELETED that is used when deleting a node from an
|
- Add a new nodestate : DELETED that is used when deleting a node from an
|
||||||
existing cluster.
|
existing cluster.
|
||||||
- dont remove the ctdb socket when shutting down. This prevents a race in the
|
- don't remove the ctdb socket when shutting down. This prevents a race in the
|
||||||
initscripts when restarting ctdb quickly after stopping it.
|
initscripts when restarting ctdb quickly after stopping it.
|
||||||
- TDB nesting reworked.
|
- TDB nesting reworked.
|
||||||
- Remove obsolete ipmux
|
- Remove obsolete ipmux
|
||||||
@ -612,7 +612,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- if we can not pull a database from a remote node during recovery, mark that node as a culprit so it becomes banned
|
- if we can not pull a database from a remote node during recovery, mark that node as a culprit so it becomes banned
|
||||||
- increase the loglevel when we volunteer to drop all ip addresses after beeing in recovery mode for too long. Make this timeout tuneable with "RecoveryDropAllIPs" and have it default to 60 seconds
|
- increase the loglevel when we volunteer to drop all ip addresses after beeing in recovery mode for too long. Make this timeout tuneable with "RecoveryDropAllIPs" and have it default to 60 seconds
|
||||||
- Add a new flag TDB_NO_NESTING to the tdb layer to prevent nested transactions which ctdb does not use and does not expect. Have ctdb set this flag to prevent nested transactions from occuring.
|
- Add a new flag TDB_NO_NESTING to the tdb layer to prevent nested transactions which ctdb does not use and does not expect. Have ctdb set this flag to prevent nested transactions from occuring.
|
||||||
- dont unconditionally kill off ctdb and restrat it on "service ctdb start". Fail "service ctdb start" with an error if ctdb is already running.
|
- don't unconditionally kill off ctdb and restrat it on "service ctdb start". Fail "service ctdb start" with an error if ctdb is already running.
|
||||||
- Add a new tunable "VerifyRecoveryLock" that can be set to 0 to prevent the main ctdb daemon to verify that the recovery master has locked the reclock file correctly before allowing it to set the recovery mode to active.
|
- Add a new tunable "VerifyRecoveryLock" that can be set to 0 to prevent the main ctdb daemon to verify that the recovery master has locked the reclock file correctly before allowing it to set the recovery mode to active.
|
||||||
- fix a cosmetic bug with ctdb statistics where certain counters could become negative.
|
- fix a cosmetic bug with ctdb statistics where certain counters could become negative.
|
||||||
* Wed Apr 8 2009 : Version 1.0.79
|
* Wed Apr 8 2009 : Version 1.0.79
|
||||||
@ -621,7 +621,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- add a funciton remove_ip to safely remove an ip from an interface, taking care to workaround an issue with linux alias interfaces.
|
- add a funciton remove_ip to safely remove an ip from an interface, taking care to workaround an issue with linux alias interfaces.
|
||||||
- Update the natgw eventscript to use the safe remove_ip() function
|
- Update the natgw eventscript to use the safe remove_ip() function
|
||||||
- fix a bug in the eventscript child process that would cause the socket to be removed.
|
- fix a bug in the eventscript child process that would cause the socket to be removed.
|
||||||
- dont verify nodemap on banned nodes during cluster monitoring
|
- don't verify nodemap on banned nodes during cluster monitoring
|
||||||
- Update the dodgy SeqnumInterval to have ms resolution
|
- Update the dodgy SeqnumInterval to have ms resolution
|
||||||
* Tue Mar 31 2009 : Version 1.0.78
|
* Tue Mar 31 2009 : Version 1.0.78
|
||||||
- Add a notify mechanism so we can send snmptraps/email to external management systems when the node becomes unhealthy
|
- Add a notify mechanism so we can send snmptraps/email to external management systems when the node becomes unhealthy
|
||||||
@ -799,7 +799,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
* Fri Jul 18 2008 : Version 1.0.50
|
* Fri Jul 18 2008 : Version 1.0.50
|
||||||
- Dont assume that just because we can establish a TCP connection
|
- Dont assume that just because we can establish a TCP connection
|
||||||
that we are actually talking to a functioning ctdb daemon.
|
that we are actually talking to a functioning ctdb daemon.
|
||||||
So dont mark the node as CONNECTED just because the tcp handshake
|
So don't mark the node as CONNECTED just because the tcp handshake
|
||||||
was successful.
|
was successful.
|
||||||
- Dont try to set the recmaster to ourself during elections for those
|
- Dont try to set the recmaster to ourself during elections for those
|
||||||
cases we know this will fail. To remove some annoying benign but scary
|
cases we know this will fail. To remove some annoying benign but scary
|
||||||
@ -867,7 +867,7 @@ Performance Co-Pilot (PCP) support for CTDB
|
|||||||
- zero out ctdb->freeze_handle when we free/destroy a freeze-child.
|
- zero out ctdb->freeze_handle when we free/destroy a freeze-child.
|
||||||
This prevent a heap corruption/ctdb crash bug that could trigger
|
This prevent a heap corruption/ctdb crash bug that could trigger
|
||||||
if the freeze child times out.
|
if the freeze child times out.
|
||||||
- we dont need to explicitely thaw the databases from the recovery daemon
|
- we don't need to explicitely thaw the databases from the recovery daemon
|
||||||
since this is done implicitely when we restore the recovery mode back to normal.
|
since this is done implicitely when we restore the recovery mode back to normal.
|
||||||
- track when we start and stop a recovery. Add the 'time it took to complete the
|
- track when we start and stop a recovery. Add the 'time it took to complete the
|
||||||
recovery' to the 'ctdb uptime' output.
|
recovery' to the 'ctdb uptime' output.
|
||||||
|
@ -964,7 +964,7 @@ void ctdb_request_call(struct ctdb_context *ctdb, struct ctdb_req_header *hdr)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Dont do READONLY if we dont have a tracking database */
|
/* Dont do READONLY if we don't have a tracking database */
|
||||||
if ((c->flags & CTDB_WANT_READONLY) && !ctdb_db->readonly) {
|
if ((c->flags & CTDB_WANT_READONLY) && !ctdb_db->readonly) {
|
||||||
c->flags &= ~CTDB_WANT_READONLY;
|
c->flags &= ~CTDB_WANT_READONLY;
|
||||||
}
|
}
|
||||||
|
@ -676,7 +676,7 @@ static void daemon_request_call_from_client(struct ctdb_client *client,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Dont do READONLY if we dont have a tracking database */
|
/* Dont do READONLY if we don't have a tracking database */
|
||||||
if ((c->flags & CTDB_WANT_READONLY) && !ctdb_db->readonly) {
|
if ((c->flags & CTDB_WANT_READONLY) && !ctdb_db->readonly) {
|
||||||
c->flags &= ~CTDB_WANT_READONLY;
|
c->flags &= ~CTDB_WANT_READONLY;
|
||||||
}
|
}
|
||||||
|
@ -1108,7 +1108,7 @@ int32_t ctdb_control_db_attach(struct ctdb_context *ctdb, TDB_DATA indata,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* dont allow any local clients to attach while we are in recovery mode
|
/* don't allow any local clients to attach while we are in recovery mode
|
||||||
* except for the recovery daemon.
|
* except for the recovery daemon.
|
||||||
* allow all attach from the network since these are always from remote
|
* allow all attach from the network since these are always from remote
|
||||||
* recovery daemons.
|
* recovery daemons.
|
||||||
|
@ -486,7 +486,7 @@ int32_t ctdb_control_modflags(struct ctdb_context *ctdb, TDB_DATA indata)
|
|||||||
node->flags = c->new_flags & ~NODE_FLAGS_DISCONNECTED;
|
node->flags = c->new_flags & ~NODE_FLAGS_DISCONNECTED;
|
||||||
node->flags |= (c->old_flags & NODE_FLAGS_DISCONNECTED);
|
node->flags |= (c->old_flags & NODE_FLAGS_DISCONNECTED);
|
||||||
|
|
||||||
/* we dont let other nodes modify our STOPPED status */
|
/* we don't let other nodes modify our STOPPED status */
|
||||||
if (c->pnn == ctdb->pnn) {
|
if (c->pnn == ctdb->pnn) {
|
||||||
node->flags &= ~NODE_FLAGS_STOPPED;
|
node->flags &= ~NODE_FLAGS_STOPPED;
|
||||||
if (old_flags & NODE_FLAGS_STOPPED) {
|
if (old_flags & NODE_FLAGS_STOPPED) {
|
||||||
@ -494,7 +494,7 @@ int32_t ctdb_control_modflags(struct ctdb_context *ctdb, TDB_DATA indata)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* we dont let other nodes modify our BANNED status */
|
/* we don't let other nodes modify our BANNED status */
|
||||||
if (c->pnn == ctdb->pnn) {
|
if (c->pnn == ctdb->pnn) {
|
||||||
node->flags &= ~NODE_FLAGS_BANNED;
|
node->flags &= ~NODE_FLAGS_BANNED;
|
||||||
if (old_flags & NODE_FLAGS_BANNED) {
|
if (old_flags & NODE_FLAGS_BANNED) {
|
||||||
|
@ -605,11 +605,11 @@ static int create_missing_remote_databases(struct ctdb_context *ctdb, struct ctd
|
|||||||
|
|
||||||
/* verify that all other nodes have all our databases */
|
/* verify that all other nodes have all our databases */
|
||||||
for (j=0; j<nodemap->num; j++) {
|
for (j=0; j<nodemap->num; j++) {
|
||||||
/* we dont need to ourself ourselves */
|
/* we don't need to ourself ourselves */
|
||||||
if (nodemap->nodes[j].pnn == pnn) {
|
if (nodemap->nodes[j].pnn == pnn) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
/* dont check nodes that are unavailable */
|
/* don't check nodes that are unavailable */
|
||||||
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -669,11 +669,11 @@ static int create_missing_local_databases(struct ctdb_context *ctdb, struct ctdb
|
|||||||
|
|
||||||
/* verify that we have all database any other node has */
|
/* verify that we have all database any other node has */
|
||||||
for (j=0; j<nodemap->num; j++) {
|
for (j=0; j<nodemap->num; j++) {
|
||||||
/* we dont need to ourself ourselves */
|
/* we don't need to ourself ourselves */
|
||||||
if (nodemap->nodes[j].pnn == pnn) {
|
if (nodemap->nodes[j].pnn == pnn) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
/* dont check nodes that are unavailable */
|
/* don't check nodes that are unavailable */
|
||||||
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -947,7 +947,7 @@ static int pull_remote_database(struct ctdb_context *ctdb,
|
|||||||
(this merges based on rsn)
|
(this merges based on rsn)
|
||||||
*/
|
*/
|
||||||
for (j=0; j<nodemap->num; j++) {
|
for (j=0; j<nodemap->num; j++) {
|
||||||
/* dont merge from nodes that are unavailable */
|
/* don't merge from nodes that are unavailable */
|
||||||
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -989,7 +989,7 @@ static int update_vnnmap_on_all_nodes(struct ctdb_context *ctdb, struct ctdb_nod
|
|||||||
|
|
||||||
/* push the new vnn map out to all the nodes */
|
/* push the new vnn map out to all the nodes */
|
||||||
for (j=0; j<nodemap->num; j++) {
|
for (j=0; j<nodemap->num; j++) {
|
||||||
/* dont push to nodes that are unavailable */
|
/* don't push to nodes that are unavailable */
|
||||||
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -1792,7 +1792,7 @@ static bool do_takeover_run(struct ctdb_recoverd *rec,
|
|||||||
if (ctdb_client_send_message(rec->ctdb, nodes[i],
|
if (ctdb_client_send_message(rec->ctdb, nodes[i],
|
||||||
CTDB_SRVID_DISABLE_TAKEOVER_RUNS,
|
CTDB_SRVID_DISABLE_TAKEOVER_RUNS,
|
||||||
data) != 0) {
|
data) != 0) {
|
||||||
DEBUG(DEBUG_INFO,("Failed to reenable takeover runs\n"));
|
DEBUG(DEBUG_INFO,("Failed to re-enable takeover runs\n"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2410,7 +2410,7 @@ static bool ctdb_election_win(struct ctdb_recoverd *rec, struct election_message
|
|||||||
|
|
||||||
ctdb_election_data(rec, &myem);
|
ctdb_election_data(rec, &myem);
|
||||||
|
|
||||||
/* we cant win if we dont have the recmaster capability */
|
/* we cant win if we don't have the recmaster capability */
|
||||||
if ((rec->ctdb->capabilities & CTDB_CAP_RECMASTER) == 0) {
|
if ((rec->ctdb->capabilities & CTDB_CAP_RECMASTER) == 0) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -3371,7 +3371,7 @@ static int verify_local_ip_allocation(struct ctdb_context *ctdb, struct ctdb_rec
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* verify that we have the ip addresses we should have
|
/* verify that we have the ip addresses we should have
|
||||||
and we dont have ones we shouldnt have.
|
and we don't have ones we shouldnt have.
|
||||||
if we find an inconsistency we set recmode to
|
if we find an inconsistency we set recmode to
|
||||||
active on the local node and wait for the recmaster
|
active on the local node and wait for the recmaster
|
||||||
to do a full blown recovery.
|
to do a full blown recovery.
|
||||||
|
@ -213,7 +213,7 @@ void ctdb_input_pkt(struct ctdb_context *ctdb, struct ctdb_req_header *hdr)
|
|||||||
case CTDB_REPLY_CALL:
|
case CTDB_REPLY_CALL:
|
||||||
case CTDB_REQ_DMASTER:
|
case CTDB_REQ_DMASTER:
|
||||||
case CTDB_REPLY_DMASTER:
|
case CTDB_REPLY_DMASTER:
|
||||||
/* we dont allow these calls when banned */
|
/* we don't allow these calls when banned */
|
||||||
if (ctdb->nodes[ctdb->pnn]->flags & NODE_FLAGS_BANNED) {
|
if (ctdb->nodes[ctdb->pnn]->flags & NODE_FLAGS_BANNED) {
|
||||||
DEBUG(DEBUG_DEBUG,(__location__ " ctdb operation %u"
|
DEBUG(DEBUG_DEBUG,(__location__ " ctdb operation %u"
|
||||||
" request %u"
|
" request %u"
|
||||||
|
@ -73,7 +73,7 @@ static int ctdb_add_local_iface(struct ctdb_context *ctdb, const char *iface)
|
|||||||
{
|
{
|
||||||
struct ctdb_interface *i;
|
struct ctdb_interface *i;
|
||||||
|
|
||||||
/* Verify that we dont have an entry for this ip yet */
|
/* Verify that we don't have an entry for this ip yet */
|
||||||
for (i=ctdb->ifaces;i;i=i->next) {
|
for (i=ctdb->ifaces;i;i=i->next) {
|
||||||
if (strcmp(i->name, iface) == 0) {
|
if (strcmp(i->name, iface) == 0) {
|
||||||
return 0;
|
return 0;
|
||||||
@ -1059,7 +1059,7 @@ static int ctdb_add_public_address(struct ctdb_context *ctdb,
|
|||||||
}
|
}
|
||||||
free(tmp);
|
free(tmp);
|
||||||
|
|
||||||
/* Verify that we dont have an entry for this ip yet */
|
/* Verify that we don't have an entry for this ip yet */
|
||||||
for (vnn=ctdb->vnn;vnn;vnn=vnn->next) {
|
for (vnn=ctdb->vnn;vnn;vnn=vnn->next) {
|
||||||
if (ctdb_same_sockaddr(addr, &vnn->public_address)) {
|
if (ctdb_same_sockaddr(addr, &vnn->public_address)) {
|
||||||
DEBUG(DEBUG_CRIT,("Same ip '%s' specified multiple times in the public address list \n",
|
DEBUG(DEBUG_CRIT,("Same ip '%s' specified multiple times in the public address list \n",
|
||||||
@ -2658,7 +2658,7 @@ int ctdb_takeover_run(struct ctdb_context *ctdb, struct ctdb_node_map_old *nodem
|
|||||||
for (tmp_ip=all_ips;tmp_ip;tmp_ip=tmp_ip->next) {
|
for (tmp_ip=all_ips;tmp_ip;tmp_ip=tmp_ip->next) {
|
||||||
if (tmp_ip->pnn == nodemap->nodes[i].pnn) {
|
if (tmp_ip->pnn == nodemap->nodes[i].pnn) {
|
||||||
/* This node should be serving this
|
/* This node should be serving this
|
||||||
vnn so dont tell it to release the ip
|
vnn so don't tell it to release the ip
|
||||||
*/
|
*/
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -3040,7 +3040,7 @@ static void ctdb_remove_connection(struct ctdb_context *ctdb, struct ctdb_connec
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* if the array is empty we cant remove it
|
/* if the array is empty we cant remove it
|
||||||
and we dont need to do anything
|
and we don't need to do anything
|
||||||
*/
|
*/
|
||||||
if (vnn->tcp_array == NULL) {
|
if (vnn->tcp_array == NULL) {
|
||||||
DEBUG(DEBUG_INFO,("Trying to remove tickle that doesnt exist (array is empty) %s:%u\n",
|
DEBUG(DEBUG_INFO,("Trying to remove tickle that doesnt exist (array is empty) %s:%u\n",
|
||||||
@ -3051,7 +3051,7 @@ static void ctdb_remove_connection(struct ctdb_context *ctdb, struct ctdb_connec
|
|||||||
|
|
||||||
|
|
||||||
/* See if we know this connection
|
/* See if we know this connection
|
||||||
if we dont know this connection then we dont need to do anything
|
if we don't know this connection then we dont need to do anything
|
||||||
*/
|
*/
|
||||||
tcpp = ctdb_tcp_find(vnn->tcp_array, conn);
|
tcpp = ctdb_tcp_find(vnn->tcp_array, conn);
|
||||||
if (tcpp == NULL) {
|
if (tcpp == NULL) {
|
||||||
@ -3607,7 +3607,7 @@ static int ctdb_killtcp_destructor(struct ctdb_kill_tcp *killtcp)
|
|||||||
/* nothing fancy here, just unconditionally replace any existing
|
/* nothing fancy here, just unconditionally replace any existing
|
||||||
connection structure with the new one.
|
connection structure with the new one.
|
||||||
|
|
||||||
dont even free the old one if it did exist, that one is talloc_stolen
|
don't even free the old one if it did exist, that one is talloc_stolen
|
||||||
by the same node in the tree anyway and will be deleted when the new data
|
by the same node in the tree anyway and will be deleted when the new data
|
||||||
is deleted
|
is deleted
|
||||||
*/
|
*/
|
||||||
@ -3684,7 +3684,7 @@ static int ctdb_killtcp_add_connection(struct ctdb_context *ctdb,
|
|||||||
add_killtcp_callback, con);
|
add_killtcp_callback, con);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
If we dont have a socket to listen on yet we must create it
|
If we don't have a socket to listen on yet we must create it
|
||||||
*/
|
*/
|
||||||
if (killtcp->capture_fd == -1) {
|
if (killtcp->capture_fd == -1) {
|
||||||
const char *iface = ctdb_vnn_iface_string(vnn);
|
const char *iface = ctdb_vnn_iface_string(vnn);
|
||||||
@ -4227,7 +4227,7 @@ int verify_remote_ip_allocation(struct ctdb_context *ctdb,
|
|||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (ctdb->ip_tree == NULL) {
|
if (ctdb->ip_tree == NULL) {
|
||||||
/* dont know the expected allocation yet, assume remote node
|
/* don't know the expected allocation yet, assume remote node
|
||||||
is correct. */
|
is correct. */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ struct ctdb_persistent_write_state {
|
|||||||
uint32_t flags;
|
uint32_t flags;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* dont create/update records that does not exist locally */
|
/* don't create/update records that does not exist locally */
|
||||||
#define UPDATE_FLAGS_REPLACE_ONLY 1
|
#define UPDATE_FLAGS_REPLACE_ONLY 1
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1442,7 +1442,7 @@ static void ctdb_vacuum_event(struct tevent_context *ev,
|
|||||||
struct tevent_fd *fde;
|
struct tevent_fd *fde;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
/* we dont vacuum if we are in recovery mode, or db frozen */
|
/* we don't vacuum if we are in recovery mode, or db frozen */
|
||||||
if (ctdb->recovery_mode == CTDB_RECOVERY_ACTIVE ||
|
if (ctdb->recovery_mode == CTDB_RECOVERY_ACTIVE ||
|
||||||
ctdb->freeze_mode[ctdb_db->priority] != CTDB_FREEZE_NONE) {
|
ctdb->freeze_mode[ctdb_db->priority] != CTDB_FREEZE_NONE) {
|
||||||
DEBUG(DEBUG_INFO, ("Not vacuuming %s (%s)\n", ctdb_db->db_name,
|
DEBUG(DEBUG_INFO, ("Not vacuuming %s (%s)\n", ctdb_db->db_name,
|
||||||
@ -1745,7 +1745,7 @@ int32_t ctdb_local_schedule_for_deletion(struct ctdb_db_context *ctdb_db,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* if we dont have a connection to the daemon we can not send
|
/* if we don't have a connection to the daemon we can not send
|
||||||
a control. For example sometimes from update_record control child
|
a control. For example sometimes from update_record control child
|
||||||
process.
|
process.
|
||||||
*/
|
*/
|
||||||
|
@ -137,7 +137,7 @@ int main(int argc, const char *argv[])
|
|||||||
exit(10);
|
exit(10);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* we dont want to wait for any reply */
|
/* we don't want to wait for any reply */
|
||||||
w.tv_sec = 0;
|
w.tv_sec = 0;
|
||||||
w.tv_usec = 0;
|
w.tv_usec = 0;
|
||||||
clnt_control(clnt, CLSET_TIMEOUT, (char *)&w);
|
clnt_control(clnt, CLSET_TIMEOUT, (char *)&w);
|
||||||
|
@ -1566,7 +1566,7 @@ refuse machine password change
|
|||||||
<listitem><para>maximum password age = 90 days.</para></listitem>
|
<listitem><para>maximum password age = 90 days.</para></listitem>
|
||||||
<listitem><para>minimum password age = 7 days.</para></listitem>
|
<listitem><para>minimum password age = 7 days.</para></listitem>
|
||||||
<listitem><para>bad lockout attempt = 8 bad logon attempts.</para></listitem>
|
<listitem><para>bad lockout attempt = 8 bad logon attempts.</para></listitem>
|
||||||
<listitem><para>lockout duration = forever, account must be manually reenabled.</para></listitem>
|
<listitem><para>lockout duration = forever, account must be manually re-enabled.</para></listitem>
|
||||||
</orderedlist>
|
</orderedlist>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -112,7 +112,7 @@ John Terpstra (jht@aquasoft.com.au)
|
|||||||
of Samba.
|
of Samba.
|
||||||
|
|
||||||
The donation of the new PC will make it possible to more fully
|
The donation of the new PC will make it possible to more fully
|
||||||
diagnose and observe the behaviour of Samba in conjuction with
|
diagnose and observe the behaviour of Samba in conjunction with
|
||||||
other SMB protocol utilising systems.
|
other SMB protocol utilising systems.
|
||||||
|
|
||||||
|
|
||||||
|
@ -97,7 +97,7 @@
|
|||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>ldap_domain</term>
|
<term>ldap_domain</term>
|
||||||
<listitem><para>When using the LDAP server in
|
<listitem><para>When using the LDAP server in
|
||||||
the Active Directory server, this allows to
|
the Active Directory server, this allows one to
|
||||||
specify the domain where to access the Active
|
specify the domain where to access the Active
|
||||||
Directory server. This allows using trust
|
Directory server. This allows using trust
|
||||||
relationships while keeping all RFC 2307
|
relationships while keeping all RFC 2307
|
||||||
|
@ -239,7 +239,7 @@
|
|||||||
<term>--single-obj-repl</term>
|
<term>--single-obj-repl</term>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
When calling "net rpc vampire keytab" this option
|
When calling "net rpc vampire keytab" this option
|
||||||
allows to replicate just a single object to the generated keytab file.
|
allows one to replicate just a single object to the generated keytab file.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
@ -247,7 +247,7 @@
|
|||||||
<term>--clean-old-entries</term>
|
<term>--clean-old-entries</term>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
When calling "net rpc vampire keytab" this option
|
When calling "net rpc vampire keytab" this option
|
||||||
allows to cleanup old entries from the generated keytab file.
|
allows one to cleanup old entries from the generated keytab file.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
@ -299,7 +299,7 @@
|
|||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>-X|--exclude DIRECTORY</term>
|
<term>-X|--exclude DIRECTORY</term>
|
||||||
<listitem><para>Allows to exclude directories when copying with "net rpc share migrate".
|
<listitem><para>Allows one to exclude directories when copying with "net rpc share migrate".
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
@ -1354,7 +1354,7 @@ to show in the result.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
This attribute allows to control which Kerberos encryption types are used for the generation of initial and service tickets. The value consists of an integer bitmask with the following values:
|
This attribute allows one to control which Kerberos encryption types are used for the generation of initial and service tickets. The value consists of an integer bitmask with the following values:
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>0x00000001 DES-CBC-CRC</para>
|
<para>0x00000001 DES-CBC-CRC</para>
|
||||||
@ -1380,7 +1380,7 @@ to show in the result.
|
|||||||
<title>ADS ENCTYPES SET <replaceable><ACCOUNTNAME></replaceable> <replaceable>[enctypes]</replaceable></title>
|
<title>ADS ENCTYPES SET <replaceable><ACCOUNTNAME></replaceable> <replaceable>[enctypes]</replaceable></title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Set the value of the "msDS-SupportedEncryptionTypes" attribute of the LDAP object of ACCOUNTNAME to a given value. If the value is ommitted, the value is set to 31 which enables all the currently supported encryption types.
|
Set the value of the "msDS-SupportedEncryptionTypes" attribute of the LDAP object of ACCOUNTNAME to a given value. If the value is omitted, the value is set to 31 which enables all the currently supported encryption types.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>Example: <userinput>net ads enctypes set Computername 24</userinput></para>
|
<para>Example: <userinput>net ads enctypes set Computername 24</userinput></para>
|
||||||
|
@ -160,7 +160,7 @@
|
|||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>cached_login</term>
|
<term>cached_login</term>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Winbind allows to logon using cached credentials when <parameter>winbind offline logon</parameter> is enabled. To use this feature from the PAM module this option must be set.
|
Winbind allows one to logon using cached credentials when <parameter>winbind offline logon</parameter> is enabled. To use this feature from the PAM module this option must be set.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
@ -152,7 +152,7 @@
|
|||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>cached_login = yes|no</term>
|
<term>cached_login = yes|no</term>
|
||||||
<listitem><para>
|
<listitem><para>
|
||||||
Winbind allows to logon using cached credentials when <parameter>winbind offline logon</parameter> is enabled. To use this feature from the PAM module this option must be set. Defaults to "no".
|
Winbind allows one to logon using cached credentials when <parameter>winbind offline logon</parameter> is enabled. To use this feature from the PAM module this option must be set. Defaults to "no".
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
@ -428,7 +428,7 @@ account policy value for bad lockout attempt is now 3
|
|||||||
then <parameter>-i in-backend -e out-backend</parameter>
|
then <parameter>-i in-backend -e out-backend</parameter>
|
||||||
applies to the account policies instead of the user database.</para>
|
applies to the account policies instead of the user database.</para>
|
||||||
|
|
||||||
<para>This option will allow to migrate account policies from their default
|
<para>This option will allow one to migrate account policies from their default
|
||||||
tdb-store into a passdb backend, e.g. an LDAP directory server.</para>
|
tdb-store into a passdb backend, e.g. an LDAP directory server.</para>
|
||||||
|
|
||||||
<para>Example: <command>pdbedit -y -i tdbsam: -e ldapsam:ldap://my.ldap.host</command></para>
|
<para>Example: <command>pdbedit -y -i tdbsam: -e ldapsam:ldap://my.ldap.host</command></para>
|
||||||
|
@ -74,7 +74,7 @@
|
|||||||
<term>ceph:config_file = path</term>
|
<term>ceph:config_file = path</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Allows to define a ceph configfile to use. Empty by default.
|
Allows one to define a ceph configfile to use. Empty by default.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
Example: ceph:config_file =
|
Example: ceph:config_file =
|
||||||
|
@ -182,7 +182,7 @@
|
|||||||
</term>
|
</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
The basedir option allows to specify a directory
|
The basedir option allows one to specify a directory
|
||||||
between the share's mount point and the share root,
|
between the share's mount point and the share root,
|
||||||
relative to which the file system's snapshots are taken.
|
relative to which the file system's snapshots are taken.
|
||||||
</para>
|
</para>
|
||||||
@ -272,7 +272,7 @@
|
|||||||
<term>shadow:sscanf = yes/no</term>
|
<term>shadow:sscanf = yes/no</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
This paramter can be used to specify that the time in
|
This parameter can be used to specify that the time in
|
||||||
format string is given as an unsigned long integer (%lu)
|
format string is given as an unsigned long integer (%lu)
|
||||||
rather than a time strptime() can parse.
|
rather than a time strptime() can parse.
|
||||||
The result must be a unix time_t time.
|
The result must be a unix time_t time.
|
||||||
|
@ -123,7 +123,7 @@
|
|||||||
</refsect1>
|
</refsect1>
|
||||||
<refsect1>
|
<refsect1>
|
||||||
<title>Version 2 of the protocol</title>
|
<title>Version 2 of the protocol</title>
|
||||||
<para>Protocol version 2 is an approach to solve the problems introduced with protcol v1.
|
<para>Protocol version 2 is an approach to solve the problems introduced with protocol v1.
|
||||||
From the users perspective, the following changes are most prominent among other enhancements:
|
From the users perspective, the following changes are most prominent among other enhancements:
|
||||||
</para>
|
</para>
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
@ -259,7 +259,7 @@
|
|||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>--krb5ccname <replaceable>KRB5CCNAME</replaceable></term>
|
<term>--krb5ccname <replaceable>KRB5CCNAME</replaceable></term>
|
||||||
<listitem><para>Allows to request a sepcific kerberos credential
|
<listitem><para>Allows one to request a sepcific kerberos credential
|
||||||
cache type used for authentication.
|
cache type used for authentication.
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>This parameter has been extended since the 2.2.x
|
<para>This parameter has been extended since the 2.2.x
|
||||||
series, now it allows to specify the debug level for multiple
|
series, now it allows one to specify the debug level for multiple
|
||||||
debug classes. This is to give greater flexibility in the configuration
|
debug classes. This is to give greater flexibility in the configuration
|
||||||
of the system. The following debug classes are currently implemented:
|
of the system. The following debug classes are currently implemented:
|
||||||
</para>
|
</para>
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
<para>Under DOS and Windows, if a user can write to a
|
<para>Under DOS and Windows, if a user can write to a
|
||||||
file they can change the timestamp on it. Under POSIX semantics,
|
file they can change the timestamp on it. Under POSIX semantics,
|
||||||
only the owner of the file or root may change the timestamp. By
|
only the owner of the file or root may change the timestamp. By
|
||||||
default, Samba emulates the DOS semantics and allows to change the
|
default, Samba emulates the DOS semantics and allows one to change the
|
||||||
timestamp on a file if the user <command moreinfo="none">smbd</command> is acting
|
timestamp on a file if the user <command moreinfo="none">smbd</command> is acting
|
||||||
on behalf has write permissions.
|
on behalf has write permissions.
|
||||||
Due to changes in Microsoft Office 2000 and beyond,
|
Due to changes in Microsoft Office 2000 and beyond,
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Choosing the <emphasis>fork</emphasis> option will cause samba to fork
|
Choosing the <emphasis>fork</emphasis> option will cause samba to fork
|
||||||
a separate proces for each daemon configured this way. Each daemon may
|
a separate process for each daemon configured this way. Each daemon may
|
||||||
in turn fork a number of children used to handle requests from multiple
|
in turn fork a number of children used to handle requests from multiple
|
||||||
smbds and direct tcp/ip connections (if the Endpoint Mapper is
|
smbds and direct tcp/ip connections (if the Endpoint Mapper is
|
||||||
enabled). Communication with smbd happens over named pipes and require
|
enabled). Communication with smbd happens over named pipes and require
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Choosing the <emphasis>external</emphasis> option allows to run
|
Choosing the <emphasis>external</emphasis> option allows one to run
|
||||||
a separate daemon or even a completely independent (3rd party)
|
a separate daemon or even a completely independent (3rd party)
|
||||||
server capable of interfacing with samba via the MS-RPC
|
server capable of interfacing with samba via the MS-RPC
|
||||||
interface over named pipes.
|
interface over named pipes.
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
will also result in sambaLMPassword in Samba's passdb being
|
will also result in sambaLMPassword in Samba's passdb being
|
||||||
blanked after the next password change. As a result of that
|
blanked after the next password change. As a result of that
|
||||||
lanman clients won't be able to authenticate, even if lanman
|
lanman clients won't be able to authenticate, even if lanman
|
||||||
auth is reenabled later on.
|
auth is re-enabled later on.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>Unlike the <command moreinfo="none">encrypt
|
<para>Unlike the <command moreinfo="none">encrypt
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
<para><anchor id="AUTO"/><emphasis>SERVER ROLE = AUTO</emphasis></para>
|
<para><anchor id="AUTO"/><emphasis>SERVER ROLE = AUTO</emphasis></para>
|
||||||
|
|
||||||
<para>This is the default server role in Samba, and causes Samba to consult
|
<para>This is the default server role in Samba, and causes Samba to consult
|
||||||
the <smbconfoption name="security"/> parameter (if set) to determine the server role, giving compatable behaviours to previous Samba versions.</para>
|
the <smbconfoption name="security"/> parameter (if set) to determine the server role, giving compatible behaviours to previous Samba versions.</para>
|
||||||
|
|
||||||
<para><anchor id="STANDALONE"/><emphasis>SERVER ROLE = STANDALONE</emphasis></para>
|
<para><anchor id="STANDALONE"/><emphasis>SERVER ROLE = STANDALONE</emphasis></para>
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
<description>
|
<description>
|
||||||
|
|
||||||
<para>This parameter is designed to control whether Winbind should
|
<para>This parameter is designed to control whether Winbind should
|
||||||
allow to login with the <parameter moreinfo="none">pam_winbind</parameter>
|
allow one to login with the <parameter moreinfo="none">pam_winbind</parameter>
|
||||||
module using Cached Credentials. If enabled, winbindd will store user credentials
|
module using Cached Credentials. If enabled, winbindd will store user credentials
|
||||||
from successful logins encrypted in a local cache.
|
from successful logins encrypted in a local cache.
|
||||||
</para>
|
</para>
|
||||||
|
@ -136,7 +136,7 @@ newer.
|
|||||||
<indexterm id="ch02-idx-947333-0"><primary>makefiles</primary></indexterm> that accompanies the binary distribution should list any special requirements.<footnote label="2" id="ch02-pgfId-943622">
|
<indexterm id="ch02-idx-947333-0"><primary>makefiles</primary></indexterm> that accompanies the binary distribution should list any special requirements.<footnote label="2" id="ch02-pgfId-943622">
|
||||||
|
|
||||||
|
|
||||||
<para>This is especially true with programs that use <emphasis>glibc-2.1</emphasis> (which comes standard with Red Hat Linux 6). This library caused quite a consternation in the development community when it was released because it was incompatable with previous versions of <emphasis>g</emphasis><filename>libc</filename>.</para>
|
<para>This is especially true with programs that use <emphasis>glibc-2.1</emphasis> (which comes standard with Red Hat Linux 6). This library caused quite a consternation in the development community when it was released because it was incompatible with previous versions of <emphasis>g</emphasis><filename>libc</filename>.</para>
|
||||||
|
|
||||||
|
|
||||||
</footnote></para>
|
</footnote></para>
|
||||||
|
@ -1007,7 +1007,7 @@ domain master</title>
|
|||||||
<indexterm id="ch05-idx-969711-0"><primary>files</primary><secondary>deleting, option for</secondary></indexterm> <literal>veto</literal> <literal>files</literal> option comes in. If this boolean option is set to <literal>yes</literal>, the user is allowed to delete both the regular files and the vetoed files in the directory, and the directory itself will be removed. If the option is set to <literal>no</literal>, the user will not be able to delete the vetoed files, and consequently the directory will not be deleted either. From the user's perspective, the directory will appear to be empty, but cannot be removed.</para>
|
<indexterm id="ch05-idx-969711-0"><primary>files</primary><secondary>deleting, option for</secondary></indexterm> <literal>veto</literal> <literal>files</literal> option comes in. If this boolean option is set to <literal>yes</literal>, the user is allowed to delete both the regular files and the vetoed files in the directory, and the directory itself will be removed. If the option is set to <literal>no</literal>, the user will not be able to delete the vetoed files, and consequently the directory will not be deleted either. From the user's perspective, the directory will appear to be empty, but cannot be removed.</para>
|
||||||
|
|
||||||
|
|
||||||
<para>The <literal>dont</literal> <literal>descend</literal> directive specifies a list of <indexterm id="ch05-idx-969715-0"><primary>directories</primary><secondary>barring users from viewing contents</secondary></indexterm>directories whose contents Samba should not allow to be visible. Note that we say <emphasis>contents</emphasis>, not the directory itself. Users will be able to enter a directory marked as such, but they are prohibited from descending the directory tree any farther—they will always see an empty folder. For example, let's use this option with a more basic form of the share that we defined earlier in the chapter:</para>
|
<para>The <literal>dont</literal> <literal>descend</literal> directive specifies a list of <indexterm id="ch05-idx-969715-0"><primary>directories</primary><secondary>barring users from viewing contents</secondary></indexterm>directories whose contents Samba should not allow one to be visible. Note that we say <emphasis>contents</emphasis>, not the directory itself. Users will be able to enter a directory marked as such, but they are prohibited from descending the directory tree any farther—they will always see an empty folder. For example, let's use this option with a more basic form of the share that we defined earlier in the chapter:</para>
|
||||||
|
|
||||||
|
|
||||||
<programlisting>[data]
|
<programlisting>[data]
|
||||||
|
@ -143,7 +143,7 @@ bool setup_kaddr( krb5_address *pkaddr, struct sockaddr_storage *paddr)
|
|||||||
*
|
*
|
||||||
* @param context The krb5_context
|
* @param context The krb5_context
|
||||||
* @param host_princ The krb5_principal to use
|
* @param host_princ The krb5_principal to use
|
||||||
* @param salt The optional salt, if ommitted, salt is calculated with
|
* @param salt The optional salt, if omitted, salt is calculated with
|
||||||
* the provided principal.
|
* the provided principal.
|
||||||
* @param password The krb5_data containing the password
|
* @param password The krb5_data containing the password
|
||||||
* @param enctype The krb5_enctype to use for the keyblock generation
|
* @param enctype The krb5_enctype to use for the keyblock generation
|
||||||
@ -1276,7 +1276,7 @@ krb5_error_code smb_krb5_enctype_to_string(krb5_context context,
|
|||||||
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
* Open a krb5 keytab with flags, handles readonly or readwrite access and
|
* Open a krb5 keytab with flags, handles readonly or readwrite access and
|
||||||
* allows to process non-default keytab names.
|
* allows one to process non-default keytab names.
|
||||||
* @param context krb5_context
|
* @param context krb5_context
|
||||||
* @param keytab_name_req string
|
* @param keytab_name_req string
|
||||||
* @param write_access bool if writable keytab is required
|
* @param write_access bool if writable keytab is required
|
||||||
|
@ -407,7 +407,7 @@ char *ldb_control_to_string(TALLOC_CTX *mem_ctx, const struct ldb_control *contr
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* A little trick to allow to use constants defined in headers rather than
|
* A little trick to allow one to use constants defined in headers rather than
|
||||||
* hardwritten in the file.
|
* hardwritten in the file.
|
||||||
* "sizeof" will return the \0 char as well so it will take the place of ":"
|
* "sizeof" will return the \0 char as well so it will take the place of ":"
|
||||||
* in the length of the string.
|
* in the length of the string.
|
||||||
|
@ -8,11 +8,11 @@ forming a linked list of records that share a hash value. The individual
|
|||||||
linked lists are protected across processes with 1-byte fcntl locks on the
|
linked lists are protected across processes with 1-byte fcntl locks on the
|
||||||
starting pointer of the linked list representing a hash value.
|
starting pointer of the linked list representing a hash value.
|
||||||
|
|
||||||
The external locking API of tdb allows to lock individual records. Instead of
|
The external locking API of tdb allows one to lock individual records. Instead of
|
||||||
really locking individual records, the tdb API locks a complete linked list
|
really locking individual records, the tdb API locks a complete linked list
|
||||||
with a fcntl lock.
|
with a fcntl lock.
|
||||||
|
|
||||||
The external locking API of tdb also allows to lock the complete database, and
|
The external locking API of tdb also allows one to lock the complete database, and
|
||||||
ctdb uses this facility to freeze databases during a recovery. While the
|
ctdb uses this facility to freeze databases during a recovery. While the
|
||||||
so-called allrecord lock is held, all linked lists and all individual records
|
so-called allrecord lock is held, all linked lists and all individual records
|
||||||
are frozen alltogether. Tdb achieves this by locking the complete file range
|
are frozen alltogether. Tdb achieves this by locking the complete file range
|
||||||
|
@ -780,7 +780,7 @@ void debug_set_settings(struct debug_settings *settings,
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* If 'logging' is not set, create backend settings from
|
* If 'logging' is not set, create backend settings from
|
||||||
* deprecated 'syslog' and 'syslog only' paramters
|
* deprecated 'syslog' and 'syslog only' parameters
|
||||||
*/
|
*/
|
||||||
if (logging_param != NULL) {
|
if (logging_param != NULL) {
|
||||||
len = strlen(logging_param);
|
len = strlen(logging_param);
|
||||||
|
@ -295,7 +295,7 @@ ADS_STATUS ads_add_gpo_link(ADS_STRUCT *ads,
|
|||||||
const char *gp_link, *gp_link_new;
|
const char *gp_link, *gp_link_new;
|
||||||
ADS_MODLIST mods;
|
ADS_MODLIST mods;
|
||||||
|
|
||||||
/* although ADS allows to set anything here, we better check here if
|
/* although ADS allows one to set anything here, we better check here if
|
||||||
* the gpo_dn is sane */
|
* the gpo_dn is sane */
|
||||||
|
|
||||||
if (!strnequal(gpo_dn, "LDAP://CN={", strlen("LDAP://CN={")) != 0) {
|
if (!strnequal(gpo_dn, "LDAP://CN={", strlen("LDAP://CN={")) != 0) {
|
||||||
|
@ -195,7 +195,7 @@ static int make_safe_fd(int fd)
|
|||||||
* @brief Check if we talk to the priviliged pipe which should be owned by root.
|
* @brief Check if we talk to the priviliged pipe which should be owned by root.
|
||||||
*
|
*
|
||||||
* This checks if we have uid_wrapper running and if this is the case it will
|
* This checks if we have uid_wrapper running and if this is the case it will
|
||||||
* allow to connect to the winbind privileged pipe even it is not owned by root.
|
* allow one to connect to the winbind privileged pipe even it is not owned by root.
|
||||||
*
|
*
|
||||||
* @param[in] uid The uid to check if we can safely talk to the pipe.
|
* @param[in] uid The uid to check if we can safely talk to the pipe.
|
||||||
*
|
*
|
||||||
|
@ -426,7 +426,7 @@ Example2 shows how to set the account expiration of user User2 so it will never
|
|||||||
Example3:
|
Example3:
|
||||||
samba-tool user setexpiry --days=20 --filter=samaccountname=User3
|
samba-tool user setexpiry --days=20 --filter=samaccountname=User3
|
||||||
|
|
||||||
Example3 shows how to set the account expiration date to end of day 20 days from the current day. The username or sAMAccountName is specified using the --filter= paramter and the username in this example is User3.
|
Example3 shows how to set the account expiration date to end of day 20 days from the current day. The username or sAMAccountName is specified using the --filter= parameter and the username in this example is User3.
|
||||||
|
|
||||||
Example4:
|
Example4:
|
||||||
samba-tool user setexpiry --noexpiry User4
|
samba-tool user setexpiry --noexpiry User4
|
||||||
|
@ -1387,7 +1387,7 @@ static NTSTATUS tar_create_skip_path(struct tar *t,
|
|||||||
|
|
||||||
if (!isdir) {
|
if (!isdir) {
|
||||||
|
|
||||||
/* 1. if we dont want X and we have X, skip */
|
/* 1. if we don't want X and we have X, skip */
|
||||||
if (!t->mode.system && (mode & FILE_ATTRIBUTE_SYSTEM)) {
|
if (!t->mode.system && (mode & FILE_ATTRIBUTE_SYSTEM)) {
|
||||||
*_skip = true;
|
*_skip = true;
|
||||||
return NT_STATUS_OK;
|
return NT_STATUS_OK;
|
||||||
|
@ -80,18 +80,18 @@ typedef struct _SambaAfpInfo
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** These extentions are only supported with the NT LM 0.12 Dialect. These extentions
|
** These extensions are only supported with the NT LM 0.12 Dialect. These extentions
|
||||||
** will be process on a share by share bases.
|
** will be process on a share by share bases.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Trans2_Query_FS_Information Call is used by the MacCIFS extentions for three reasons.
|
** Trans2_Query_FS_Information Call is used by the MacCIFS extensions for three reasons.
|
||||||
** First to see if the remote server share supports the basic Macintosh CIFS extentions.
|
** First to see if the remote server share supports the basic Macintosh CIFS extensions.
|
||||||
** Second to return some basic need information about the share to the Macintosh.
|
** Second to return some basic need information about the share to the Macintosh.
|
||||||
** Third to see if this share support any other Macintosh extentions.
|
** Third to see if this share support any other Macintosh extensions.
|
||||||
**
|
**
|
||||||
** We will be using infromation levels that are betwwen 0x300 and 0x399 for all Macintosh
|
** We will be using infromation levels that are betwwen 0x300 and 0x399 for all Macintosh
|
||||||
** extentions calls. The first of these will be the SMB_MAC_QUERY_FS_INFO level which
|
** extensions calls. The first of these will be the SMB_MAC_QUERY_FS_INFO level which
|
||||||
** will allow the server to return the MacQueryFSInfo structure. All fields are Little
|
** will allow the server to return the MacQueryFSInfo structure. All fields are Little
|
||||||
** Endian unless other wise specified.
|
** Endian unless other wise specified.
|
||||||
*/
|
*/
|
||||||
|
@ -1171,7 +1171,7 @@ static void callback_do_change(GtkWidget *widget,
|
|||||||
box1 = gtk_vbox_new(FALSE, 0);
|
box1 = gtk_vbox_new(FALSE, 0);
|
||||||
gtk_container_add(GTK_CONTAINER(window), box1);
|
gtk_container_add(GTK_CONTAINER(window), box1);
|
||||||
|
|
||||||
label = gtk_label_new("You can change the name and membership of this computer. Changes may affect access to network ressources.");
|
label = gtk_label_new("You can change the name and membership of this computer. Changes may affect access to network resources.");
|
||||||
gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
|
gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
|
||||||
gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
|
gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
|
||||||
gtk_box_pack_start(GTK_BOX(box1), label, TRUE, TRUE, 0);
|
gtk_box_pack_start(GTK_BOX(box1), label, TRUE, TRUE, 0);
|
||||||
|
@ -271,7 +271,7 @@ static int priv_traverse_fn(struct db_record *rec, void *state)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
Retreive list of privileged SIDs (for _lsa_enumerate_accounts()
|
Retrieve list of privileged SIDs (for _lsa_enumerate_accounts()
|
||||||
*********************************************************************/
|
*********************************************************************/
|
||||||
|
|
||||||
NTSTATUS privilege_enumerate_accounts(struct dom_sid **sids, int *num_sids)
|
NTSTATUS privilege_enumerate_accounts(struct dom_sid **sids, int *num_sids)
|
||||||
|
@ -301,7 +301,7 @@ static void smbldap_set_mod_internal(LDAPMod *** modlist, int modop, const char
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0 /* commented out after discussion with abartlet. Do not reenable.
|
#if 0 /* commented out after discussion with abartlet. Do not re-enable.
|
||||||
left here so other do not re-add similar code --jerry */
|
left here so other do not re-add similar code --jerry */
|
||||||
if (value == NULL || *value == '\0')
|
if (value == NULL || *value == '\0')
|
||||||
return;
|
return;
|
||||||
|
@ -1070,7 +1070,7 @@ int get_remote_hostname(const struct tsocket_address *remote_address,
|
|||||||
lookup_nc(&nc);
|
lookup_nc(&nc);
|
||||||
|
|
||||||
if (nc.name == NULL) {
|
if (nc.name == NULL) {
|
||||||
*name = talloc_strdup(mem_ctx, "UNKOWN");
|
*name = talloc_strdup(mem_ctx, "UNKNOWN");
|
||||||
} else {
|
} else {
|
||||||
*name = talloc_strdup(mem_ctx, nc.name);
|
*name = talloc_strdup(mem_ctx, nc.name);
|
||||||
}
|
}
|
||||||
|
@ -296,7 +296,7 @@ struct cli_pull_state {
|
|||||||
* The maximum is 256:
|
* The maximum is 256:
|
||||||
* - which would be a window of 256 MByte
|
* - which would be a window of 256 MByte
|
||||||
* for SMB2 with multi-credit
|
* for SMB2 with multi-credit
|
||||||
* or smb1 unix extentions.
|
* or smb1 unix extensions.
|
||||||
*/
|
*/
|
||||||
uint16_t max_chunks;
|
uint16_t max_chunks;
|
||||||
uint16_t num_chunks;
|
uint16_t num_chunks;
|
||||||
@ -1111,7 +1111,7 @@ struct cli_push_state {
|
|||||||
* The maximum is 256:
|
* The maximum is 256:
|
||||||
* - which would be a window of 256 MByte
|
* - which would be a window of 256 MByte
|
||||||
* for SMB2 with multi-credit
|
* for SMB2 with multi-credit
|
||||||
* or smb1 unix extentions.
|
* or smb1 unix extensions.
|
||||||
*/
|
*/
|
||||||
uint16_t max_chunks;
|
uint16_t max_chunks;
|
||||||
uint16_t num_chunks;
|
uint16_t num_chunks;
|
||||||
|
@ -304,7 +304,7 @@ int regsubkey_ctr_numkeys( struct regsubkey_ctr *ctr )
|
|||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
Retreive a specific key string
|
Retrieve a specific key string
|
||||||
**********************************************************************/
|
**********************************************************************/
|
||||||
|
|
||||||
char* regsubkey_ctr_specific_key( struct regsubkey_ctr *ctr, uint32_t key_index )
|
char* regsubkey_ctr_specific_key( struct regsubkey_ctr *ctr, uint32_t key_index )
|
||||||
@ -378,7 +378,7 @@ uint32_t regval_type(struct regval_blob *val)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
Retreive a pointer to a specific value. Caller shoud dup the structure
|
Retrieve a pointer to a specific value. Caller shoud dup the structure
|
||||||
since this memory will go away when the ctr is free()'d
|
since this memory will go away when the ctr is free()'d
|
||||||
**********************************************************************/
|
**********************************************************************/
|
||||||
|
|
||||||
|
@ -3905,7 +3905,7 @@ NTSTATUS _lsa_EnumTrustedDomainsEx(struct pipes_struct *p,
|
|||||||
NTSTATUS nt_status;
|
NTSTATUS nt_status;
|
||||||
|
|
||||||
/* bail out early if pdb backend is not capable of ex trusted domains,
|
/* bail out early if pdb backend is not capable of ex trusted domains,
|
||||||
* if we dont do that, the client might not call
|
* if we don't do that, the client might not call
|
||||||
* _lsa_EnumTrustedDomains() afterwards - gd */
|
* _lsa_EnumTrustedDomains() afterwards - gd */
|
||||||
|
|
||||||
if (!(pdb_capabilities() & PDB_CAP_TRUSTED_DOMAINS_EX)) {
|
if (!(pdb_capabilities() & PDB_CAP_TRUSTED_DOMAINS_EX)) {
|
||||||
|
@ -153,7 +153,7 @@ NTSTATUS smbd_check_access_rights(struct connection_struct *conn,
|
|||||||
* Samba 3.6 and earlier granted execute access even
|
* Samba 3.6 and earlier granted execute access even
|
||||||
* if the ACL did not contain execute rights.
|
* if the ACL did not contain execute rights.
|
||||||
* Samba 4.0 is more correct and checks it.
|
* Samba 4.0 is more correct and checks it.
|
||||||
* The compatibilty mode allows to skip this check
|
* The compatibilty mode allows one to skip this check
|
||||||
* to smoothen upgrades.
|
* to smoothen upgrades.
|
||||||
*/
|
*/
|
||||||
if (lp_acl_allow_execute_always(SNUM(conn))) {
|
if (lp_acl_allow_execute_always(SNUM(conn))) {
|
||||||
|
@ -646,7 +646,7 @@ static NTSTATUS query_user(struct winbindd_domain *domain,
|
|||||||
TALLOC_FREE(user);
|
TALLOC_FREE(user);
|
||||||
|
|
||||||
if (info->full_name == NULL) {
|
if (info->full_name == NULL) {
|
||||||
/* this might fail so we dont check the return code */
|
/* this might fail so we don't check the return code */
|
||||||
wcache_query_user_fullname(domain,
|
wcache_query_user_fullname(domain,
|
||||||
mem_ctx,
|
mem_ctx,
|
||||||
sid,
|
sid,
|
||||||
|
@ -3100,7 +3100,7 @@ void wcache_invalidate_samlogon(struct winbindd_domain *domain,
|
|||||||
fstring key_str, sid_string;
|
fstring key_str, sid_string;
|
||||||
struct winbind_cache *cache;
|
struct winbind_cache *cache;
|
||||||
|
|
||||||
/* dont clear cached U/SID and UG/SID entries when we want to logon
|
/* don't clear cached U/SID and UG/SID entries when we want to logon
|
||||||
* offline - gd */
|
* offline - gd */
|
||||||
|
|
||||||
if (lp_winbind_offline_logon()) {
|
if (lp_winbind_offline_logon()) {
|
||||||
|
@ -443,7 +443,7 @@ static NTSTATUS msrpc_query_user(struct winbindd_domain *domain,
|
|||||||
user->base.full_name.string);
|
user->base.full_name.string);
|
||||||
|
|
||||||
if (user_info->full_name == NULL) {
|
if (user_info->full_name == NULL) {
|
||||||
/* this might fail so we dont check the return code */
|
/* this might fail so we don't check the return code */
|
||||||
wcache_query_user_fullname(domain,
|
wcache_query_user_fullname(domain,
|
||||||
mem_ctx,
|
mem_ctx,
|
||||||
user_sid,
|
user_sid,
|
||||||
|
@ -1841,7 +1841,7 @@ process_result:
|
|||||||
cached_info3->base.full_name.string);
|
cached_info3->base.full_name.string);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
/* this might fail so we dont check the return code */
|
/* this might fail so we don't check the return code */
|
||||||
wcache_query_user_fullname(domain,
|
wcache_query_user_fullname(domain,
|
||||||
info3,
|
info3,
|
||||||
&user_sid,
|
&user_sid,
|
||||||
@ -2002,7 +2002,7 @@ process_result:
|
|||||||
cached_info3->base.full_name.string);
|
cached_info3->base.full_name.string);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
/* this might fail so we dont check the return code */
|
/* this might fail so we don't check the return code */
|
||||||
wcache_query_user_fullname(domain,
|
wcache_query_user_fullname(domain,
|
||||||
*info3,
|
*info3,
|
||||||
&user_sid,
|
&user_sid,
|
||||||
|
@ -6,7 +6,7 @@ Released under the GPLv3
|
|||||||
Important context for porting to MIT
|
Important context for porting to MIT
|
||||||
------------------------------------
|
------------------------------------
|
||||||
|
|
||||||
This document should be read in conjuction with the Samba4 source code.
|
This document should be read in conjunction with the Samba4 source code.
|
||||||
DAL and KDC requirements are expressed (as an implementation against Heimdal's
|
DAL and KDC requirements are expressed (as an implementation against Heimdal's
|
||||||
HDB abstraction layer) in Samba4's source4/kdc/hdb-samba4.c in particular.
|
HDB abstraction layer) in Samba4's source4/kdc/hdb-samba4.c in particular.
|
||||||
hbd-samba4.c is the biggest piece of samba-to-krb glue layer, so the main
|
hbd-samba4.c is the biggest piece of samba-to-krb glue layer, so the main
|
||||||
|
@ -831,7 +831,7 @@ static int rootdse_search(struct ldb_module *module, struct ldb_request *req)
|
|||||||
|
|
||||||
if (do_attribute_explicit(req->op.search.attrs, "netlogon")) {
|
if (do_attribute_explicit(req->op.search.attrs, "netlogon")) {
|
||||||
ret = rootdse_handle_netlogon(ac);
|
ret = rootdse_handle_netlogon(ac);
|
||||||
/* We have to return an empty result, so dont forward `ret' */
|
/* We have to return an empty result, so don't forward `ret' */
|
||||||
if (ret != LDB_SUCCESS) {
|
if (ret != LDB_SUCCESS) {
|
||||||
return ldb_module_done(ac->req, NULL, NULL, LDB_SUCCESS);
|
return ldb_module_done(ac->req, NULL, NULL, LDB_SUCCESS);
|
||||||
}
|
}
|
||||||
|
@ -695,7 +695,7 @@ static int samldb_fill_object(struct samldb_ctx *ac)
|
|||||||
"rdnAttId", "cn");
|
"rdnAttId", "cn");
|
||||||
if (ret != LDB_SUCCESS) return ret;
|
if (ret != LDB_SUCCESS) return ret;
|
||||||
|
|
||||||
/* do not allow to mark an attributeSchema as RODC filtered if it
|
/* do not allow one to mark an attributeSchema as RODC filtered if it
|
||||||
* is system-critical */
|
* is system-critical */
|
||||||
if (check_rodc_critical_attribute(ac->msg)) {
|
if (check_rodc_critical_attribute(ac->msg)) {
|
||||||
ldb_asprintf_errstring(ldb, "Refusing schema add of %s - cannot combine critical class with RODC filtering",
|
ldb_asprintf_errstring(ldb, "Refusing schema add of %s - cannot combine critical class with RODC filtering",
|
||||||
@ -796,7 +796,7 @@ static int samldb_fill_object(struct samldb_ctx *ac)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* do not allow to mark an attributeSchema as RODC filtered if it
|
/* do not allow one to mark an attributeSchema as RODC filtered if it
|
||||||
* is system-critical */
|
* is system-critical */
|
||||||
if (check_rodc_critical_attribute(ac->msg)) {
|
if (check_rodc_critical_attribute(ac->msg)) {
|
||||||
ldb_asprintf_errstring(ldb,
|
ldb_asprintf_errstring(ldb,
|
||||||
|
@ -702,7 +702,7 @@ class AclSearchTests(AclTests):
|
|||||||
res = anonymous.search("", expression="(objectClass=*)", scope=SCOPE_BASE)
|
res = anonymous.search("", expression="(objectClass=*)", scope=SCOPE_BASE)
|
||||||
self.assertEquals(len(res), 1)
|
self.assertEquals(len(res), 1)
|
||||||
#verify some of the attributes
|
#verify some of the attributes
|
||||||
#dont care about values
|
#don't care about values
|
||||||
self.assertTrue("ldapServiceName" in res[0])
|
self.assertTrue("ldapServiceName" in res[0])
|
||||||
self.assertTrue("namingContexts" in res[0])
|
self.assertTrue("namingContexts" in res[0])
|
||||||
self.assertTrue("isSynchronized" in res[0])
|
self.assertTrue("isSynchronized" in res[0])
|
||||||
|
@ -264,7 +264,7 @@ static NTSTATUS echo_startup_interfaces(struct echo_server *echo,
|
|||||||
|
|
||||||
model_ops = process_model_startup("single");
|
model_ops = process_model_startup("single");
|
||||||
if (model_ops == NULL) {
|
if (model_ops == NULL) {
|
||||||
DEBUG(0, ("Can't find 'single' proces model_ops\n"));
|
DEBUG(0, ("Can't find 'single' process model_ops\n"));
|
||||||
return NT_STATUS_INTERNAL_ERROR;
|
return NT_STATUS_INTERNAL_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -239,7 +239,7 @@
|
|||||||
swig errors code.
|
swig errors code.
|
||||||
|
|
||||||
Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
|
Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
|
||||||
allows to return the 'cast rank', for example, if you have this
|
allows one to return the 'cast rank', for example, if you have this
|
||||||
|
|
||||||
int food(double)
|
int food(double)
|
||||||
int fooi(int);
|
int fooi(int);
|
||||||
|
@ -110,7 +110,7 @@ static PyObject *py_wrap_getxattr(PyObject *self, PyObject *args)
|
|||||||
static PyMethodDef py_posix_eadb_methods[] = {
|
static PyMethodDef py_posix_eadb_methods[] = {
|
||||||
{ "wrap_getxattr", (PyCFunction)py_wrap_getxattr, METH_VARARGS,
|
{ "wrap_getxattr", (PyCFunction)py_wrap_getxattr, METH_VARARGS,
|
||||||
"wrap_getxattr(filename,attribute) -> blob\n"
|
"wrap_getxattr(filename,attribute) -> blob\n"
|
||||||
"Retreive given attribute on the given file." },
|
"Retrieve given attribute on the given file." },
|
||||||
{ "wrap_setxattr", (PyCFunction)py_wrap_setxattr, METH_VARARGS,
|
{ "wrap_setxattr", (PyCFunction)py_wrap_setxattr, METH_VARARGS,
|
||||||
"wrap_setxattr(filename,attribute,value)\n"
|
"wrap_setxattr(filename,attribute,value)\n"
|
||||||
"Set the given attribute to the given value on the given file." },
|
"Set the given attribute to the given value on the given file." },
|
||||||
|
@ -98,7 +98,7 @@ static PyObject *py_wrap_getxattr(PyObject *self, PyObject *args)
|
|||||||
static PyMethodDef py_xattr_methods[] = {
|
static PyMethodDef py_xattr_methods[] = {
|
||||||
{ "wrap_getxattr", (PyCFunction)py_wrap_getxattr, METH_VARARGS,
|
{ "wrap_getxattr", (PyCFunction)py_wrap_getxattr, METH_VARARGS,
|
||||||
"wrap_getxattr(filename,attribute) -> blob\n"
|
"wrap_getxattr(filename,attribute) -> blob\n"
|
||||||
"Retreive given attribute on the given file." },
|
"Retrieve given attribute on the given file." },
|
||||||
{ "wrap_setxattr", (PyCFunction)py_wrap_setxattr, METH_VARARGS,
|
{ "wrap_setxattr", (PyCFunction)py_wrap_setxattr, METH_VARARGS,
|
||||||
"wrap_setxattr(filename,attribute,value)\n"
|
"wrap_setxattr(filename,attribute,value)\n"
|
||||||
"Set the given attribute to the given value on the given file." },
|
"Set the given attribute to the given value on the given file." },
|
||||||
|
@ -146,7 +146,7 @@ static PyObject *py_wrap_getxattr(PyObject *self, PyObject *args)
|
|||||||
static PyMethodDef py_xattr_methods[] = {
|
static PyMethodDef py_xattr_methods[] = {
|
||||||
{ "wrap_getxattr", (PyCFunction)py_wrap_getxattr, METH_VARARGS,
|
{ "wrap_getxattr", (PyCFunction)py_wrap_getxattr, METH_VARARGS,
|
||||||
"wrap_getxattr(filename,attribute) -> blob\n"
|
"wrap_getxattr(filename,attribute) -> blob\n"
|
||||||
"Retreive given attribute on the given file." },
|
"Retrieve given attribute on the given file." },
|
||||||
{ "wrap_setxattr", (PyCFunction)py_wrap_setxattr, METH_VARARGS,
|
{ "wrap_setxattr", (PyCFunction)py_wrap_setxattr, METH_VARARGS,
|
||||||
"wrap_setxattr(filename,attribute,value)\n"
|
"wrap_setxattr(filename,attribute,value)\n"
|
||||||
"Set the given attribute to the given value on the given file." },
|
"Set the given attribute to the given value on the given file." },
|
||||||
|
@ -1168,7 +1168,7 @@ static WERROR dcesrv_spoolss_RemoteFindFirstPrinterChangeNotifyEx(struct dcesrv_
|
|||||||
/*
|
/*
|
||||||
* TODO: for now just open a connection to the client and drop it again
|
* TODO: for now just open a connection to the client and drop it again
|
||||||
* to keep the w2k3 PrintServer
|
* to keep the w2k3 PrintServer
|
||||||
* happy to allow to open the Add Printer GUI
|
* happy to allow one to open the Add Printer GUI
|
||||||
* and the torture suite passing
|
* and the torture suite passing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1232,7 +1232,7 @@ def rebuild_sd(samdb, names):
|
|||||||
During the different pre release of samba4 security descriptors
|
During the different pre release of samba4 security descriptors
|
||||||
(SD) were notarly broken (up to alpha11 included)
|
(SD) were notarly broken (up to alpha11 included)
|
||||||
|
|
||||||
This function allows to get them back in order, this function works
|
This function allows one to get them back in order, this function works
|
||||||
only after the database comparison that --full mode uses and which
|
only after the database comparison that --full mode uses and which
|
||||||
populates the dnToRecalculate and dnNotToRecalculate lists.
|
populates the dnToRecalculate and dnNotToRecalculate lists.
|
||||||
|
|
||||||
|
@ -750,7 +750,7 @@ static void benchrw_callback(struct smbcli_request *req)
|
|||||||
struct benchrw_state *state = req->async.private_data;
|
struct benchrw_state *state = req->async.private_data;
|
||||||
struct torture_context *tctx = state->tctx;
|
struct torture_context *tctx = state->tctx;
|
||||||
|
|
||||||
/*dont send new requests when torture_numops is reached*/
|
/*don't send new requests when torture_numops is reached*/
|
||||||
if ((state->mode == READ_WRITE_DATA)
|
if ((state->mode == READ_WRITE_DATA)
|
||||||
&& (state->completed >= torture_numops)) {
|
&& (state->completed >= torture_numops)) {
|
||||||
state->mode=MAX_OPS_REACHED;
|
state->mode=MAX_OPS_REACHED;
|
||||||
|
@ -72,7 +72,7 @@ try_again:
|
|||||||
|
|
||||||
status = smb_raw_lock(cli->tree, &io);
|
status = smb_raw_lock(cli->tree, &io);
|
||||||
|
|
||||||
/* If we dont use timeouts and we got file lock conflict
|
/* If we don't use timeouts and we got file lock conflict
|
||||||
just try the lock again.
|
just try the lock again.
|
||||||
*/
|
*/
|
||||||
if (lock_timeout==0) {
|
if (lock_timeout==0) {
|
||||||
|
@ -513,7 +513,7 @@ static DATA_BLOB *encrypt_blob_pk(struct torture_context *tctx,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static struct bkrp_BackupKey *createRetreiveBackupKeyGUIDStruct(struct torture_context *tctx,
|
static struct bkrp_BackupKey *createRetrieveBackupKeyGUIDStruct(struct torture_context *tctx,
|
||||||
struct dcerpc_pipe *p, int version, DATA_BLOB *out)
|
struct dcerpc_pipe *p, int version, DATA_BLOB *out)
|
||||||
{
|
{
|
||||||
struct dcerpc_binding *binding;
|
struct dcerpc_binding *binding;
|
||||||
@ -586,7 +586,7 @@ static struct bkrp_BackupKey *createRestoreGUIDStruct(struct torture_context *tc
|
|||||||
enum ndr_err_code ndr_err;
|
enum ndr_err_code ndr_err;
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
const char *user;
|
const char *user;
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, version, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, version, &out_blob);
|
||||||
if (r == NULL) {
|
if (r == NULL) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -605,7 +605,7 @@ static struct bkrp_BackupKey *createRestoreGUIDStruct(struct torture_context *tc
|
|||||||
"Get GUID");
|
"Get GUID");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We have to set it outside of the function createRetreiveBackupKeyGUIDStruct
|
* We have to set it outside of the function createRetrieveBackupKeyGUIDStruct
|
||||||
* the len of the blob, this is due to the fact that they don't have the
|
* the len of the blob, this is due to the fact that they don't have the
|
||||||
* same size (one is 32bits the other 64bits)
|
* same size (one is 32bits the other 64bits)
|
||||||
*/
|
*/
|
||||||
@ -740,12 +740,12 @@ static struct bkrp_BackupKey *createRestoreGUIDStruct(struct torture_context *tc
|
|||||||
/* Check that we are able to receive the certificate of the DCs
|
/* Check that we are able to receive the certificate of the DCs
|
||||||
* used for client wrap version of the backup key protocol
|
* used for client wrap version of the backup key protocol
|
||||||
*/
|
*/
|
||||||
static bool test_RetreiveBackupKeyGUID(struct torture_context *tctx,
|
static bool test_RetrieveBackupKeyGUID(struct torture_context *tctx,
|
||||||
struct dcerpc_pipe *p)
|
struct dcerpc_pipe *p)
|
||||||
{
|
{
|
||||||
struct dcerpc_binding_handle *b = p->binding_handle;
|
struct dcerpc_binding_handle *b = p->binding_handle;
|
||||||
DATA_BLOB out_blob;
|
DATA_BLOB out_blob;
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
enum dcerpc_AuthType auth_type;
|
enum dcerpc_AuthType auth_type;
|
||||||
enum dcerpc_AuthLevel auth_level;
|
enum dcerpc_AuthLevel auth_level;
|
||||||
|
|
||||||
@ -799,7 +799,7 @@ static bool test_RestoreGUID_ko(struct torture_context *tctx,
|
|||||||
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_PARAM, "Wrong error code");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_PARAM, "Wrong error code");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -828,7 +828,7 @@ static bool test_RestoreGUID_wrongversion(struct torture_context *tctx,
|
|||||||
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_PARAM, "Wrong error code on wrong version");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_PARAM, "Wrong error code on wrong version");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -857,7 +857,7 @@ static bool test_RestoreGUID_wronguser(struct torture_context *tctx,
|
|||||||
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_ACCESS, "Restore GUID");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_ACCESS, "Restore GUID");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -887,7 +887,7 @@ static bool test_RestoreGUID_v3(struct torture_context *tctx,
|
|||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_OK, "Restore GUID");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_OK, "Restore GUID");
|
||||||
torture_assert_str_equal(tctx, (char*)resp.secret.data, secret, "Wrong secret");
|
torture_assert_str_equal(tctx, (char*)resp.secret.data, secret, "Wrong secret");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -919,7 +919,7 @@ static bool test_RestoreGUID(struct torture_context *tctx,
|
|||||||
"Unable to unmarshall bkrp_client_side_unwrapped");
|
"Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_str_equal(tctx, (char*)resp.secret.data, secret, "Wrong secret");
|
torture_assert_str_equal(tctx, (char*)resp.secret.data, secret, "Wrong secret");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -948,7 +948,7 @@ static bool test_RestoreGUID_badmagiconsecret(struct torture_context *tctx,
|
|||||||
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Wrong error code while providing bad magic in secret");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Wrong error code while providing bad magic in secret");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -977,7 +977,7 @@ static bool test_RestoreGUID_emptyrequest(struct torture_context *tctx,
|
|||||||
out_blob.length = *r->out.data_out_len;
|
out_blob.length = *r->out.data_out_len;
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_PARAM, "Bad error code on wrong has in access check");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_PARAM, "Bad error code on wrong has in access check");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -1013,7 +1013,7 @@ static bool test_RestoreGUID_badcertguid(struct torture_context *tctx,
|
|||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Bad error code on wrong has in access check");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Bad error code on wrong has in access check");
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -1042,7 +1042,7 @@ static bool test_RestoreGUID_badmagicaccesscheck(struct torture_context *tctx,
|
|||||||
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Bad error code on wrong has in access check");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Bad error code on wrong has in access check");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -1071,7 +1071,7 @@ static bool test_RestoreGUID_badhashaccesscheck(struct torture_context *tctx,
|
|||||||
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
torture_assert_int_equal(tctx, NDR_ERR_CODE_IS_SUCCESS(ndr_err), 0, "Unable to unmarshall bkrp_client_side_unwrapped");
|
||||||
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Bad error code on wrong has in access check");
|
torture_assert_werr_equal(tctx, r->out.result, WERR_INVALID_DATA, "Bad error code on wrong has in access check");
|
||||||
} else {
|
} else {
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
torture_assert_ntstatus_equal(tctx, dcerpc_bkrp_BackupKey_r(b, tctx, r),
|
||||||
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
NT_STATUS_ACCESS_DENIED, "Get GUID");
|
||||||
}
|
}
|
||||||
@ -1081,12 +1081,12 @@ static bool test_RestoreGUID_badhashaccesscheck(struct torture_context *tctx,
|
|||||||
/*
|
/*
|
||||||
* Check that the RSA modulus in the certificate of the DCs has 2048 bits.
|
* Check that the RSA modulus in the certificate of the DCs has 2048 bits.
|
||||||
*/
|
*/
|
||||||
static bool test_RetreiveBackupKeyGUID_2048bits(struct torture_context *tctx,
|
static bool test_RetrieveBackupKeyGUID_2048bits(struct torture_context *tctx,
|
||||||
struct dcerpc_pipe *p)
|
struct dcerpc_pipe *p)
|
||||||
{
|
{
|
||||||
struct dcerpc_binding_handle *b = p->binding_handle;
|
struct dcerpc_binding_handle *b = p->binding_handle;
|
||||||
DATA_BLOB out_blob;
|
DATA_BLOB out_blob;
|
||||||
struct bkrp_BackupKey *r = createRetreiveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
struct bkrp_BackupKey *r = createRetrieveBackupKeyGUIDStruct(tctx, p, 2, &out_blob);
|
||||||
enum dcerpc_AuthType auth_type;
|
enum dcerpc_AuthType auth_type;
|
||||||
enum dcerpc_AuthLevel auth_level;
|
enum dcerpc_AuthLevel auth_level;
|
||||||
|
|
||||||
@ -1097,7 +1097,7 @@ static bool test_RetreiveBackupKeyGUID_2048bits(struct torture_context *tctx,
|
|||||||
RSA *rsa;
|
RSA *rsa;
|
||||||
int RSA_returned_bits;
|
int RSA_returned_bits;
|
||||||
|
|
||||||
torture_assert(tctx, r != NULL, "createRetreiveBackupKeyGUIDStruct failed");
|
torture_assert(tctx, r != NULL, "createRetrieveBackupKeyGUIDStruct failed");
|
||||||
|
|
||||||
hx509_context_init(&hctx);
|
hx509_context_init(&hctx);
|
||||||
|
|
||||||
@ -2056,7 +2056,7 @@ struct torture_suite *torture_rpc_backupkey(TALLOC_CTX *mem_ctx)
|
|||||||
&ndr_table_backupkey);
|
&ndr_table_backupkey);
|
||||||
|
|
||||||
torture_rpc_tcase_add_test(tcase, "retreive_backup_key_guid",
|
torture_rpc_tcase_add_test(tcase, "retreive_backup_key_guid",
|
||||||
test_RetreiveBackupKeyGUID);
|
test_RetrieveBackupKeyGUID);
|
||||||
|
|
||||||
torture_rpc_tcase_add_test(tcase, "restore_guid",
|
torture_rpc_tcase_add_test(tcase, "restore_guid",
|
||||||
test_RestoreGUID);
|
test_RestoreGUID);
|
||||||
@ -2094,7 +2094,7 @@ struct torture_suite *torture_rpc_backupkey(TALLOC_CTX *mem_ctx)
|
|||||||
test_RestoreGUID_emptyrequest);
|
test_RestoreGUID_emptyrequest);
|
||||||
|
|
||||||
torture_rpc_tcase_add_test(tcase, "retreive_backup_key_guid_2048_bits",
|
torture_rpc_tcase_add_test(tcase, "retreive_backup_key_guid_2048_bits",
|
||||||
test_RetreiveBackupKeyGUID_2048bits);
|
test_RetrieveBackupKeyGUID_2048bits);
|
||||||
|
|
||||||
torture_rpc_tcase_add_test(tcase, "server_wrap_encrypt_decrypt",
|
torture_rpc_tcase_add_test(tcase, "server_wrap_encrypt_decrypt",
|
||||||
test_ServerWrap_encrypt_decrypt);
|
test_ServerWrap_encrypt_decrypt);
|
||||||
|
@ -7475,7 +7475,7 @@ static bool test_AddPrinter_normal(struct torture_context *tctx,
|
|||||||
"failed to add printer");
|
"failed to add printer");
|
||||||
result = ex ? rex.out.result : r.out.result;
|
result = ex ? rex.out.result : r.out.result;
|
||||||
|
|
||||||
/* w2k8r2 allows to add printer w/o defining printprocessor */
|
/* w2k8r2 allows one to add printer w/o defining printprocessor */
|
||||||
|
|
||||||
if (!W_ERROR_IS_OK(result)) {
|
if (!W_ERROR_IS_OK(result)) {
|
||||||
torture_assert_werr_equal(tctx, result, WERR_UNKNOWN_PRINTPROCESSOR,
|
torture_assert_werr_equal(tctx, result, WERR_UNKNOWN_PRINTPROCESSOR,
|
||||||
|
@ -1779,7 +1779,7 @@ static bool test_aapl(struct torture_context *tctx,
|
|||||||
/*
|
/*
|
||||||
* Now check returned AAPL context
|
* Now check returned AAPL context
|
||||||
*/
|
*/
|
||||||
torture_comment(tctx, "Comparing returned AAPL capabilites\n");
|
torture_comment(tctx, "Comparing returned AAPL capabilities\n");
|
||||||
|
|
||||||
aapl = smb2_create_blob_find(&io.out.blobs,
|
aapl = smb2_create_blob_find(&io.out.blobs,
|
||||||
SMB2_CREATE_TAG_AAPL);
|
SMB2_CREATE_TAG_AAPL);
|
||||||
|
@ -183,7 +183,7 @@
|
|||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>--request-lm-key</term>
|
<term>--request-lm-key</term>
|
||||||
<listitem><para>Retreive LM session key</para></listitem>
|
<listitem><para>Retrieve LM session key</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
@ -35,7 +35,7 @@ usage: testspoolss.exe <name> [print] [samba3] [architecture=ARCHITECTURE]
|
|||||||
from the printserver
|
from the printserver
|
||||||
[samba3] will skip some tests samba servers are known
|
[samba3] will skip some tests samba servers are known
|
||||||
not to have implemented
|
not to have implemented
|
||||||
[architecture=X] allows to define a specific
|
[architecture=X] allows one to define a specific
|
||||||
architecture to test with. choose between:
|
architecture to test with. choose between:
|
||||||
"Windows NT x86" or "Windows x64"
|
"Windows NT x86" or "Windows x64"
|
||||||
..............................................................................
|
..............................................................................
|
||||||
|
@ -1055,7 +1055,7 @@ static BOOL test_OnePrinter(struct torture_context *tctx,
|
|||||||
ret &= test_EnumPrinterDataEx(tctx, printername, "PrinterDriverData", handle, NULL, NULL);
|
ret &= test_EnumPrinterDataEx(tctx, printername, "PrinterDriverData", handle, NULL, NULL);
|
||||||
ret &= test_DeviceModes(tctx, printername, handle);
|
ret &= test_DeviceModes(tctx, printername, handle);
|
||||||
#if 0
|
#if 0
|
||||||
/* dont run these at the moment, behaviour is PrinterData API calls (not
|
/* don't run these at the moment, behaviour is PrinterData API calls (not
|
||||||
* dcerpc calls) is almost unpredictable - gd */
|
* dcerpc calls) is almost unpredictable - gd */
|
||||||
ret &= test_PrinterData(tctx, printername, handle);
|
ret &= test_PrinterData(tctx, printername, handle);
|
||||||
ret &= test_PrinterDataW(tctx, printername, handle);
|
ret &= test_PrinterDataW(tctx, printername, handle);
|
||||||
@ -1765,7 +1765,7 @@ int main(int argc, char *argv[])
|
|||||||
fprintf(stderr, "\t from the printserver\n");
|
fprintf(stderr, "\t from the printserver\n");
|
||||||
fprintf(stderr, "\t[samba3] will skip some tests samba servers are known\n");
|
fprintf(stderr, "\t[samba3] will skip some tests samba servers are known\n");
|
||||||
fprintf(stderr, "\t not to have implemented\n");
|
fprintf(stderr, "\t not to have implemented\n");
|
||||||
fprintf(stderr, "\t[architecture=X] allows to define a specific\n");
|
fprintf(stderr, "\t[architecture=X] allows one to define a specific\n");
|
||||||
fprintf(stderr, "\t architecture to test with. choose between:\n");
|
fprintf(stderr, "\t architecture to test with. choose between:\n");
|
||||||
fprintf(stderr, "\t \"Windows NT x86\" or \"Windows x64\"\n");
|
fprintf(stderr, "\t \"Windows NT x86\" or \"Windows x64\"\n");
|
||||||
exit(-1);
|
exit(-1);
|
||||||
|
Loading…
Reference in New Issue
Block a user