Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Fix the "fossil chat send" command so that it sends the lmtime query parameter so that the chat display shows an appropriate local time. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
62d67ed9a52e0fbffae5847ed923ce43 |
| User & Date: | drh 2021-01-05 02:13:56.765 |
Context
|
2021-01-05
| ||
| 02:25 | If the "fossil chat send" command fails, show an error message. ... (check-in: e514bb5b83 user: drh tags: trunk) | |
| 02:13 | Fix the "fossil chat send" command so that it sends the lmtime query parameter so that the chat display shows an appropriate local time. ... (check-in: 62d67ed9a5 user: drh tags: trunk) | |
| 02:05 | In the "fossil chat send" command, detect extra arguments and throw an error if they are seen. ... (check-in: 1814f528de user: drh tags: trunk) | |
Changes
Changes to src/chat.c.
| ︙ | ︙ | |||
755 756 757 758 759 760 761 762 763 764 765 766 767 768 |
}else if( strcmp(g.argv[2],"send")==0 ){
const char *zFilename = find_option("file","r",1);
const char *zMsg = find_option("message","m",1);
int allowUnsafe = find_option("unsafe",0,0)!=0;
const int mFlags = HTTP_GENERIC | HTTP_QUIET | HTTP_NOCOMPRESS;
int i;
const char *zPw;
Blob up, down, fcontent;
char zBoundary[80];
sqlite3_uint64 r[3];
if( zFilename==0 && zMsg==0 ){
fossil_fatal("must have --message or --file or both");
}
if( !g.url.isHttps && !allowUnsafe ){
| > | 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 |
}else if( strcmp(g.argv[2],"send")==0 ){
const char *zFilename = find_option("file","r",1);
const char *zMsg = find_option("message","m",1);
int allowUnsafe = find_option("unsafe",0,0)!=0;
const int mFlags = HTTP_GENERIC | HTTP_QUIET | HTTP_NOCOMPRESS;
int i;
const char *zPw;
char *zLMTime;
Blob up, down, fcontent;
char zBoundary[80];
sqlite3_uint64 r[3];
if( zFilename==0 && zMsg==0 ){
fossil_fatal("must have --message or --file or both");
}
if( !g.url.isHttps && !allowUnsafe ){
|
| ︙ | ︙ | |||
777 778 779 780 781 782 783 784 785 786 787 788 789 790 |
g.url.path = mprintf("%.*s/chat-send", i, g.url.path);
blob_init(&up, 0, 0);
blob_init(&down, 0, 0);
sqlite3_randomness(sizeof(r),r);
sqlite3_snprintf(sizeof(zBoundary),zBoundary,
"--------%016llu%016llu%016llu", r[0], r[1], r[2]);
blob_appendf(&up, "%s", zBoundary);
if( g.url.user && g.url.user[0] ){
blob_appendf(&up,"\r\nContent-Disposition: form-data; name=\"resid\"\r\n"
"\r\n%z\r\n%s", obscure(g.url.user), zBoundary);
}
zPw = g.url.passwd;
if( zPw==0 && isDefaultUrl ) zPw = unobscure(db_get("last-sync-pw", 0));
if( zPw && zPw[0] ){
| > > > > > > | 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 |
g.url.path = mprintf("%.*s/chat-send", i, g.url.path);
blob_init(&up, 0, 0);
blob_init(&down, 0, 0);
sqlite3_randomness(sizeof(r),r);
sqlite3_snprintf(sizeof(zBoundary),zBoundary,
"--------%016llu%016llu%016llu", r[0], r[1], r[2]);
blob_appendf(&up, "%s", zBoundary);
zLMTime = db_text(0,
"SELECT strftime('%%Y-%%m-%%dT%%H:%%M:%%S','now','localtime')");
if( zLMTime ){
blob_appendf(&up,"\r\nContent-Disposition: form-data; name=\"lmtime\"\r\n"
"\r\n%z\r\n%s", zLMTime, zBoundary);
}
if( g.url.user && g.url.user[0] ){
blob_appendf(&up,"\r\nContent-Disposition: form-data; name=\"resid\"\r\n"
"\r\n%z\r\n%s", obscure(g.url.user), zBoundary);
}
zPw = g.url.passwd;
if( zPw==0 && isDefaultUrl ) zPw = unobscure(db_get("last-sync-pw", 0));
if( zPw && zPw[0] ){
|
| ︙ | ︙ |