makeNewGuy(void) /* Make the dude with name tempname and password password1. Move to state * ST_DONE. */ { char *s; if (strcmp(password1, password2) != 0) { if (!autolog) { s = "Passwords do not match"; W_WriteText(w, 100, 130, textColor, s, strlen(s), W_BoldFont); (void) W_EventsPending(); sleep(3); W_ClearWindow(w); } else noautologin(); *tempname = 0; state = ST_GETNAME; return; } /* same routine! */ checkpassword(); }
int main(){ char s[100]; int a,i=1; while(i){ printf("1.Press 1 to check integer\n2.Press 2 to check mobile number\n"); printf("3.Press 3 to check 12 digit account number\n4.Press 4 to check password with at least 1 integer,1 upper,1 lower and 1 special\n"); printf("5.Press 5 to check date as dd/mm/yyyy\n6.Press 6 to exit\n"); scanf("%d",&a); if(a<=6 && a>=1){ switch(a){ case 1: printf("Enter Integer\n"); scanf("%s",s); checkinteger(s); break; case 2: printf("Enter Mobile number\n"); scanf("%s",s); checkmobileno(s); break; case 3: printf("Enter Account number "); scanf("%s",s); checkaccountno(s); break; case 4: printf("Enter Password\n"); scanf("%s",s); checkpassword(s); break; case 5: printf("Enter Date\n"); scanf("%s",s); checkdate(s); break; case 6: printf("Thank you for using the program\n"); i=0; } } else{ printf("Wrong input,Please try once more\n"); } } return 0; }
int main(int argc, char ** argv) { char buffer[1023]; puts("Enter password for authentication:"); fflush(stdout); fgets(buffer, 1023, stdin); sleep(2); if (checkpassword(buffer)) { puts("Congrats! You have entered correct password:"******"Sorry authentication failure : Incorrect password :"******"Please try again!"); } return 0; }
void threadmain(int argc, char *argv[]) { readfile("#c/user", user, sizeof user, 1); if((vgactl = open("/dev/vgactl", OWRITE)) < 0) vgactl = open("#v/vgactl", OWRITE); ARGBEGIN{ case 'd': debug++; break; default: usage(); }ARGEND if(argc != 0) usage(); doblank = 1; lockscreen(); checkpassword(); threadexitsall(nil); }
void loginproced(char ch, char *defname) { if (ch == 10) ch = 13; #ifdef CONTROL_KEY if ((ch == 4 || ch == ((char) ('d' + 96)) || ch == ((char) ('D' + 96))) && state == ST_GETNAME && *tempname == '\0') #else if (ch == 4 && state == ST_GETNAME && *tempname == '\0') #endif { #ifdef AUTOKEY if (autoKey) W_AutoRepeatOn(); #endif terminate(0); } if (ch < 32 && ch != 21 && ch != 13 && ch != 8) return; switch (state) { case ST_GETNAME: if (ch == 13) { if (*tempname == '\0') { STRNCPY(tempname, defname, sizeof(tempname)); } loaddude(); displayStartup(defname); } else { adjustString(ch, tempname, defname); } break; case ST_GETPASS: if (ch == 13) { checkpassword(); displayStartup(defname); } else { adjustString(ch, password1, defname); } break; case ST_MAKEPASS1: if (ch == 13) { state = ST_MAKEPASS2; displayStartup(defname); } else { adjustString(ch, password1, defname); } break; case ST_MAKEPASS2: if (ch == 13) { makeNewGuy(); displayStartup(defname); } else { adjustString(ch, password2, defname); } break; } return; }
int csa_donewpw(void *source, int cargc, char **cargv) { reguser *rup; nick *sender=source; unsigned int same=0; time_t t; int pq; if (cargc<3) { chanservstdmessage(sender, QM_NOTENOUGHPARAMS, "newpass"); return CMD_ERROR; } if (!(rup=getreguserfromnick(sender))) return CMD_ERROR; if (!checkpassword(rup, cargv[0])) { chanservstdmessage(sender, QM_AUTHFAIL); cs_log(sender,"NEWPASS FAIL username %s bad password %s",rup->username,cargv[0]); return CMD_ERROR; } if (strcmp(cargv[1],cargv[2])) { chanservstdmessage(sender, QM_PWDONTMATCH); /* Sorry, passwords do not match */ cs_log(sender,"NEWPASS FAIL username %s new passwords don't match (%s vs %s)",rup->username,cargv[1],cargv[2]); return CMD_ERROR; } if (!strcmp(cargv[0],cargv[1])) { /* If they are the same then continue anyway but don't send the hook later. */ same=1; } pq = csa_checkpasswordquality(cargv[1]); if(pq == QM_PWTOSHORT) { chanservstdmessage(sender, QM_PWTOSHORT); /* new password too short */ cs_log(sender,"NEWPASS FAIL username %s password too short %s (%zu characters)",rup->username,cargv[1],strlen(cargv[1])); return CMD_ERROR; } else if(pq == QM_PWTOWEAK) { chanservstdmessage(sender, QM_PWTOWEAK); /* new password is weak */ cs_log(sender,"NEWPASS FAIL username %s password too weak %s",rup->username,cargv[1]); return CMD_ERROR; } else if(pq == QM_PWTOLONG) { chanservstdmessage(sender, QM_PWTOLONG); /* new password too long */ cs_log(sender,"NEWPASS FAIL username %s password too long %s",rup->username,cargv[1]); return CMD_ERROR; } else if(pq == QM_PWINVALID) { chanservstdmessage(sender, QM_PWINVALID); cs_log(sender,"NEWPASS FAIL username %s password invalid %s",rup->username,cargv[1]); return CMD_ERROR; } else if(pq == -1) { /* all good */ } else { chanservsendmessage(sender, "unknown error in newpass.c... contact #help"); return CMD_ERROR; } t=time(NULL); if(!UHasStaffPriv(rup)) { if(rup->lockuntil && rup->lockuntil > t) { chanservstdmessage(sender, QM_ACCOUNTLOCKED, rup->lockuntil); return CMD_ERROR; } rup->lockuntil=t+7*24*3600; } else { rup->lockuntil=0; } if(rup->lastemail) { freesstring(rup->lastemail); rup->lastemail=NULL; } rup->lastpasschange=t; csdb_accounthistory_insert(sender, rup->password, cargv[1], NULL, NULL); setpassword(rup, cargv[1]); rup->lastauth=time(NULL); chanservstdmessage(sender, QM_PWCHANGED); cs_log(sender,"NEWPASS OK username %s", rup->username); #ifdef AUTHGATE_WARNINGS if(UHasOperPriv(rup)) chanservsendmessage(sender, "WARNING FOR PRIVILEGED USERS: you MUST go to https://auth.quakenet.org and login successfully to update the cache, if you do not your old password will still be usable in certain circumstances."); #endif csdb_updateuser(rup); csdb_createmail(rup, QMAIL_NEWPW); if (!same) triggerhook(HOOK_CHANSERV_PWCHANGE, sender); return CMD_OK; }