return false;
}
-/****************************************************************************
- Perform a NetWkstaUserLogon.
-****************************************************************************/
-
-bool cli_NetWkstaUserLogon(struct cli_state *cli,char *user, char *workstation)
-{
- char *rparam = NULL;
- char *rdata = NULL;
- char *p;
- unsigned int rdrcnt,rprcnt;
- char param[1024];
-
- memset(param, 0, sizeof(param));
-
- /* send a SMBtrans command with api NetWkstaUserLogon */
- p = param;
- SSVAL(p,0,132); /* api number */
- p += 2;
- strlcpy(p,"OOWb54WrLh",sizeof(param)-PTR_DIFF(p,param));
- p = skip_string(param,sizeof(param),p);
- strlcpy(p,"WB21BWDWWDDDDDDDzzzD",sizeof(param)-PTR_DIFF(p,param));
- p = skip_string(param,sizeof(param),p);
- SSVAL(p,0,1);
- p += 2;
- strlcpy(p,user,sizeof(param)-PTR_DIFF(p,param));
- if (!strupper_m(p)) {
- return false;
- }
- p += 21;
- p++;
- p += 15;
- p++;
- strlcpy(p, workstation,sizeof(param)-PTR_DIFF(p,param));
- if (!strupper_m(p)) {
- return false;
- }
- p += 16;
- SSVAL(p, 0, CLI_BUFFER_SIZE);
- p += 2;
- SSVAL(p, 0, CLI_BUFFER_SIZE);
- p += 2;
-
- if (cli_api(cli,
- param, PTR_DIFF(p,param),1024, /* param, length, max */
- NULL, 0, CLI_BUFFER_SIZE, /* data, length, max */
- &rparam, &rprcnt, /* return params, return size */
- &rdata, &rdrcnt /* return data, return size */
- )) {
- cli->rap_error = rparam? SVAL(rparam,0) : -1;
-
- if (cli->rap_error == 0) {
- DEBUG(4,("NetWkstaUserLogon success\n"));
- /*
- * The cli->privileges = SVAL(p, 24); field was set here
- * but it was not use anywhere else.
- */
- /* The cli->eff_name field used to be set here
- but it wasn't used anywhere else. */
- } else {
- DEBUG(1,("NetwkstaUserLogon gave error %d\n", cli->rap_error));
- }
- }
-
- SAFE_FREE(rparam);
- SAFE_FREE(rdata);
- return (cli->rap_error == 0);
-}
-
/****************************************************************************
Call a NetShareEnum - try and browse available connections on a host.
****************************************************************************/
char *data, int drcnt, int mdrcnt,
char **rparam, unsigned int *rprcnt,
char **rdata, unsigned int *rdrcnt);
-bool cli_NetWkstaUserLogon(struct cli_state *cli,char *user, char *workstation);
int cli_RNetShareEnum(struct cli_state *cli, void (*fn)(const char *, uint32_t, const char *, void *), void *state);
bool cli_NetServerEnum(struct cli_state *cli, char *workgroup, uint32_t stype,
void (*fn)(const char *, uint32_t, const char *, void *),