sftp.h revision 162852
1251877Speter/* $OpenBSD: sftp.h,v 1.5 2006/03/25 22:22:43 djm Exp $ */ 2251877Speter 3251877Speter/* 4251877Speter * Copyright (c) 2001 Markus Friedl. All rights reserved. 5251877Speter * 6251877Speter * Redistribution and use in source and binary forms, with or without 7251877Speter * modification, are permitted provided that the following conditions 8251877Speter * are met: 9251877Speter * 1. Redistributions of source code must retain the above copyright 10251877Speter * notice, this list of conditions and the following disclaimer. 11251877Speter * 2. Redistributions in binary form must reproduce the above copyright 12251877Speter * notice, this list of conditions and the following disclaimer in the 13251877Speter * documentation and/or other materials provided with the distribution. 14251877Speter * 15251877Speter * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16251877Speter * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17251877Speter * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18251877Speter * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19251877Speter * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20251877Speter * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21251877Speter * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22251877Speter * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23251877Speter * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24251877Speter * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25251877Speter */ 26251877Speter 27251877Speter/* 28251877Speter * draft-ietf-secsh-filexfer-01.txt 29251877Speter */ 30251877Speter 31251877Speter/* version */ 32251877Speter#define SSH2_FILEXFER_VERSION 3 33251877Speter 34251877Speter/* client to server */ 35251877Speter#define SSH2_FXP_INIT 1 36251877Speter#define SSH2_FXP_OPEN 3 37251877Speter#define SSH2_FXP_CLOSE 4 38251877Speter#define SSH2_FXP_READ 5 39251877Speter#define SSH2_FXP_WRITE 6 40251877Speter#define SSH2_FXP_LSTAT 7 41251877Speter#define SSH2_FXP_STAT_VERSION_0 7 42251877Speter#define SSH2_FXP_FSTAT 8 43251877Speter#define SSH2_FXP_SETSTAT 9 44251877Speter#define SSH2_FXP_FSETSTAT 10 45251877Speter#define SSH2_FXP_OPENDIR 11 46251877Speter#define SSH2_FXP_READDIR 12 47251877Speter#define SSH2_FXP_REMOVE 13 48251877Speter#define SSH2_FXP_MKDIR 14 49251877Speter#define SSH2_FXP_RMDIR 15 50251877Speter#define SSH2_FXP_REALPATH 16 51251877Speter#define SSH2_FXP_STAT 17 52251877Speter#define SSH2_FXP_RENAME 18 53251877Speter#define SSH2_FXP_READLINK 19 54251877Speter#define SSH2_FXP_SYMLINK 20 55251877Speter 56251877Speter/* server to client */ 57251877Speter#define SSH2_FXP_VERSION 2 58251877Speter#define SSH2_FXP_STATUS 101 59251877Speter#define SSH2_FXP_HANDLE 102 60251877Speter#define SSH2_FXP_DATA 103 61251877Speter#define SSH2_FXP_NAME 104 62251877Speter#define SSH2_FXP_ATTRS 105 63251877Speter 64251877Speter#define SSH2_FXP_EXTENDED 200 65251877Speter#define SSH2_FXP_EXTENDED_REPLY 201 66251877Speter 67251877Speter/* attributes */ 68251877Speter#define SSH2_FILEXFER_ATTR_SIZE 0x00000001 69251877Speter#define SSH2_FILEXFER_ATTR_UIDGID 0x00000002 70251877Speter#define SSH2_FILEXFER_ATTR_PERMISSIONS 0x00000004 71251877Speter#define SSH2_FILEXFER_ATTR_ACMODTIME 0x00000008 72251877Speter#define SSH2_FILEXFER_ATTR_EXTENDED 0x80000000 73251877Speter 74251877Speter/* portable open modes */ 75251877Speter#define SSH2_FXF_READ 0x00000001 76251877Speter#define SSH2_FXF_WRITE 0x00000002 77251877Speter#define SSH2_FXF_APPEND 0x00000004 78251877Speter#define SSH2_FXF_CREAT 0x00000008 79251877Speter#define SSH2_FXF_TRUNC 0x00000010 80251877Speter#define SSH2_FXF_EXCL 0x00000020 81251877Speter 82251877Speter/* status messages */ 83251877Speter#define SSH2_FX_OK 0 84251877Speter#define SSH2_FX_EOF 1 85251877Speter#define SSH2_FX_NO_SUCH_FILE 2 86251877Speter#define SSH2_FX_PERMISSION_DENIED 3 87251877Speter#define SSH2_FX_FAILURE 4 88251877Speter#define SSH2_FX_BAD_MESSAGE 5 89251877Speter#define SSH2_FX_NO_CONNECTION 6 90251877Speter#define SSH2_FX_CONNECTION_LOST 7 91251877Speter#define SSH2_FX_OP_UNSUPPORTED 8 92251877Speter#define SSH2_FX_MAX 8 93251877Speter