Fossil

Check-in [ba8af8731f]
Login

Check-in [ba8af8731f]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Sync server responds to reqconfig cards. Allow cloning of repositories that contain tickets.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: ba8af8731f5f2493582d3416dcd42c941eadc8fe
User & Date: drh 2008-05-18 17:29:22.000
Context
2008-05-18
17:33
Remove the "Dangling" column from the sync status display. ... (check-in: 64c58fd64f user: drh tags: trunk)
17:29
Sync server responds to reqconfig cards. Allow cloning of repositories that contain tickets. ... (check-in: ba8af8731f user: drh tags: trunk)
17:18
Improvements to clone performance. Skip cross-linking during the clone the automatically rebuild after the clone. Fixes to rebuild to make sure all artifacts are crosslinked. ... (check-in: 791a513c28 user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/tkt.c.
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198

  getAllTicketFields();
  if( createFlag ){  
    db_multi_exec("INSERT OR IGNORE INTO ticket(tkt_uuid, tkt_mtime) "
                  "VALUES(%Q, 0)", p->zTicketUuid);
  }
  blob_zero(&sql);
  blob_appendf(&sql, "UPDATE ticket SET tkt_mtime=:mtime");
  zSep = "SET";
  for(i=0; i<p->nField; i++){
    const char *zName = p->aField[i].zName;
    if( zName[0]=='+' ){
      zName++;
      if( fieldId(zName)<0 ) continue;
      blob_appendf(&sql,", %s=%s || %Q", zName, zName, p->aField[i].zValue);







|







184
185
186
187
188
189
190
191
192
193
194
195
196
197
198

  getAllTicketFields();
  if( createFlag ){  
    db_multi_exec("INSERT OR IGNORE INTO ticket(tkt_uuid, tkt_mtime) "
                  "VALUES(%Q, 0)", p->zTicketUuid);
  }
  blob_zero(&sql);
  blob_appendf(&sql, "UPDATE OR REPLACE ticket SET tkt_mtime=:mtime");
  zSep = "SET";
  for(i=0; i<p->nField; i++){
    const char *zName = p->aField[i].zName;
    if( zName[0]=='+' ){
      zName++;
      if( fieldId(zName)<0 ) continue;
      blob_appendf(&sql,", %s=%s || %Q", zName, zName, p->aField[i].zValue);
Changes to src/xfer.c.
676
677
678
679
680
681
682




683


684
685






686
687
688
689
690
691
692
    /*    reqconfig  NAME
    **
    ** Request a configuration value
    */
    if( blob_eq(&xfer.aToken[0], "reqconfig")
     && xfer.nToken==2
    ){




      /* TBD: Get the configuration name */


      /* Check to insure the configuration transfer is authorized */
      /* Construct the "config" message */






    }else
    
    /*    cookie TEXT
    **
    ** A cookie contains a arbitrary-length argument that is server-defined.
    ** The argument must be encoded so as not to contain any whitespace.
    ** The server can optionally send a cookie to the client.  The client







>
>
>
>
|
>
>
|
|
>
>
>
>
>
>







676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
    /*    reqconfig  NAME
    **
    ** Request a configuration value
    */
    if( blob_eq(&xfer.aToken[0], "reqconfig")
     && xfer.nToken==2
    ){
      if( g.okRead ){
        char *zName = blob_str(&xfer.aToken[1]);
        int i;
        for(i=0; i<count(aSafeConfig); i++){
          if( strcmp(aSafeConfig[i].zName, zName)==0 ){
            char *zValue = db_get(zName, 0);
            if( zValue ){
              blob_appendf(xfer.pOut, "config %s %d\n%s\n", zName, 
                           strlen(zValue), zValue);
              free(zValue);
            }
            break;
          }
        }
      }
    }else
    
    /*    cookie TEXT
    **
    ** A cookie contains a arbitrary-length argument that is server-defined.
    ** The argument must be encoded so as not to contain any whitespace.
    ** The server can optionally send a cookie to the client.  The client