struct smb_fid *fidsp; /* the first child in the open file list */
struct smb_user *justLoggedOut; /* ready for profile upload? */
unsigned long logoffTime; /* tick count when logged off */
- struct cm_user *logonDLLUser; /* integrated logon user */
+ /*struct cm_user *logonDLLUser; /* integrated logon user */
unsigned char errorCount;
+ char rname[17];
+ int lana;
} smb_vc_t;
/* have we negotiated ... */
osi_mutex_t mx;
long userID; /* the session identifier */
struct smb_vc *vcp; /* back ptr to virtual circuit */
- struct cm_user *userp; /* CM user structure */
- char *name; /* user name */
+ struct smb_username *unp; /* user name struct */
} smb_user_t;
+typedef struct smb_username {
+ struct smb_username *nextp; /* next sibling */
+ long refCount; /* ref count */
+ long flags; /* flags; locked by mx */
+ osi_mutex_t mx;
+ struct cm_user *userp; /* CM user structure */
+ char *name; /* user name */
+ char *machine; /* machine name */
+} smb_username_t;
+
#define SMB_USERFLAG_DELETE 1 /* delete struct when ref count zero */
/* one per tree-connect */
/* flags */
long flags;
+
+ /* fid pointer */
+ struct smb_fid *fidp;
} smb_ioctl_t;
/* flags for smb_ioctl_t */
osi_queue_t q;
char *dptr; /* ptr to attr, time, data, sizel, sizeh */
cm_fid_t fid;
+ cm_dirEntry_t *dep; /* temp */
} smb_dirListPatch_t;
/* waiting lock list elements */
extern void smb_UnixTimeFromDosUTime(long *unixTimep, long dosUTime);
-extern smb_vc_t *smb_FindVC(unsigned short lsn, int flags);
+extern smb_vc_t *smb_FindVC(unsigned short lsn, int flags, int lana);\r
extern void smb_ReleaseVC(smb_vc_t *vcp);
#include "smb3.h"
#include "smb_ioctl.h"
#include "smb_iocons.h"
+\r
+cm_user_t *smb_FindOrCreateUser(smb_vc_t *vcp, char *usern);\r
#endif /* whole file */