Develop and Download Open Source Software

Browse Subversion Repository

Diff of /trunk/ttssh2/ttxssh/ed25519_ge25519.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

branches/ssh_ed25519/ttssh2/ttxssh/sftp.h revision 5495 by yutakapon, Sun Mar 2 15:17:04 2014 UTC branches/ssh_ed25519/ttssh2/ttxssh/ed25519_ge25519.h revision 5496 by yutakapon, Mon Mar 3 06:59:21 2014 UTC
# Line 1  Line 1 
1  /*  /*
2  Copyright (c) 2008-2012 TeraTerm Project  Copyright (c) 2004-2014 TeraTerm Project
3  All rights reserved.  All rights reserved.
4    
5  Redistribution and use in source and binary forms, with or without modification,  Redistribution and use in source and binary forms, with or without modification,
# Line 24  ARISING IN ANY WAY OUT OF THE USE OF THI Line 24  ARISING IN ANY WAY OUT OF THE USE OF THI
24  OF SUCH DAMAGE.  OF SUCH DAMAGE.
25  */  */
26    
27  #ifndef __SFTP_H  #ifndef __ED25519_GE25519_H
28  #define __SFTP_H  #define __ED25519_GE25519_H
29    
30  // for debug mode  #include "ed25519_fe25519.h"
31  #ifdef _DEBUG  #include "ed25519_sc25519.h"
32  #define SFTP_DEBUG  
33  #endif  #define ge25519                           crypto_sign_ed25519_ref_ge25519
34    #define ge25519_base                      crypto_sign_ed25519_ref_ge25519_base
35    #define ge25519_unpackneg_vartime         crypto_sign_ed25519_ref_unpackneg_vartime
36    #define ge25519_pack                      crypto_sign_ed25519_ref_pack
37    #define ge25519_isneutral_vartime         crypto_sign_ed25519_ref_isneutral_vartime
38    #define ge25519_double_scalarmult_vartime crypto_sign_ed25519_ref_double_scalarmult_vartime
39    #define ge25519_scalarmult_base           crypto_sign_ed25519_ref_scalarmult_base
40    
41    typedef struct
42    {
43      fe25519 x;
44      fe25519 y;
45      fe25519 z;
46      fe25519 t;
47    } ge25519;
48    
49    const ge25519 ge25519_base;
50    
51  /* version */  int ge25519_unpackneg_vartime(ge25519 *r, const unsigned char p[32]);
 #define SSH2_FILEXFER_VERSION           3  
52    
53  /* client to server */  void ge25519_pack(unsigned char r[32], const ge25519 *p);
 #define SSH2_FXP_INIT                   1  
 #define SSH2_FXP_OPEN                   3  
 #define SSH2_FXP_CLOSE                  4  
 #define SSH2_FXP_READ                   5  
 #define SSH2_FXP_WRITE                  6  
 #define SSH2_FXP_LSTAT                  7  
 #define SSH2_FXP_STAT_VERSION_0         7  
 #define SSH2_FXP_FSTAT                  8  
 #define SSH2_FXP_SETSTAT                9  
 #define SSH2_FXP_FSETSTAT               10  
 #define SSH2_FXP_OPENDIR                11  
 #define SSH2_FXP_READDIR                12  
 #define SSH2_FXP_REMOVE                 13  
 #define SSH2_FXP_MKDIR                  14  
 #define SSH2_FXP_RMDIR                  15  
 #define SSH2_FXP_REALPATH               16  
 #define SSH2_FXP_STAT                   17  
 #define SSH2_FXP_RENAME                 18  
 #define SSH2_FXP_READLINK               19  
 #define SSH2_FXP_SYMLINK                20  
   
 /* server to client */  
 #define SSH2_FXP_VERSION                2  
 #define SSH2_FXP_STATUS                 101  
 #define SSH2_FXP_HANDLE                 102  
 #define SSH2_FXP_DATA                   103  
 #define SSH2_FXP_NAME                   104  
 #define SSH2_FXP_ATTRS                  105  
   
 #define SSH2_FXP_EXTENDED               200  
 #define SSH2_FXP_EXTENDED_REPLY         201  
   
 /* attributes */  
 #define SSH2_FILEXFER_ATTR_SIZE         0x00000001  
 #define SSH2_FILEXFER_ATTR_UIDGID       0x00000002  
 #define SSH2_FILEXFER_ATTR_PERMISSIONS  0x00000004  
 #define SSH2_FILEXFER_ATTR_ACMODTIME    0x00000008  
 #define SSH2_FILEXFER_ATTR_EXTENDED     0x80000000  
   
 /* portable open modes */  
 #define SSH2_FXF_READ                   0x00000001  
 #define SSH2_FXF_WRITE                  0x00000002  
 #define SSH2_FXF_APPEND                 0x00000004  
 #define SSH2_FXF_CREAT                  0x00000008  
 #define SSH2_FXF_TRUNC                  0x00000010  
 #define SSH2_FXF_EXCL                   0x00000020  
   
 /* statvfs@openssh.com f_flag flags */  
 #define SSH2_FXE_STATVFS_ST_RDONLY      0x00000001  
 #define SSH2_FXE_STATVFS_ST_NOSUID      0x00000002  
   
 /* status messages */  
 #define SSH2_FX_OK                      0  
 #define SSH2_FX_EOF                     1  
 #define SSH2_FX_NO_SUCH_FILE            2  
 #define SSH2_FX_PERMISSION_DENIED       3  
 #define SSH2_FX_FAILURE                 4  
 #define SSH2_FX_BAD_MESSAGE             5  
 #define SSH2_FX_NO_CONNECTION           6  
 #define SSH2_FX_CONNECTION_LOST         7  
 #define SSH2_FX_OP_UNSUPPORTED          8  
 #define SSH2_FX_MAX                     8  
54    
55  /* Maximum packet that we are willing to send/accept */  int ge25519_isneutral_vartime(const ge25519 *p);
 #define SFTP_MAX_MSG_LENGTH     (256 * 1024)  
56    
57  #define DEFAULT_COPY_BUFLEN 32768   /* Size of buffer for up/download */  void ge25519_double_scalarmult_vartime(ge25519 *r, const ge25519 *p1, const sc25519 *s1, const ge25519 *p2, const sc25519 *s2);
 #define DEFAULT_NUM_REQUESTS    64  /* # concurrent outstanding requests */  
58    
59  void sftp_do_init(PTInstVar pvar, Channel_t *c);  void ge25519_scalarmult_base(ge25519 *r, const sc25519 *s);
 void sftp_response(PTInstVar pvar, Channel_t *c, unsigned char *data, unsigned int buflen);  
60    
61  #endif  #endif

Legend:
Removed from v.5495  
changed lines
  Added in v.5496

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26