1 /**************************************************************************** 2 ** ui.h extension file, included from the uic-generated form implementation. 3 ** 4 ** If you want to add, delete, or rename functions or slots, use 5 ** Qt Designer to update this file, preserving your code. 6 ** 7 ** You should not define a constructor or destructor in this file. 8 ** Instead, write your code in functions called init() and destroy(). 9 ** These will automatically be called by the form's constructor and 10 ** destructor. 11 *****************************************************************************/ 12 13 #include <stdlib.h> 14 15 int UserDataRequest::setParams(WpaGui *_wpagui, const char *reqMsg) 16 { 17 char *tmp, *pos, *pos2; 18 wpagui = _wpagui; 19 tmp = strdup(reqMsg); 20 if (tmp == NULL) 21 return -1; 22 pos = strchr(tmp, '-'); 23 if (pos == NULL) { 24 free(tmp); 25 return -1; 26 } 27 *pos++ = '\0'; 28 field = tmp; 29 pos2 = strchr(pos, ':'); 30 if (pos2 == NULL) { 31 free(tmp); 32 return -1; 33 } 34 *pos2++ = '\0'; 35 36 networkid = atoi(pos); 37 queryInfo->setText(pos2); 38 if (strcmp(tmp, "PASSWORD") == 0) { 39 queryField->setText("Password: "); 40 queryEdit->setEchoMode(QLineEdit::Password); 41 } else if (strcmp(tmp, "NEW_PASSWORD") == 0) { 42 queryField->setText("New password: "); 43 queryEdit->setEchoMode(QLineEdit::Password); 44 } else if (strcmp(tmp, "IDENTITY") == 0) 45 queryField->setText("Identity: "); 46 else if (strcmp(tmp, "PASSPHRASE") == 0) { 47 queryField->setText("Private key passphrase: "); 48 queryEdit->setEchoMode(QLineEdit::Password); 49 } else 50 queryField->setText(field + ":"); 51 free(tmp); 52 53 return 0; 54 } 55 56 57 void UserDataRequest::sendReply() 58 { 59 char reply[10]; 60 size_t reply_len = sizeof(reply); 61 62 if (wpagui == NULL) { 63 reject(); 64 return; 65 } 66 67 QString cmd = QString(WPA_CTRL_RSP) + field + '-' + 68 QString::number(networkid) + ':' + 69 queryEdit->text(); 70 wpagui->ctrlRequest(cmd.ascii(), reply, &reply_len); 71 accept(); 72 } 73