home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 2 / amigaformatcd02.iso / comms / netsoftware / nethandler.lha / NetHandler / server / file.c < prev    next >
Encoding:
C/C++ Source or Header  |  1989-09-16  |  2.8 KB  |  104 lines

  1. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  2. /* |_o_o|\\ Copyright (c) 1987, 1988 The Software Distillery.  All Rights  */
  3. /* |. o.| || Reserved.  This program may not be distributed without the    */
  4. /* | .  | || permission of the authors:                            BBS:    */
  5. /* | o  | ||   John Toebes     Doug Walker    Dave Baker                   */
  6. /* |  . |//                                                                */
  7. /* ======                                                                  */
  8. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  9. /* File Manipulation  */
  10. /*  ActDelete ActRename ActSetProtection ActSetComment */
  11. #include "server.h"
  12.  
  13. void RmtDelete(global, pkt)
  14. GLOBAL global;
  15. struct DosPacket *pkt;              /* a pointer to the dos packet sent   */
  16. /* Arg1: Lock    */
  17. /* Arg2: Name    */
  18. {
  19.    BUG(("RmtDelete, lock %lx\n", global->RP.Arg1));
  20.    BUGBSTR("File to delete is ", global->RP.Data);
  21.  
  22.    pkt->dp_Arg1 = global->RP.Arg1;
  23.    MBSTR(global->RP.Data, global->fib);
  24.    pkt->dp_Arg2 = (LONG)MKBADDR(global->fib);
  25.  
  26.    Dispatch(global);
  27.  
  28.    global->RP.DLen = 0;
  29. }
  30.  
  31. void RmtRename(global,pkt)
  32. GLOBAL global;
  33. struct DosPacket *pkt;
  34. /* Arg1: FromLock    */
  35. /* Arg2: FromName    */
  36. /* Arg3: ToLock        */
  37. /* Arg4: ToName        */
  38. {
  39.    char *name;
  40.    BUG(("RmtRename\n"));
  41.    BUGBSTR("Renaming ", global->RP.Data);
  42.    BUGBSTR("New Name ", global->RP.Data+FILENAMELEN);
  43.  
  44.    pkt->dp_Arg1 = global->RP.Arg1;
  45.    MBSTR(global->RP.Data, global->fib);
  46.    pkt->dp_Arg2 = (LONG)MKBADDR(global->fib);
  47.    pkt->dp_Arg3 = global->RP.Arg3;
  48.    name = ((char *)global->fib)+FILENAMELEN;
  49.    MBSTR(global->RP.Data+FILENAMELEN, name);
  50.    pkt->dp_Arg4 = (LONG)MKBADDR(name);
  51.  
  52.    Dispatch(global);
  53.  
  54.    global->RP.DLen = 0;
  55. }
  56.  
  57. void RmtSetProtection(global, pkt)
  58. GLOBAL global;
  59. struct DosPacket *pkt;
  60. /* Arg1: Unused */
  61. /* Arg2: Lock */
  62. /* Arg3: Name */
  63. /* Arg4: Mask of protection */
  64. {
  65.    BUG(("RmtSetProtection\n"));
  66.  
  67.    BUGBSTR("File to protect: ", global->RP.Data);
  68.  
  69.    pkt->dp_Arg2 = global->RP.Arg2;
  70.    MBSTR(global->RP.Data, global->fib);
  71.    pkt->dp_Arg3 = (LONG)MKBADDR(global->fib);
  72.    pkt->dp_Arg4 = global->RP.Arg4;
  73.  
  74.    Dispatch(global);
  75.  
  76.    global->RP.DLen = 0;
  77. }
  78.  
  79. void RmtSetComment(global,pkt)
  80. GLOBAL global;
  81. struct DosPacket *pkt;              /* a pointer to the dos packet sent       */
  82. /* Arg1: Unused */
  83. /* Arg2: Lock */
  84. /* Arg3: Name */
  85. /* Arg4: Comment */
  86. {
  87.    char *comment;
  88.    BUG(("RmtSetComment\n"));
  89.  
  90.    BUGBSTR("File to Comment: ", global->RP.Data);
  91.    BUGBSTR("New Comment Str: ", global->RP.Data+FILENAMELEN);
  92.  
  93.    pkt->dp_Arg2 = global->RP.Arg2;
  94.    MBSTR(global->RP.Data, global->fib);
  95.    pkt->dp_Arg3 = (LONG)MKBADDR(global->fib);
  96.    comment = ((char *)global->fib)+FILENAMELEN;
  97.    MBSTR(global->RP.Data+FILENAMELEN, comment);
  98.    pkt->dp_Arg4 = (LONG)MKBADDR(comment);
  99.  
  100.    Dispatch(global);
  101.  
  102.    global->RP.DLen = 0;
  103. }
  104.