1 /* NFSv4.1 client for Windows 2 * Copyright � 2012 The Regents of the University of Michigan 3 * 4 * Olga Kornievskaia <aglo@umich.edu> 5 * Casey Bodley <cbodley@umich.edu> 6 * 7 * This library is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU Lesser General Public License as published by 9 * the Free Software Foundation; either version 2.1 of the License, or (at 10 * your option) any later version. 11 * 12 * This library is distributed in the hope that it will be useful, but 13 * without any warranty; without even the implied warranty of merchantability 14 * or fitness for a particular purpose. See the GNU Lesser General Public 15 * License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public License 18 * along with this library; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 20 */ 21 22 #ifndef RECOVERY_H 23 #define RECOVERY_H 24 25 #include "nfs41.h" 26 27 28 /* session/client recovery uses a lock and condition variable in nfs41_client 29 * to prevent multiple threads from attempting to recover at the same time */ 30 bool_t nfs41_recovery_start_or_wait( 31 IN nfs41_client *client); 32 33 void nfs41_recovery_finish( 34 IN nfs41_client *client); 35 36 37 int nfs41_recover_session( 38 IN nfs41_session *session, 39 IN bool_t client_state_lost); 40 41 void nfs41_recover_sequence_flags( 42 IN nfs41_session *session, 43 IN uint32_t flags); 44 45 int nfs41_recover_client_state( 46 IN nfs41_session *session, 47 IN nfs41_client *client); 48 49 void nfs41_client_state_revoked( 50 IN nfs41_session *session, 51 IN nfs41_client *client, 52 IN uint32_t revoked); 53 54 struct __nfs_argop4; 55 bool_t nfs41_recover_stateid( 56 IN nfs41_session *session, 57 IN struct __nfs_argop4 *argop); 58 59 #endif /* RECOVERY_H */ 60