def _find_modes(self): """Determine the appropriate modes for files and directories.""" try: st = self._transport.stat('.') except errors.TransportNotPossible: self._dir_mode = 0755 self._file_mode = 0644 else: self._dir_mode = st.st_mode & 07777 # Remove the sticky and execute bits for files self._file_mode = self._dir_mode & ~07111 if not self._set_dir_mode: self._dir_mode = None if not self._set_file_mode: self._file_mode = None