Overview
| Comment: | Updated to keep track of the upstream OS name and CPU |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
ed608e7feee93a51afa9dda429ad50d2 |
| User & Date: | rkeene on 2014-09-09 08:19:24 |
| Other Links: | manifest | tags |
Context
|
2014-09-09
| ||
| 08:23 | Added a default time to psuedo entries check-in: ef5acff5c9 user: rkeene tags: trunk | |
| 08:19 | Updated to keep track of the upstream OS name and CPU check-in: ed608e7fee user: rkeene tags: trunk | |
| 08:12 | Corrected site index generation check-in: cd7064a3fe user: rkeene tags: trunk | |
Changes
Modified appfs.c from [9a50e0345b] to [4cd4495e1d].
| ︙ | ︙ | |||
54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
struct appfs_package {
struct appfs_package *_next;
int counter;
char name[256];
char version[64];
char sha1[41];
appfs_os_t os;
appfs_cpuArch_t cpuArch;
int isLatest;
};
struct appfs_site {
struct appfs_site *_next;
| > > | 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
struct appfs_package {
struct appfs_package *_next;
int counter;
char name[256];
char version[64];
char sha1[41];
char os_str[64];
char cpuArch_str[64];
appfs_os_t os;
appfs_cpuArch_t cpuArch;
int isLatest;
};
struct appfs_site {
struct appfs_site *_next;
|
| ︙ | ︙ | |||
381 382 383 384 385 386 387 388 389 390 391 392 393 394 |
obj = (void *) ckalloc(sizeof(*obj));
snprintf(obj->name, sizeof(obj->name), "%s", values[0]);
snprintf(obj->version, sizeof(obj->version), "%s", values[1]);
snprintf(obj->sha1, sizeof(obj->sha1), "%s", values[2]);
obj->os = appfs_convert_os_fromString(values[3]);
obj->cpuArch = appfs_convert_cpuArch_fromString(values[4]);
if (values[5][0] == '1') {
obj->isLatest = 1;
} else {
obj->isLatest = 0;
}
if (*head_p == NULL) {
| > > | 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 |
obj = (void *) ckalloc(sizeof(*obj));
snprintf(obj->name, sizeof(obj->name), "%s", values[0]);
snprintf(obj->version, sizeof(obj->version), "%s", values[1]);
snprintf(obj->sha1, sizeof(obj->sha1), "%s", values[2]);
obj->os = appfs_convert_os_fromString(values[3]);
obj->cpuArch = appfs_convert_cpuArch_fromString(values[4]);
snprintf(obj->os_str, sizeof(obj->os_str), "%s", values[3]);
snprintf(obj->cpuArch_str, sizeof(obj->cpuArch_str), "%s", values[4]);
if (values[5][0] == '1') {
obj->isLatest = 1;
} else {
obj->isLatest = 0;
}
if (*head_p == NULL) {
|
| ︙ | ︙ | |||
499 500 501 502 503 504 505 | char **retval = _retval; *retval = strdup(values[0]); return(0); } | | | | | 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 |
char **retval = _retval;
*retval = strdup(values[0]);
return(0);
}
static char *appfs_lookup_package_hash(const char *hostname, const char *package, const char *os, const char *cpuArch, const char *version) {
char *sql;
char *retval = NULL;
int sqlite_ret;
appfs_update_index(hostname);
sql = sqlite3_mprintf("SELECT sha1 FROM packages WHERE hostname = %Q AND package = %Q AND os = %Q AND cpuArch = %Q AND version = %Q;",
hostname,
package,
os,
cpuArch,
version
);
if (sql == NULL) {
APPFS_DEBUG("Call to sqlite3_mprintf failed.");
return(NULL);
}
|
| ︙ | ︙ | |||
747 748 749 750 751 752 753 |
}
os_cpuArch_count++;
if (children) {
node = (void *) ckalloc(sizeof(*node));
node->_next = *children;
| | | 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 |
}
os_cpuArch_count++;
if (children) {
node = (void *) ckalloc(sizeof(*node));
node->_next = *children;
snprintf(node->name, sizeof(node->name), "%s-%s", package->os_str, package->cpuArch_str);
*children = node;
}
}
appfs_free_list_package(packages);
free(path_s);
|
| ︙ | ︙ | |||
838 839 840 841 842 843 844 |
}
/* Request for a file in a specific package */
APPFS_DEBUG("Requesting information for hostname = %s, package = %s, os = %s, cpuArch = %s, version = %s, path = %s",
hostname, packagename, os, cpuArch, version, path
);
| | | 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 |
}
/* Request for a file in a specific package */
APPFS_DEBUG("Requesting information for hostname = %s, package = %s, os = %s, cpuArch = %s, version = %s, path = %s",
hostname, packagename, os, cpuArch, version, path
);
package_hash = appfs_lookup_package_hash(hostname, packagename, os, cpuArch, version);
if (package_hash == NULL) {
free(path_s);
return(-ENOENT);
}
APPFS_DEBUG(" ... which hash a hash of %s", package_hash);
|
| ︙ | ︙ |