Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | The pop3d command allows the username to contain an extra @domain suffix. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
86b0a3d3f3492648f0c08b3cdb3060c6 |
User & Date: | drh 2018-07-18 20:32:43.130 |
Context
2018-07-19
| ||
02:37 | Fix the backoffice delay so that it extends the deadline for the follow-on process if the current process runs overtime. This prevents multiple follow-ons. ... (check-in: 5542cd43 user: drh tags: trunk) | |
2018-07-18
| ||
20:32 | The pop3d command allows the username to contain an extra @domain suffix. ... (check-in: 86b0a3d3 user: drh tags: trunk) | |
19:22 | Use the new SQLITE_FCNTL_DATA_VERSION interface in SQLite to limit running the backoffice processing to case when the repository file changes. ... (check-in: 752ea432 user: drh tags: trunk) | |
Changes
Changes to src/smtp.c.
︙ | ︙ | |||
1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 | va_start(ap, zFormat); sqlite3_vsnprintf(sizeof(zLine),zLine,zFormat,ap); va_end(ap); printf("%s\r\n", zLine); fflush(stdout); if( pLog ) fprintf(pLog, "S: %s\n", zLine); } /* ** COMMAND: pop3d ** ** Usage: %fossil pop3d [OPTIONS] REPOSITORY ** ** Begin a POP3 conversation with a client using stdin/stdout using | > > > > > > > > > > > > > > > > > > > > > > | 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 | va_start(ap, zFormat); sqlite3_vsnprintf(sizeof(zLine),zLine,zFormat,ap); va_end(ap); printf("%s\r\n", zLine); fflush(stdout); if( pLog ) fprintf(pLog, "S: %s\n", zLine); } /* ** Try to log in for zUser and zPass. ** ** If zUser/zPass does not work as written, then modify zUser by ** omitting everything after the "@" (if there is one) and trying ** again. */ static int pop3_login(char *zUser, char *zPass){ int uid; int i; uid = login_search_uid(zUser, zPass); if( uid ) return 1; for(i=0; zUser[i] && zUser[i]!='@'; i++){} if( zUser[i]=='@' ){ zUser[i] = 0; uid = login_search_uid(zUser, zPass); if( uid ) return 1; zUser[i] = '@'; } return 0; } /* ** COMMAND: pop3d ** ** Usage: %fossil pop3d [OPTIONS] REPOSITORY ** ** Begin a POP3 conversation with a client using stdin/stdout using |
︙ | ︙ | |||
1425 1426 1427 1428 1429 1430 1431 | if( strcmp(zCmd,"user")==0 ){ if( zA1==0 || zA2!=0 ) goto cmd_error; sqlite3_snprintf(sizeof(zUser),zUser,"%s",zA1); goto cmd_ok; } if( strcmp(zCmd,"pass")==0 ){ if( zA1==0 || zA2!=0 ) goto cmd_error; | | | 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 | if( strcmp(zCmd,"user")==0 ){ if( zA1==0 || zA2!=0 ) goto cmd_error; sqlite3_snprintf(sizeof(zUser),zUser,"%s",zA1); goto cmd_ok; } if( strcmp(zCmd,"pass")==0 ){ if( zA1==0 || zA2!=0 ) goto cmd_error; if( pop3_login(zUser,zA1)==0 ){ goto cmd_error; }else{ inAuth = 0; db_multi_exec( "CREATE TEMP TABLE pop3(" " id INTEGER PRIMARY KEY," " emailid INT," |
︙ | ︙ |