home *** CD-ROM | disk | FTP | other *** search
/ Network Support Encyclopedia 96-1 / novell-nsepro-1996-1-cd2.iso / download / netware / cnninf.exe / CONINFO.C < prev    next >
Text File  |  1995-06-02  |  5KB  |  154 lines

  1. /****************************************************************************
  2. **      DISCLAIMER  
  3. **  
  4. **   Novell, Inc. makes no representations or warranties with respect to
  5. **   any NetWare software, and specifically disclaims any express or
  6. **   implied warranties of merchantability, title, or fitness for a
  7. **   particular purpose.  
  8. **
  9. **   Distribution of any NetWare software is forbidden without the
  10. **   express written consent of Novell, Inc.  Further, Novell reserves
  11. **   the right to discontinue distribution of any NetWare software.
  12. **   
  13. **   Novell is not responsible for lost profits or revenue, loss of use
  14. **   of the software, loss of data, costs of re-creating lost data, the
  15. **   cost of any substitute equipment or program, or claims by any party
  16. **   other than you.  Novell strongly recommends a backup be made before
  17. **   any software is installed.   Technical support for this software
  18. **   may be provided at the discretion of Novell.
  19. ****************************************************************************
  20. **
  21. **   File:   CONINFO.C   
  22. **
  23. **   Desc:   This program will get the connection information i.e. 
  24. **                  User name,
  25. **                  objectType,       
  26. **                  objectID,         
  27. **                  date and time of login to the server.
  28. **
  29. **
  30. **
  31. **   Parameter descriptions:    > input
  32. **                              < output
  33. **
  34. **        
  35. **   Programmers:
  36. **   Ini   Who                Firm
  37. **   ------------------------------------------------------------------
  38. **   ARM   A. Ray Maxwell     Novell Developer Support.
  39. **
  40. **   History:
  41. **       
  42. **   ------------------------------------------------------------------
  43. **   08-08-94   ARM   First code.
  44. */
  45.  
  46. /***************************************************************************
  47. **   Include headers, macros, function prototypes, etc.
  48. */
  49.  
  50.    /*------------------------------------------------------------------
  51.    **   ANSI
  52.    */
  53.    #include <stdlib.h>      /* exit(), atol()        */
  54.    #include <stdio.h>       /* sprintf()             */
  55.    #include <string.h>      /* strcpy() strcmp()     */
  56.    #include <conio.h>       /* clrscr()              */
  57.    #include <ctype.h>       /* toupper()             */
  58.    
  59.    /*------------------------------------------------------------------
  60.    **   NetWare
  61.    */
  62.    #include <nwcalls.h>
  63.  
  64.    /*------------------------------------------------------------------
  65.    **   Defines
  66.    */
  67.    #define NWDOS
  68.  
  69.  
  70. void main(int argc, char *argv[ ])
  71. {
  72.  
  73.    typedef struct{
  74.                   BYTE year;
  75.                   BYTE month;
  76.                   BYTE day;
  77.                   BYTE hour;
  78.                   BYTE minute;
  79.                   BYTE second;
  80.                   BYTE dayOfWeek;
  81.                   }TIMEDATE;
  82.  
  83.    TIMEDATE           datebytes;
  84.    int i;
  85.    NWCONN_HANDLE  connHandle;
  86.    NWCONN_NUM     connNumber;
  87.    CONNECT_INFO   connInfo;
  88.    NWCCODE        ccode;
  89.    char           server[50],
  90.                   userName[50],
  91.                   name[50];
  92.    NWOBJ_TYPE     objectType;
  93.    NWOBJ_ID       objectID;
  94.    BYTE           loginTime;
  95.  
  96.    if(argc != 2) {
  97.       printf("Usage: CONINFO <servername> \n");
  98.       exit(1);
  99.    }
  100.  
  101.    strcpy(server,  strupr(argv[1]));
  102.  
  103.    ccode = NWCallsInit(NULL, NULL);
  104.  
  105.    if(ccode){
  106.       printf("ERROR: NWCallsInit failed %X\n",ccode);
  107.       exit(1);
  108.    }
  109.  
  110.    ccode = NWGetConnectionHandle(
  111.            /* > servername        */ server,
  112.            /*   Novell Reserved1  */ 0,
  113.            /* < connection Handle */ &connHandle,
  114.            /*   Novell Reserved2  */ NULL);
  115.  
  116.    if(ccode){
  117.       printf("ERROR: NWGetConnectionHandle failed %X\n",ccode);
  118.       exit(1);
  119.    }
  120.  
  121.    ccode = NWGetConnectionNumber(
  122.            /* > connection Handle  */ connHandle,
  123.            /* < connection Number  */ &connNumber);
  124.  
  125.    if(ccode){
  126.       printf("ERROR: NWGetConnectionNumber failed %X\n",ccode);
  127.       exit(1);
  128.    }
  129.  
  130.    ccode = NWGetConnectionInformation(
  131.            /* > connection Handle       */ connHandle,
  132.            /* > connection number       */ connNumber,
  133.            /* < pointer to name         */ name,
  134.            /* < pointer to object type  */ &objectType,          //optional
  135.            /* < pointer to object ID    */ &objectID,            //optional
  136.            /* < pointer to time value   */ (BYTE*) &datebytes);  //optional
  137.    if(ccode){
  138.       printf("ERROR: NWGetConnectionInformation failed %X\n",ccode);
  139.       exit(1);
  140.    }
  141.  
  142.    printf("ServerName %s\nUserName %s\nconnNumber %d\n",server,name,
  143.          connNumber);
  144.    printf("ObjectType %X\nobjectID %X\n",objectType,objectID);
  145.    printf("Login date and time->  %2d/%2d/%2d   %2d:%2d:%2d\n",
  146.          datebytes.month,
  147.          datebytes.day,
  148.          datebytes.year,
  149.          datebytes.hour,
  150.          datebytes.minute,
  151.          datebytes.second);
  152.  
  153. }
  154.