/*++ Copyright (c) 1991 Microsoft Corporation Module Name: ftpbind.c Abstract: Routines which use RPC to bind and unbind the client to the FTP Daemon service. Author: Murali R. Krishnan (MuraliK) 15-Nov-1995 (completely rewritten) Environment: User Mode -Win32 Revision History: MuraliK 21-Dec-1995 Support for TCP/IP binding added. --*/ #define UNICODE #include #include #include #include #include #include "apiutil.h" handle_t FTP_IMPERSONATE_HANDLE_bind( FTP_IMPERSONATE_HANDLE ServerName ) /*++ Routine Description: This routine is called from the FTP Daemon client stubs when it is necessary create an RPC binding to the server end with impersonation level of security Arguments: ServerName - A pointer to a string containing the name of the server to bind with. Return Value: The binding handle is returned to the stub routine. If the bind is unsuccessful, a NULL will be returned. --*/ { handle_t BindingHandle; RPC_STATUS RpcStatus; RpcStatus = RpcBindHandleForServer(&BindingHandle, ServerName, FTP_INTERFACE_NAME, PROT_SEQ_NP_OPTIONS_W ); return BindingHandle; } // FTP_IMPERSONATE_HANDLE_bind() handle_t FTP_IDENTIFY_HANDLE_bind( FTP_IDENTIFY_HANDLE ServerName ) /*++ Routine Description: This routine is called from the FTP Daemon client stubs when it is necessary create an RPC binding to the server end with identification level of impersonation. Arguments: ServerName - A pointer to a string containing the name of the server to bind with. Return Value: The binding handle is returned to the stub routine. If the bind is unsuccessful, a NULL will be returned. --*/ { handle_t BindingHandle; RPC_STATUS RpcStatus; RpcStatus = RpcBindHandleForServer(&BindingHandle, ServerName, FTP_INTERFACE_NAME, PROT_SEQ_NP_OPTIONS_W ); return BindingHandle; } // FTP_IDENTIFY_HANDLE_bind() void FTP_IMPERSONATE_HANDLE_unbind( FTP_IMPERSONATE_HANDLE ServerName, handle_t BindingHandle ) /*++ Routine Description: This routine calls a common unbind routine that is shared by all services. This routine is called from the FTP Daemon client stubs when it is necessary to unbind from the server end. Arguments: ServerName - This is the name of the server from which to unbind. BindingHandle - This is the binding handle that is to be closed. Return Value: None. --*/ { UNREFERENCED_PARAMETER(ServerName); (VOID ) RpcBindHandleFree(&BindingHandle); return; } // FTP_IMPERSONATE_HANDLE_unbind() void FTP_IDENTIFY_HANDLE_unbind( FTP_IDENTIFY_HANDLE ServerName, handle_t BindingHandle ) /*++ Routine Description: This routine calls a common unbind routine that is shared by all services. This routine is called from the FTP Daemon client stubs when it is necessary to unbind from a server. Arguments: ServerName - This is the name of the server from which to unbind. BindingHandle - This is the binding handle that is to be closed. Return Value: None. --*/ { UNREFERENCED_PARAMETER(ServerName); (VOID ) RpcBindHandleFree(&BindingHandle); return; } // FTP_IDENTIFY_HANDLE_unbind() /****************************** End Of File ******************************/