1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 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 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 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 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 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 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105
|
=== Release 0.4.4 ===
2012-01-27 David King <amigadave@amigadave.com>
Add gnutls to Requires of libepc-1.0.pc
* libepc-1.0.pc.in: Add gnutls to Requires.
=== Release 0.4.3 ===
2011-10-12 Michael Biebl <biebl@debian.org>
Fix libepc-ui-1.0.pc.in to depend on gtk+-3.0
Bug #664502
=== Release 0.4.2 ===
2011-10-12 Murray Cumming <murrayc@murrayc.com>
Build: examples: Avoiding some repetition.
* Makefile.am: Used variables to avoid copy/pasting.
2011-10-12 Murray Cumming <murrayc@murrayc.com>
examples: Fix linker problems.
* Makefile.am: Some examples used GTK+ but didn't link to it.
USe LIBEPC_UI_LIBS for these.
2011-08-31 Ionut Biru <ibiru@archlinux.org>
Avoid use of deprecated G_CONST_RETURN
* libepc/enums.c.in: Avoid use of deprecated G_CONST_RETURN.
Bug #660558
=== Release 0.4.1 ===
2011-08-31 Murray Cumming <murrayc@murrayc.com>
Really use GTK+ 3.
* configure.ac: Check for gtk+-3.0 for libepc-ui.
* examples/consumer-ui.c:
* examples/publisher-ui.c: Port to GTK+ 3, though I just removed the
GtkAboutBox url hook.
Bug #657679 (Frederic Peters)
2011-06-15 Murray Cumming <murrayc@murrayc.com>
Avoid use of deprecated G_CONST_RETURN.
* libepc-ui/password-dialog.[h|cc]:
* libepc/consumer.[h|cc]:
* libepc/contents.[h|cc]:
* libepc/dispatcher.[h|cc]:
* libepc/protocol.[h|cc]:
* libepc/publisher.[h|cc]:
* libepc/service-info.[h|cc]:
* libepc/service-type.[h|cc]:
* libepc/shell.[h|cc]: Use const instead.
=== Release 0.4.0 ===
2010-05-12 Murray Cumming <murrayc@murrayc.com>
Fix the build with --enable-compiler-warnings=error
* libepc-ui/progress-window.c
* examples/consumer-ui.c: Remove ifdefed code for older versions
of GTK+. We use GTK+ 3 now anyway. This was causing a compiler
warning about extra tokens after #ifdef.
2010-05-12 Christopher Dale <chrelad@gmail.com>
Use avahi-ui-gtk3 rather than avahi-ui-gtk.
Bug #649404
This breaks ABI, but this is an unstable library anyway (murrayc).
2010-03-24 David King <davidk@openismus.com>
Fix compilation with GSEAL_ENABLE defined
* examples/consumer-ui.c:
* libepc-ui/password-dialog.c:
* libepc-ui/progress-window.c: Update for compilation with GSEAL_ENABLE
defined.
=== Release 0.3.10 ===
2010-03-23 David King <davidk@openismus.com>
Fix several compiler warnings
* libepc/publisher.c:
* examples/lookup-resource.c:
* examples/consumer-ui.c: Use G_GSIZE_FORMAT for a gsize parameter in
printf format strings.
* libepc/tls.c: Use gsize* as third parameter to g_file_get_contents().
* examples/publisher-ui.c: Add prototypes for GtkBuilder callbacks.
2010-03-23 David King <davidk@openismus.com>
Modernise autotools configuration
* configure.ac: Require autoconf 2.63 and automake 1.10.3. Change bug
report link to bugzilla product. Add no-define option to automake
configuration. Do not use GNOME_COMMON_INIT. Reorder to the ‘standard
configure.ac layout’ as per the autoconf manual. Check deprecation
flags with GNOME_MAINTAINER_MODE_DEFINES, to avoid deprecations
affecting tarball releases. Enable warnings with
GNOME_COMPILE_WARNINGS. Require libtool 2.2.6 for much faster builds.
Check for uint16 type. Reduce the duplication of CFLAGS and LDFLAGS
by checking for the existence of gio and libsoup separately to
pkg-config invocation. Check for existence of glib-2.0 before
attempting to use the pkg-config variables.
* Makefile.am: Adapt to configure.ac changes. Do not use EXTRA_DIST.
Distribute examples/publisher.ui.
* examples/publisher.glade: Remove unused file.
* libepc-1.0.pc.in:
* libepc-ui-1.0.pc.in: Use modern autoconf variable names.
* INSTALL: Remove generated file from repository.
* .gitignore: Add INSTALL.
* m4/.gitignore: Placeholder file so that git creates this ‘empty
directory’.
* autogen.sh: Remove autoconf version check.
2010-03-23 David King <davidk@openismus.com>
Drop GTK+ requirement back to 2.10
* libepc-ui/password-dialog.c: Wrap gtk_widget_get_visible() call in
an ifdef, so that a newer version of GTK+ is not required.
* configure.ac: Drop GTK+ requirement to 2.10.
2010-03-07 Andre Klapper <a9016009@gmx.de>
Replace deprecated GTK_WIDGET_VISIBLE, fixing bug #612108
* libepc-ui/password-dialog.c: Use new gtk_widget_get_visible() rather
than the deprecated GTK_WIDGET_VISIBLE.
* configure.ac: Bump GTK+ requirement to 2.18.
2009-08-21 Josselin Mouette <joss@malsain.org>
Patch by Petr Salinger.
* tests/framework.c (epc_test_list_ifaces):
Use ifr_index if ifr_ifindex does not exist. Fixes build failure
on GNU/kFreeBSD. Bug #592474.
2009-08-21 Murray Cumming <murrayc@murrayc.com>
* libepc/shell.c (epc_shell_progress_update_default):
Change the Operation Proceeded string to the more correct Operation in
Progress and added a translator comment, to fix bug #589339.
(Luca Ferretti)
=== Release 0.3.10 ===
2009-05-18 Murray Cumming <murrayc@murrayc.com>
* libepc/shell.c (epc_shell_create_service_browser): Fix a warning about
no return value. Bug #583000 (Vincent Untz).
=== Release 0.3.9 ===
2008-11-10 Cosimo Cecchi <cosimoc@gnome.org>
* libepc-ui/password-dialog.h:
* libepc-ui/progress-window.h:
Use single GTK+ includes.
2008-11-02 Murray Cumming <murrayc@murrayc.com>
* libepc/shell.c (epc_shell_create_service_browser):
Return if epc_shell_get_avahi_client() returns a GError, instead of
then setting the already-set GError later.
2008-10-23 Mathias Hasselmann <mathias@taschenorakel.de>
Get default address of system DBus from pkg-config.
* tests/test-runner.sh: See above.
2008-10-19 Murray Cumming <murrayc@murrayc.com>
=== Release 0.3.8 ===
2008-10-19 Mathias Hasselmann <mathias@taschenorakel.de>
Provide a default value for DBUS_SYSTEM_BUS_ADDRESS.
* tests/test-runner.sh: See above.
2008-10-19 Mathias Hasselmann <mathias@taschenorakel.de>
Use different service ports for dispatchers since new Avahi only
report local collisions under that condition. Might be a bug in Avahi.
* tests/test-dispatcher-local-collision.c (main()):
Use port 2008 for dispatcher2.
2008-10-19 Mathias Hasselmann <mathias@taschenorakel.de>
Don't expect Avahi to announce services on interfaces named "*:avahi".
* tests/framework.c (epc_test_list_ifaces()):
Ignore interfaces with ":avahi" suffix.
2008-10-19 Mathias Hasselmann <mathias@openismus.com>
Remove redundant epc_gettext() function.
* Makefile.am:
* libepc/i18n.c:
* libepc/i18n.h:
Remove libepc/i18n.[ch].
* libepc/consumer.c:
* libepc/publisher.c:
* libepc/tls.c:
* libepc-ui/password-dialog.c:
* libepc-ui/progress-window.c:
* libepc/shell.c (epc_shell_init()):
Include <glib/gi18n-lib.h> instead of "libepc/i18n.h".
Bind localedir in epc_shell_init() instead of epc_gettext().
2008-10-19 Murray Cumming <murrayc@murrayc.com>
=== Release 0.3.7 ===
2008-10-19 Murray Cumming <murrayc@murrayc.com>
* Makefile.am: Specify LIBEPC_LIBS for the examples,
because not all (such as gthread-2.0) are implicitly provided
by the build library.
Bug #556689 (Götz Waschk).
2008-10-17 Murray Cumming <murrayc@murrayc.com>
=== Release 0.3.6 ===
2008-10-17 Murray Cumming <murrayc@murrayc.com>
* configure.ac: Really increase the version.
2008-09-21 Brian Pepple <bpepple@fedoraproject.org>
* configure.ac: add missing gthread module check to fix build.
Bug #553181.
2008-07-29 Murray Cumming <murrayc@murrayc.com>
* libepc/publisher.c: epc_publisher_install_handlers(): Check for
a NULL service_name before calling soup_auth_domain_digest_new() to
avoid a crash. However, we need to know why it can be NULL and
prevent that instead.
Bug #540631.
2008-07-12 Mathias Hasselmann <mathias@openismus.com>
Do some small code cleanups.
* examples/simple-publisher.c: Rename authentication_handler()
to authorization_handler() which is the proper name.
* libepc-ui/password-dialog.h: Convert tabs to space.
2008-07-12 Mathias Hasselmann <mathias@openismus.com>
Moved localization related ChangeLog messages to po folder
to fit translation team's needs.
* ChangeLog: Removed localization related messages.
* po/ChangeLog: Added localization related messages.
2008-06-22 Mathias Hasselmann <mathias@openismus.com>
Try to prevent crash after avahi_service_browser_free (#539630).
* libepc/service-monitor.c (epc_service_monitor_constructed()):
Really never add NULL pointer to internal browser list when
epc_shell_create_service_browser() returns NULL, but forgets
to raise an exception (set the error variable).
* libepc/shell.c (epc_shell_create_service_browser()):
Set error variable when avahi_service_browser_new() returns NULL.
2008-05-09 Mathias Hasselmann <mathias@openismus.com>
Properly express dependencies of libepc-ui-1.0.la.
* Makefile.am:
Remove libepc/libepc-1.0.la from libepc_ui_libepc_ui_1_0_la_LDFLAGS
and properly add it to libepc_ui_libepc_ui_1_0_la_LIBADD.
2008-04-07 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.3.5 ===
2008-04-07 Mathias Hasselmann <mathias@openismus.com>
Make test suite build with -Werror again.
* tests/framework.c (_epc_test_match_any(), _epc_test_match_one(),
_epc_test_pass_once_per_iface()): Mark unused arguments and change
type of ifidx argument from gint to guint.
2008-04-07 Mathias Hasselmann <mathias@openismus.com>
Prepare release.
* NEWS: Updated from ChangeLog
* configure.ac: Bump version number.
2008-04-07 Mathias Hasselmann <mathias@openismus.com>
Upgrade the test suite to handle multiple active network interfaces.
* tests/framework.c, tests/framework.h (EpcIfTestStatus,
epc_test_list_ifaces(), _epc_test_match_any(), _epc_test_match_one(),
_epc_test_pass_once_per_iface(), epc_test_pass_once_for_each_iface(),
epc_test_pass_once_per_iface()): Provide infrastructure for handling
tests, that match once for each active network interface.
* tests/test-dispatcher-rename.c (service_browser_cb()),
tests/test-dispatcher-reset.c (service_browser_cb()),
tests/test-publisher-bookmarks.c (service_browser_cb()),
tests/test-publisher-change-name.c (service_browser_cb()):
Replace epc_test_pass_once() by epc_test_pass_once_per_iface()
were needed.
* tests/test-dispatcher-unique.c (service_found_cb()),
tests/test-publisher-unique.c (contents_handler_cb(),
service_found_cb()): Replace epc_test_pass_once() by
epc_test_pass_once_for_each_iface() were needed.
2008-04-04 Murray Cumming <murrayc@murrayc.com>
Plug a small memory leak in EpcDispatcher.
* libepc/dispatcher.c (epc_dispatcher_dispose):
Free priv->cookie.
2008-04-02 Mathias Hasselmann <mathias@openismus.com>
Plug a small memory leak in EpcPublisher.
* libepc/publisher.c (epc_publisher_dispose()):
Release service_cookie field.
2008-03-25 Mathias Hasselmann <mathias@openismus.com>
Specify charset for the publisher's TOC (#523992).
* libepc/publisher.c: Add charset to content-type header of TOC.
2008-03-22 Mathias Hasselmann <mathias@openismus.com>
Make libsoup-2.4 variant build with -Werror again.
* libepc/publisher.c: Mark some arguments as unused.
2008-01-29 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.3.4 ===
* NEWS: Updated for release 0.3.4
2008-01-29 Mathias Hasselmann <mathias@openismus.com>
Small tweaks to make distcheck happy.
* Makefile.am: Update EXTRA_DIST and add DISTCLEANFILES.
* po/ChangeLog: Update toplevel ChangeLog please.
2008-01-21 Mathias Hasselmann <mathias@openismus.com>
Avoid failed SOUP_IS_SERVER (server) assertions.
* libepc/publisher.c: Call soup_server_remove_handler() only,
when self->priv->server is set in epc_publisher_remove_handlers().
2008-01-21 Mathias Hasselmann <mathias@openismus.com>
Cleanup authentication handlers in epc_publisher_quit (#510435).
* libepc/publisher.c: Call epc_publisher_remove_handlers() in
epc_publisher_quit() to get rid of authentication handlers.
2008-01-21 Mathias Hasselmann <mathias@openismus.com>
Migrate from GNU gettext to intltool (#510465, Luca Ferretti).
* autogen.sh: Invoke gnome-autogen.sh, instead of shipping a copy.
* configure.ac, Makefile.am: Migrate from GNU gettext to intltool.
* .gitignore, po/.gitignore: Update for intltool.
* po/POTFILES.skip: Hide examples from intltool.
* ABOUT-NLS, config.rpath, gtk-doc.make, m4/*, po/Makefile.in.in,
po/Rules-quot, po/libepc.pot, po/*.header, po/*.sed, po/*.sin:
Remove generated files from repository.
2008-01-18 Mathias Hasselmann <mathias@openismus.com>
Announce proper libsoup API in libepc-1.0.pc (#509699).
* configure.ac: Export LIBSOUP_API variable.
* libepc-1.0.pc.in: Use LIBSOUP_API variable.
2008-01-18 Mathias Hasselmann <mathias@openismus.com>
Support libsoup 2.4, which will be part of GNOME 2.22 (#509699).
Original patch by Dan Winship.
* configure.ac: Also check for libsoup 2.4.
Define HAVE_LIBSOUP22, when still building for libsoup 2.2.
* libepc/consumer.c, libepc/publisher.c: Update for libsoup 2.4.
* examples/simple-publisher.c: Print source code position in debug
message to reduce confusion.
2008-01-18 Mathias Hasselmann <mathias@openismus.com>
Support authentication credentials in lookup-resource example.
* examples/lookup-resource.c: Add --username and --password
command line switches for passing authentication credentials.
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
Separate between primary and secondary message in EpcPasswordDialog to
match appearance of GtkMessageDialog. Correct label alignment issues.
* libepc-ui/password-dialog.c: Add separate title label for primary
message. Left-align username and password label. Give more space to
characters to secondary label.
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
Provide gettext support.
* configure.ac: Update for gettext.
* Makefile.am: Add libepc/i18n.c. Define LOCALEDIR.
Add po folder and other gettext related stuff.
* libepc/consumer.c, libepc/publisher.c, libepc/shell.c, libepc/tls.c,
libepc-ui/password-dialog.c, libepc-ui/progress-window.c:
Include libepc/i18n.h instead of glib/gi18n-lib.h.
* libepc/i18n.c, libepc/i18n.h: Add epc_gettext.
* examples/simple-publisher.c: Call setlocale for localization.
* ABOUT-NLS, config.rpath, m4/*, po/*: Various gettextize artifacts.
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
* configure.ac, Makefile.am: Integrate GNU gettext.
* libepc/consumer.c, libepc/shell.c:
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
Support building with srcdir != builddir - as far as possible:
gtk-doc seems to be totaly broken regarding that topic.
* libepc/*.c: Prefix local includes with libepc/.
* Makefile.am: Use $(srcdir) where needed.
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
Include just <libsoup/soup.h> when possible.
* libepc/consumer.c: Include just <libsoup/soup.h>.
* libepc/publisher.c: Include <libsoup/soup.h> instead of
<libsoup/soup-socket.h>. All the other API isn't exported by
<libsoup/soup.h> for some reason.
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
Update year in copyright information.
2008-01-16 Mathias Hasselmann <mathias@openismus.com>
Check for aui_service_dialog_set_service_type_name by feature,
instead of checking the pkg-config version.
* configure.ac: Use AC_CHECK_LIB instead of pkg-config to detect
aui_service_dialog_set_service_type_name.
* examples/consumer-ui.c: Use HAVE_SET_SERVICE_TYPE_NAME macro,
instead of HAVE_AVAHI_UI_0_6_22. Include "config.h"".
* Makefile.am: Drop HAVE_AVAHI_UI_0_6_22 hackery.
2008-01-15 Mathias Hasselmann <mathias@openismus.com>
Document LT_VERSION_INFO rules.
* configure.ac: Bump version number. Document LT_VERSION_INFO rules.
2008-01-15 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.3.3 ===
* NEWS: Updated for release 0.3.3
2008-01-15 Mathias Hasselmann <mathias@openismus.com>
Use correct libtool version information (#509503).
* configure.ac: Bump version number and correct LT_VERSION_INFO.
2008-01-14 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.3.2 ===
* NEWS: Updated for release 0.3.2
2008-01-09 Mathias Hasselmann <mathias@openismus.com>
Build with latest gio version (#508272, Emilio Pozuelo Monfort).
* libepc/publisher.c: Include <gio/gio.h> instead of
<gio/gcontenttype.h>.
2007-12-17 Mathias Hasselmann <mathias@openismus.com>
Explictly add copyright statements to make licensecheck happy.
Reported by Pedro Fragoso.
* libepc/enums.c.in, libepc/enums.h.in, Makefile.am:
Mark libepc/enums.[ch] and libepc/marshal.[ch] as generated.
* tests/*: Explictly add LGPL header to test-cases.
* examples/*: Put examples into public domain.
2007-12-17 Mathias Hasselmann <mathias@openismus.com>
* configure.ac: Bump version number.
2007-12-17 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.3.1 ===
* NEWS: Updated for release 0.3.1
2007-12-12 Mathias Hasselmann <mathias@openismus.com>
Use proper gtk-doc syntax for linking to functions.
* libepc/consumer.c, libepc/contents.c, libepc/dispatcher.c,
libepc/protocol.c, libepc/publisher.c, libepc/service-info.c,
libepc/service-monitor.c, libepc/service-type.c, libepc/shell.c,
libepc/tls.c, libepc-ui/password-dialog.c,
libepc-ui/progress-window.c: Use proper syntax.
2007-12-12 Mathias Hasselmann <mathias@openismus.com>
Document new functions and properties.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/dispatcher.c, libepc/publisher.c: Document "cookie"/
"service-cookie" and "collision-handling" properties, and accessors.
* libepc/service-monitor.c: epc_service_monitor_new_for_types_strv.
2007-12-12 Mathias Hasselmann <mathias@openismus.com>
Use shorter names for EpcCollisionHandling members.
* libepc/dispatcher.h: Rename EPC_COLLISION_HANDLING_NONE,
EPC_COLLISION_HANDLING_ALTERNATIVE_NAME and
EPC_COLLISION_HANDLING_UNIQUE_SERVICE to EPC_COLLISIONS_IGNORE,
EPC_COLLISIONS_CHANGE_NAME and EPC_COLLISIONS_UNIQUE_SERVICE.
* tests/test-dispatcher-unique.c, tests/test-publisher-unique.c,
tests/test-dispatcher-local-collision.c, libepc/dispatcher.c,
libepc/publisher.c: Use short EpcCollisionHandling names.
2007-12-10 Mathias Hasselmann <mathias@openismus.com>
Implement fall back to alternative service name strategy, when the
conflicting service has another service cookie, in unique service mode.
* libepc/dispatcher.c, libepc/dispatcher.h: Ensure that dispatchers
with unique service strategy have a service cookie. Rename
epc_dispatcher_get_service_cookie to epc_dispatcher_get_cookie.
Fall back to alternative service name strategy, when conflicting
service has another service cookie, in unique service mode.
* libepc/service-monitor.c, libepc/service-monitor.h: Add
epc_service_monitor_new_for_types_strv and release local variables.
* tests/test-dispatcher-local-collision.c:
Verify alternative name strategy is chosen for collision handling.
* tests/test-dispatcher-unique.c: Test collision
handling with unique strategy, but different service cookies.
* Makefile.am, tests/.gitignore: Add tests/test-dispatcher-unique.
2007-12-10 Mathias Hasselmann <mathias@openismus.com>
Improve parallel building of documentation
* Makefile.am: Make all-local as dependend on $(lib_LTLIBRARIES)
to make sure all libraries are built before documentation.
2007-12-08 Brian Pepple <bpepple@fedoraproject.org>
Fix so correct libdir is used on x86_64 (#502531).
* libepc-1.0.pc.in, libepc-ui-1.0.pc.in:
Use autoconf variables instead of hard-coded paths.
2007-12-06 Mathias Hasselmann <mathias@openismus.com>
Fix some minor glitches.
* libepc/dispatcher.c: Ensure to init group field of EpcService.
* libepc/publisher.c: Remove TODO comment regarding MIME type.
* tests/test-publisher-unique.c: Show message before terminating first
publisher. Reduce delay before terminating that first publisher.
2007-12-06 Mathias Hasselmann <mathias@openismus.com>
Get MIME type of files from gio when available.
* configure.ac: Check for gio-2.0 package.
* libepc/publisher.c: Call g_content_type_guess when possible.
2007-12-06 Mathias Hasselmann <mathias@openismus.com>
Put idle sockets the cleanup iterator finds into a list, instead of
directly disconnecting them. Disconnecting them triggers the
"disconnected" signal, which causes the currently inspected socket
getting removed from the currently iterated hash table - very bad.
* libepc/publisher.c: Put idle clients into a list and disconnect
them in epc_publisher_quit, instead of disconnecting them immediatly
in epc_publisher_disconnect_idle_cb.
2007-12-06 Mathias Hasselmann <mathias@openismus.com>
Provide initial implementation of unique-service collision handling.
* libepc/dispatcher.c: Add collision-handling and service-cookie
properties. Provide initial implementation of unique-service
collision handling.
* libepc/dispatcher.h: Add EpcCollisionHandling enumeration.
Add accessors for collision-handling and service-cookie properties.
* libepc/publisher.c, libepc/publisher.h: Add collision-handling
and service-cookie properties, which just forward to the dispatcher.
* tests/test-publisher-unique.c: Test the unique service feature.
* Makefile.am, tests/.gitignore: Add tests/test-publisher-unique.
2007-12-06 Mathias Hasselmann <mathias@openismus.com>
Correctly interpret protocol list passed to epc_service_monitor_new.
Release the temporary service_types array.
* libepc/service-monitor.c: Fix the issues mentioned above.
2007-12-06 Mathias Hasselmann <mathias@openismus.com>
Fix test-consumer-by-info to terminate.
* tests/test-consumer-by-info.c: Remove epc_test_run() loop.
2007-12-04 Mathias Hasselmann <mathias@openismus.com>
* configure.ac: Bump version number.
2007-12-03 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.3 ===
* NEWS: Updated for release 0.3
* README: Update gnutls version.
2007-12-03 Mathias Hasselmann <mathias@openismus.com>
Track client connections and disconnect clients in epc_publisher_quit
to avoid leaking of HTTP servers.
* libepc/publisher.c: Add functions for client tracking.
2007-12-03 Mathias Hasselmann <mathias@openismus.com>
Mark the EpcAuthContext argument as constant for some functions.
* libepc/publisher.c, libepc/publisher.h: Add some const keywords.
2007-12-03 Mathias Hasselmann <mathias@openismus.com>
Avoid memory management problems by properly passing authentication
settings to libsoup: The library forgets to use the const keyword, but
considers the context it passes the authentication callback constant.
* libepc/publisher.c: Properly initialize server_auth field.
2007-12-03 Mathias Hasselmann <mathias@openismus.com>
Document the @details argument of epc_service_info_new and
epc_service_info_new_full.
* libepc/service-info.c: Update docs.
2007-12-02 Mathias Hasselmann <mathias@openismus.com>
Rebuild libraries before trying the phony docs target.
* Makefile.am: List $(lib_LTLIBRARIES) as dependency for "docs".
2007-12-02 Mathias Hasselmann <mathias@openismus.com>
Allow custom service path for publishing contents and change the
service monitor to use extensible EpcServiceInfo objects.
* libepc/consumer.c, libepc/consumer.h: Change epc_consumer_new to use
a single EpcServiceInfo. Update signal handlers. Add "path" property.
Call epc_consumer_resolve_publisher before constructing URIs.
* libepc/dispatcher.h: Remove EpcAddressFamily.
* libepc/marshal.list: Update service monitor signals.
* libepc/publisher.c, libepc/publisher.h: Add "contents-path"
property. Add publisher argument to epc_publisher_get_path.
* libepc/service-info.c, libepc/service-info.h:
Add EpcServiceInfo and take EpcAddressFamily.
* libepc/service-monitor.c, libepc/service-monitor.h: Change signals
to use EpcServiceInfo, instead of a myriad of arguments.
* docs/reference/libepc/libepc-1.0-docs.xml,
docs/reference/libepc/libepc-1.0-sections.txt: Add EpcServiceInfo.
* examples/consumer-ui.c: Update usage of epc_consumer_new.
* examples/service-browser.c: Update service monitor signal handlers.
* Makefile.am, tests/.gitignore: Add tests/test-consumer-by-info.c.
* tests/test-consumer-by-info.c: Test epc_consumer_new function and
custom contents paths.
2007-12-01 Mathias Hasselmann <mathias@openismus.com>
Demonstrate authentication in publisher-ui example.
* examples/publisher-ui.c: Add auth_handler function.
2007-12-01 Mathias Hasselmann <mathias@openismus.com>
Provide an example demonstrating desktop usage of EpcPublisher.
* examples/publisher-ui.c: Demonstrate desktop usage of EpcPublisher.
* examples/publisher.ui: User interface for examples/publisher-ui.c.
* examples/publisher.glade: Glade source for examples/publisher.ui.
* Makefile.am, examples/.gitignore: Add examples/publisher-ui.c.
* libepc/publisher.c, libepc/publisher.h: Let epc_publisher_quit
report if the built-in server was still/already running.
2007-11-30 Mathias Hasselmann <mathias@openismus.com>
Add epc_publisher_lookup and epc_publisher_has_key to allow usage of
EpcPublisher as local key/value store: This allows applications with
dynamic key to prevent key name collisions without having to maintain
an additional GHashTable.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/publisher.c, libepc/publisher.h: Add epc_publisher_lookup
and epc_publisher_has_key.
2007-11-30 Mathias Hasselmann <mathias@openismus.com>
Repair epc_publisher_handle_list_path.
* libepc/publisher.c: Always initialize file list.
2007-11-30 Mathias Hasselmann <mathias@openismus.com>
Don't mess around with GDK's broken threading support: This ugly
and fat non-recursive big lock hurts more than it helps.
* libepc/shell.c, libepc/shell.h, libepc/consumer.c,
tests/framework.c: Remove epc_shell_leave and epc_shell_enter.
* examples/consumer-ui.c, examples/server-credentials.c:
Don't call gdk_threads_init.
2007-11-30 Mathias Hasselmann <mathias@openismus.com>
Do not pass NULL data to epc_contents_new, when passing empty strings
to epc_contents_new_dup.
* libepc/contents.c: Handle empty strings in epc_contents_new_dup.
2007-11-30 Mathias Hasselmann <mathias@openismus.com>
Show message on root page when no resources have been published yet.
* libepc/publisher.c: Enhance epc_publisher_handle_root.
2007-11-29 Mathias Hasselmann <mathias@openismus.com>
Really shutdown the server in epc_publisher_quit,
to allow for instance change of the network protocol.
* libepc/publisher.c: Shutdown the server in epc_publisher_quit.
2007-11-29 Mathias Hasselmann <mathias@openismus.com>
Set G_DEBUG=fatal-warnings and EPC_DEBUG=1 on testing.
* libepc/dispatcher.c:
Just print a message, instead of a warning on service collisions.
* tests/test-runner.sh: Set G_DEBUG and EPC_DEBUG, if not set yet.
2007-11-29 Mathias Hasselmann <mathias@openismus.com>
Sanitize the progress-hook model by using just user_data.
* libepc/shell.c: Move epc_shell_default_progress_hooks into
epc_shell_set_progress_hooks functions. Update signatures of
epc_shell_progress_begin, epc_shell_progress_update and
epc_shell_progress_end. Change default progress hooks to deal
with the new data model. Add epc_shell_progress_end_default.
Call epc_shell_progress_update with a progress of -1 from
epc_shell_progress_begin to make the epc_shell_progress_begin
hook optional.
* libepc/shell.h: Remove return value of epc_shell_progress_begin.
Remove context argument for epc_shell_progress_update and
epc_shell_progress_end. Update EpcShellProgressHooks signatures
to match those changes and remove message argument from
EpcShellProgressHooks::begin hook.
* libepc-ui/progress-window.c: Update progress hooks for new
model. Add EpcProgressWindowContext, epc_progress_window_context_new
and epc_progress_window_context_free. Allow NULL as message argument
for epc_progress_window_new.
* libepc/tls.c, tests/test-progress-hooks.c: Use new progress-hooks.
2007-11-29 Mathias Hasselmann <mathias@openismus.com>
Restore error recovery feature, which was temporarily
lost during the single-AvahiClient-transition.
* docs/reference/libepc/libepc-1.0-sections.txt,
libepc/shell.c, libepc/shell.h: Add epc_shell_restart_avahi_client.
* libepc/dispatcher.c: Call epc_shell_restart_avahi_client on
AVAHI_ENTRY_GROUP_FAILURE, and epc_service_suspend on
AVAHI_CLIENT_FAILURE.
2007-11-29 Mathias Hasselmann <mathias@openismus.com>
List libuuid as dependency and mention were to find it.
* README: List libuuid as dependency.
2007-11-29 Mathias Hasselmann <mathias@openismus.com>
Remove documentation for non-existing publisher
argument of epc_publisher_get_path.
* libepc/publisher.c: Cleanup API docs.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Of course I've created a dead lock. Using GStaticRecMutex now.
* libepc/publisher.c: Change type of epc_publisher_lock
from GStaticMutex to GStaticRecMutex.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Libsoup uses threads to invoke HTTP request handlers. Therefore some
locking has to be used to protect central data structures of the
publisher. Let's hope that:
1) I protected all critical data structures
2) really balanced all lock/unlock calls
3) produced no dead locks
Did I mention that I hate threads?
* libepc/publisher.c: Add epc_publisher_lock and use it.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Demonstrate epc_publisher_add_bookmark in simple-publisher example.
* examples/simple-publisher.c: Use epc_publisher_add_bookmark.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Reuse epc_publisher_list function for HTTP request handlers.
* libepc/publisher.c: Remove epc_publisher_list_resource_item_xml and
-epc_publisher_list_resource_item_html. Remove and buffer field of
EpcListContext. Use epc_publisher_list in epc_publisher_handle_root
and epc_publisher_handle_list_path.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Use lower directory hierarchy for storing certificates.
* libepc/tls.c: Modify epc_tls_get_filename.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Use a time based UUID as serial for self-signed certificates.
Bug #500251.
* configure.ac: Check for uuid >= 1.36.
* libepc/tls.c: Pass UUID to gnutls_x509_crt_set_serial.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Support dynamic ZeroConf bookmarks.
* libepc/publisher.c, libepc/publisher.h:
Add epc_publisher_add_bookmark and epc_publisher_get_path.
Rename epc_publisher_get_url to epc_publisher_get_uri.
* libepc/consumer.c: Use epc_publisher_get_path.
* Makefile.am, tests/.gitignore: Add test-publisher-change-name.
* tests/test-publisher-change-name.c: Test epc_publisher_add_bookmark.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Move epc_test_goto_if_fail to tests/framework.h.
* tests/framework.h: Add epc_test_goto_if_fail.
* tests/test-consumer-by-name.c: Remove epc_test_goto_if_fail.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Rename epc_shell_expand_name to epc_publisher_expand_name: EpcShell
is private API, and the function is related to publishing anyway.
* libepc/publisher.c, libepc/publisher.h:
Add epc_publisher_expand_name and epc_utf8_strtitle.
* libepc/shell.c, libepc/shell.h:
Remove epc_shell_expand_name and epc_utf8_strtitle.
* tests/test-expand-name.c: Use epc_publisher_expand_name.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
2007-11-28 Mathias Hasselmann <mathias@openismus.com>
Correct the EpcProgressWindow constructor to properly assign the
parent window by calling gtk_window_set_transient_for, instead
of setting the "parent" property.
* libepc-ui/progress-window.c: Properly set parent window.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Add "skip-our-own" property to EpcServiceMonitor which
allows ignoring of services announced by the current process.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/service-monitor.c, libepc/service-monitor.h: Add
"skip-our-own" property.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Add epc_shell_expand_name for constructing service names.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/shell.c, libepc/shell.h: Add epc_shell_expand_name.
* Makefile.am, tests/.gitignore: Add tests/test-expand-name.c.
* tests/test-expand-name.c: Test epc_shell_expand_name.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Add error argument to epc_shell_get_host_name to allow usage,
even if no Avahi clients has been created yet.
* libepc/shell.c, libepc/shell.h:
Add error argument to epc_shell_get_host_name.
* libepc/publisher.c, libepc/publisher.h:
Add error argument to epc_publisher_get_url and propagate
errors reported by epc_shell_get_host_name.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Correct XML problems in epc_consumer_lookup documentation.
* libepc/consumer.c: Drop the angle brackets.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Replace the global _epc_debug variable by epc_shell_get_debug_level.
Also document the EPC_DEBUG environment variable.
* docs/reference/libepc/libepc-1.0-sections.txt, libepc/shell.h:
Add EPC_DEBUG_LEVEL and epc_shell_get_debug_level.
* libepc/shell.c: Replace _epc_debug by epc_shell_get_debug_level.
* libepc/consumer.c, libepc/contents.c, libepc/dispatcher.c,
libepc/publisher.c, libepc/service-monitor.c, libepc/tls.c:
Replace _epc_debug by EPC_DEBUG_LEVEL.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Drop epc_shell_ref and epc_shell_unref and use g_atexit for cleanup.
* docs/reference/libepc/libepc-1.0-sections.txt, libepc/shell.c,
libepc/shell.h: Remove epc_shell_ref and epc_shell_unref.
* libepc/consumer.c, libepc/dispatcher.c, libepc/publisher.c,
libepc/service-monitor.c, tests/framework.c:
Don't call epc_shell_ref and epc_shell_unref.
2007-11-27 Murray Cumming <murrayc@murrayc.com>
* libepc/publisher.c: epc_publisher_set_auth_handler() documentation:
Note that this should be used _after_ adding the key.
2007-11-27 Murray Cumming <murrayc@murrayc.com>
* libepc/consumer.c: epc_consumer_lookup(): Mention the specific error
code that is relevant when using authentication.
* libepc/publisher.c:
* libepc/publisher.h: EpcAuthHandler: mention the two different
auth methods (and what to do) in the documentation.
EpcAuthFlags: Some minor changes to the documention.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Modify the library to share one single AvahiClient instance. This
allows to filter-out services announced by the current process in the
service monitor.
TODO: Find a way to restore epc_dispatcher_reset_client.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/publisher.c: Use epc_shell_get_host_name.
* libepc/service-monitor.c, tests/framework.c: Use shared AvahiClient.
* libepc/shell.c, libepc/shell.h: Modify to use only one AvahiClient.
* libepc/dispatcher.c, libepc/dispatcher.h: Use shared AvahiClient.
Remove epc_dispatcher_get_host_name.
2007-11-27 Mathias Hasselmann <mathias@openismus.com>
Remove some debugging left-overs.
* tests/test-dispatcher-simple-service.c: Cleanup.
2007-11-26 Mathias Hasselmann <mathias@openismus.com>
Change @stability of EpcDispatcher and EpcServiceMonitor to unstable.
* libepc/dispatcher.c, libepc/service-monitor.c: Change @stability.
2007-11-26 Mathias Hasselmann <mathias@openismus.com>
Support Basic authentication via EPC_AUTH_PASSWORD_TEXT_NEEDED.
* libepc/publisher.c, libepc/publisher.h: Add EpcAuthFlags,
epc_publisher_set_auth_flags, epc_publisher_get_auth_flags.
* libepc/enums.c.in, libepc/enums.h.in: Add generic
_get_class and _to_string functions.
* libepc/service-type.c: Use epc_protocol_get_class.
* examples/simple-publisher.c: Allow Basic authentication.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
2007-11-26 Murray Cumming <murrayc@murrayc.com>
* libepc/publisher.c: Documentation: Minor grammatical corrections.
2007-11-26 Murray Cumming <murrayc@murrayc.com>
* configure.ac: Depend on gnutls 1.4 instead of 1.6,
because it works too. Bug #500251.
2007-11-24 Mathias Hasselmann <mathias@openismus.com>
Rename EpcServiceMonitor::done signal to
EpcServiceMonitor::scanning-done.
* libepc/service-monitor.c, libepc/service-monitor.h: Rename signal.
2007-11-23 Mathias Hasselmann <mathias@openismus.com>
Change type of length arguments from gsize to gssize for
epc_contents_new and epc_contents_new_dup, as they support
zero terminated strings now.
* libepc/contents.c, libepc/contents.h: Change length argument type.
2007-11-23 Murray Cumming <murrayc@murrayc.com>
* libepc/contents.h: EpcContentsReadFunc documentation:
Specify that the data length is in bytes (not characters).
* libepc/contents.c: (epc_contents_new), (epc_contents_new_dup):
Allow -1 for length if the data is null-terminated.
* libepc/publisher.c: Change a mention to @value to @data.
* libepc/shell.c, libepc/shell.h: Some improvement to the
documentation, without changing meanings.
2007-11-23 Mathias Hasselmann <mathias@openismus.com>
Implement EpcServiceMonitor by extracting EpcConsumer code.
* libepc/consumer.c: Use EpcServiceMonitor.
* libepc/marshal.list: Add VOID:STRING,STRING.
* libepc/service-monitor.c, libepc/service-monitor.h:
Implement the EpcServiceMonitor by refactoring EpcConsumer code.
* libepc/service-type.c, libepc/service-type.h:
Add epc_service_type_list_supported.
* examples/service-browser: Demonstrate usage of EpcServiceMonitor.
* Makefile.am, examples/.gitignore: Add examples/service-browser.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols
2007-11-23 Mathias Hasselmann <mathias@openismus.com>
Make tests/test-progress-hooks pass.
* tests/test-progress-hooks.c: Remove EPC_TEST_MASK_USER from result.
2007-11-23 Mathias Hasselmann <mathias@openismus.com>
Improve memory handling for EpcContents and improve documentation.
* docs/reference/libepc/libepc-1.0-sections.txt: Close <SECTION> tag.
* libepc/contents.c, libepc/contents.h: Improve memory management.
* libepc/publisher.c: Use gconstpointer where needed.
2007-11-23 Mathias Hasselmann <mathias@openismus.com>
Start with EpcServiceMonitor class.
* docs/reference/libepc/libepc-1.0-docs.xml: Re-order sections.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/marshal.list: Add VOID:STRING,STRING,STRING,UINT.
* Makefile.am: Add libepc/service-monitor.c and
libepc/service-monitor.h.
2007-11-22 Mathias Hasselmann <mathias@openismus.com>
Change some function signatures for consistency.
* libepc/consumer.c, libepc/consumer.h: Change return
type of epc_consumer_lookup from "gchar*" to "gpointer".
* libepc/contents.c, libepc/contents.h: Change data argument type
from "const gpointer" to "gconstpointer" for epc_contents_new_dup.
Move length argument behind data for consistency.
* libepc/publisher.c, libepc/publisher.h: Rename value argument to
data and change its type from "const gchar*" to "gconstpointer"
for consistency.
* examples/simple-publisher.c: Change order of length and
data argument when using epc_contents_new.
2007-11-22 Mathias Hasselmann <mathias@openismus.com>
Improve memory handling of EpcContents.
* libepc/contents.c, libepc/contents.h: Add destroy_data argument to
epc_contents_new. Add new epc_contents_new_dup function.
* libepc/publisher.c, examples/simple-publisher.c: Pass g_free
as destroy_data argument to epc_contents_new.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
2007-11-22 Mathias Hasselmann <mathias@openismus.com>
Implement streaming capabilities.
* Makefile.am: Add libepc/contents.c and libepc/contents.h.
* libepc/contents.c, libepc/contents.h: Move EpcContents buffer
into separate files. Add EpcContentsReadFunc, epc_contents_get_data,
epc_contents_get_mime_type, epc_contents_stream_new,
epc_contents_stream_read and epc_contents_is_stream.
* libepc/publisher.c, libepc/publisher.h: Remove EpcContents.
Implement streaming of large objects.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
2007-11-22 Murray Cumming, <murrayc@murrayc.com>
* examples/consumer-ui.c: (keys_combo_changed_cb), (main):
Initialize and free GErrors.
2007-11-22 Murray Cumming <murrayc@murrayc.com>
* examples/consumer-ui.c: (main): Rename the transport
variable to service_type because that is what it is.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Implement epc_publisher_get_url and epc_publisher_list,
as the Totem plugin needs them.
* libepc/publisher.c, libepc/publisher.h:
Add epc_publisher_get_url and epc_publisher_list.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/consumer.c: Reference epc_publisher_list in docs.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Don't crash on empty publishers.
* examples/consumer-ui.c: Handle empty publishers.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Demonstrate browsing for a specific application.
* examples/consumer-ui.c: Update the example.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Introduce epc_protocol_from_name.
* libepc/protocol.c, libepc/protocol.h: Add epc_protocol_from_name.
* examples/simple-publisher.c: Use epc_protocol_from_name.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Explain TLS key generation during epc_publisher_run.
* libepc/publisher.c: Update API docs.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
There is no "reauthenticate" signal anymore in EpcConsumer.
* libepc/consumer.h: Remove documentation for "reauthenticate".
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Move progress reporting from EpcTls to EpcSell and turn
EpcProgressWindow into a versatile thing.
* libepc/shell.c, libepc/shell.h: Add EpcShellProgressHooks,
epc_shell_set_progress_hooks, epc_shell_progress_begin,
epc_shell_progress_begin and epc_shell_progress_end.
* libepc/tls.c, libepc/tls.h: Remove EpcTlsPrivkeyEnterHook,
EpcTlsPrivkeyLeaveHook and epc_tls_set_private_key_hooks.
* libepc-ui/progress-window.c, libepc-ui/progress-window.h: Add
epc_progress_window_update. Support additional arguments for
epc_progress_window_new and epc_progress_window_install. Use
epc_shell_set_progress_hooks instead of epc_tls_set_private_key_hooks.
* Makefile.am: Add tests/test-progress-hooks and declare G_LOG_DOMAIN.
* docs/reference/libepc/libepc-1.0-docs.xml: Update symbols.
* docs/reference/libepc/libepc-1.0-sections.txt: Include
progress-window.xml, instead of entropy-window.xml.
* examples/server-credentials.c:
Pass NULL as parent window to epc_progress_window_install.
* tests/test-progress-hooks.c: The the new progress hooks.
* tests/.gitignore: Add test-progress-hooks.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Various improvements to the test framework.
* tests/framework.c, tests/framework.h: Change epc_test_init to take
number of tests, instead of test mask as argument. Change epc_test_quit
to return test mask and to print failed tests.
* tests/*: Adopt framework changes.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Rename EpcEntropyWindow to EpcProgressWindow.
* Makefile.am, examples/server-credentials.c,
libepc-ui/progress-window.c, libepc-ui/progress-window.h,
docs/reference/libepc/libepc-1.0-sections.txt:
Update symbols and filenames.
2007-11-21 Mathias Hasselmann <mathias@openismus.com>
Change version number as ABI has changed.
* configure.ac: Bump version number and add LT_VERSION_INFO variable.
* Makefile.am: Pass -version-info switch to libtool.
2007-11-20 Mathias Hasselmann <mathias@openismus.com>
Add error reporting to epc_publisher_run and epc_publisher_run_async.
* libepc/publisher.c, libepc/publisher.h:
Add error reporting to epc_publisher_run and epc_publisher_run_async.
* libepc/dispatcher.c, libepc/dispatcher.h: Don't start the dispatcher
before epc_dispatcher_run is called to support error reporting.
* examples/simple-publisher.c, tests/test-publisher-change-name.c,
tests/test-consumer-by-name.c, tests/test-publisher-libsoup-494128.c:
Handle errors reported by epc_publisher_run.
* tests/test-dispatcher-*: Call epc_dispatcher_run, which is needed
for error handling now.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
2007-11-20 Murray Cumming <murrayc@murrayc.com>
Improve include file handling.
* examples/consumer-ui.c, examples/simple-publisher.c:
Use < instead of quotes, because that is what an application
should do. For consistency at least, though people can argue
about it endlessely. Don't.
* libepc/service-type.h: Include protocol.h via the libepc/
directory path.
2007-11-19 Mathias Hasselmann <mathias@openismus.com>
List download locations, code repository, bugzilla.
* README: List GNOME resources.
2007-11-19 Mathias Hasselmann <mathias@openismus.com>
Say "key/value store", instead of "hash table".
* docs/reference/libepc/libepc-1.0-docs.xml, README:
Say "key/value store", instead of "hash table".
2007-11-19 Mathias Hasselmann <mathias@openismus.com>
Add missing documentation and update package dependencies.
* NEWS, README: Add missing documentation.
* configure.ac: Update package dependencies.
* docs/reference/libepc/libepc-1.0-docs.xml: Add hash table metapher.
2007-11-19 Mathias Hasselmann <mathias@openismus.com>
Remove calls to g_timeout_add_seconds convenience function of glib-2.14,
as all other parts of the library are satisfied with glib-2.12.
* tests/framework.c: Remove g_timeout_add_seconds.
2007-11-19 Mathias Hasselmann <mathias@openismus.com>
* configure.ac: Bump version.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
=== Release 0.2 ===
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Simplify authentication by using an approach similiar to the one
Alex Larsson uses for gvfs: The consumer just emits an signal that
authentication credentials are required, and the signal handler
changes some consumer properties when being able to provide them.
* docs/reference/libepc/libepc-1.0-sections.txt: Update symbols.
* libepc/consumer.c, libepc/consumer.h: Remove reauthenticate signal.
Modify authentication signal. Add username and password properties.
* libepc/marshal.list: Update the authentication marshaller.
* libepc/publisher.c: Dump debug messages during authentication.
* libepc-ui/password-dialog.c: Use the new authentication scheme.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Remove a bogous hash sign from API documentation.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Further discussion of epc_consumer_new_for_name.
* libepc/consumer.c: Discuss epc_consumer_new_for_name.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Add epc_publisher_remove and discuss publishing NULL values.
* libepc/publisher.c: Add epc_publisher_remove. discuss NULL values.
* libepc/consumer.c: Reference NULL value discussion in EcpPublisher.
* docs/reference/libepc/libepc-1.0-sections.txt, libepc/publisher.h:
Add epc_publisher_remove.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Add SUBSECTION tags to group function lists.
* docs/reference/libepc/libepc-1.0-sections.txt: Add grouping.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Fix memory leak in the authenticate signal handler.
* libepc-ui/password-dialog.c: Fix memory leak.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Add note regarding real argument types for the "authentication" and
"reauthenticate" signals of EpcConsumer.
* libepc/consumer.c: Update documentation.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Move EPC_CONSUMER_DEFAULT_TIMEOUT to consumer.c
as it is some internal implementation detail.
* docs/reference/libepc/libepc-1.0-sections.txt,
libepc/consumer.h: Remove EPC_CONSUMER_DEFAULT_TIMEOUT.
* libepc/consumer.c: Add EPC_CONSUMER_DEFAULT_TIMEOUT.
2007-11-15 Mathias Hasselmann <mathias@openismus.com>
Improve documentation and add epc_consumer_is_publisher_resolved.
* docs/reference/libepc/libepc-1.0-sections.txt:
Add epc_consumer_is_publisher_resolved.
* libepc/consumer.c, libepc/consumer.h: Improve documentation.
Add epc_consumer_is_publisher_resolved.
* libepc/publisher.c, libepc/publisher.h: Improve documentation.
2007-11-14 Murray Cumming <murrayc@openismus.com>
Various documentation improvements.
* docs/reference/libepc/libepc-1.0-docs.xml: Fix package names.
* libepc/consumer.c, libepc/dispatcher.c, libepc/publisher.c,
libepc/service-type.c: Fix grammer and spelling. Clarify sentences.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Update to gtk-doc trunk.
* gtk-doc.make: Update to trunk version.
* docs/reference/libepc/.gitignore: Add libepc-1.0-undeclared.txt.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Append "-1.0" suffix to package name.
* libepc-1.0.pc, libepc-ui-1.0.pc: Renamed.
* configure.ac, .gitignore: Rename *.pc files.
* Makefile.am: Append "-1.0" suffix. Sort statements. Add comments.
* docs/reference/libepc/Makefile.am: Change DOC_MODULE name.
* docs/reference/libepc/.gitignore: Update file names.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Rename configure.in to configure.ac.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Add application argument to epc_publisher_new for controling DNS-SD
service type: As the examples demonstrate, automatically using
g_get_prgname only works in themost simplistic cases.
* libepc/publisher.c, libepc/publisher.h: Add application argument
and property of the same name to EpcPublisher.
* examples/simple-publisher.c, tests/test-publisher-libsoup-494128.c
tests/test-consumer-by-name.c, tests/test-publisher-change-name.c:
Pass application name to epc_publisher_new.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Improve examples and give them better names.
* examples/consumer-ui.c: Rename examples/test-consumer.c.
Remove command line interface. Use epc_consumer_list.
* examples/simple-publisher.c: Rename examples/test-publisher.c.
* examples/list-resources.c: Improve comments.
* examples/lookup-resource.c: Minimalistic value lookup example.
* examples/.gitignore, Makefile.am: Update examples.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Remove bogous description of a return value
for epc_password_dialog_set_anonymous_allowed.
* libepc-ui/password-dialog.c: Remove bogous description.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Resolve authentication dead-lock.
* libepc/shell.c: Print debug information about big-lock handlers.
* libepc/consumer.c: Aquire GDK big-lock before emitting
authenticate and reauthenticate signals.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Add capability for listing publisher resources.
* libepc/publisher.c: Implement URL handler for '/list/' and '/' path.
* libepc/consumer.c, libepc/consumer.h: Implement epc_consumer_list.
* examples/list-resources.c: New example for listing resources.
* Makefile.am, examples/.gitignore: Add examples/list-resources.
* docs/reference/libepc/libepc-sections.txt: Add epc_consumer_list.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Give EpcConsumer and EpcPublisher separate sections.
Give separete files for EpcPublisher helper structures.
* docs/reference/libepc/libepc-docs.xml,
docs/reference/libepc/libepc-sections.txt: Reorganize sections.
* libepc/publisher.c: Document EpcAuthContext and EpcContents section.
2007-11-14 Mathias Hasselmann <mathias@openismus.com>
Rename EpcContent: "Inhalt" is "contents" with "s", not "content".
* docs/reference/libepc/libepc-sections.txt,
examples/test-publisher.c, libepc/publisher.c,
libepc/publisher.h: Rename EpcContent to EpcContents.
2007-11-13 Mathias Hasselmann <mathias@openismus.com>
Distribute gtk-doc.make, libepc-docs.xml and libepc-sections.txt.
* Makefile.am, docs/reference/libepc/Makefile.am: Update EXTRA_DIST.
2007-11-13 Mathias Hasselmann <mathias@openismus.com>
Add error handling to epc_consumer_lookup.
* examples/test-consumer.c, tests/test-consumer-by-name.c:
Pass error argument to epc_consumer_lookup.
* docs/reference/libepc/libepc-sections.txt: Add EPC_HTTP_ERROR.
* libepc/consumer.c, libepc/consumer.h: Add error handling to
epc_consumer_lookup. Add EPC_HTTP_ERROR and epc_http_error_quark.
* Makefile.am: Add libepc/libepc.la to LDADD variable of
examples/test-consumer.
2007-11-13 Mathias Hasselmann <mathias@openismus.com>
Do more restrictive argument checks in epc_dispatcher_add_service to
work arround Avahi race conditions.
* libepc/dispatcher.c: Do more restrictive argument checks in
epc_dispatcher_add_service to work arround Avahi race conditions.
* libepc/publisher.c, tests/test-dispatcher-subtypes.c:
Use epc_dispatcher_add_service_subtype instead of
epc_dispatcher_add_service to publish subtypes.
* tests/framework.c, tests/framework.h:
Rename epc_test_pass to epc_test_pass_once. Add epc_test_pass_many.
* tests/*: Rename epc_test_pass to epc_test_pass_once.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Fix several issues to make distcheck happy.
* Makefile.am: Add BUILT_SOURCES and EXTRA_DIST files. Fix the
reference manual's dist-hook. Fix some build-dir != source-dir issues.
Properly clean up, and maybe work arround some automake bug.
* docs/reference/libepc/Makefile.am: Correctly pass the multiple
source dirs to gtk-doc.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Add epc_password_dialog_attach for easy EpcPasswordDialog usage.
* libepc-ui/password-dialog.c, libepc-ui/password-dialog.h,
examples/test-consumer.c, docs/reference/libepc/libepc-sections.txt:
Add and use epc_password_dialog_attach.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Document libepc-ui widgets.
* docs/reference/libepc/libepc-docs.xml: Add libepc-ui sections.
* docs/reference/libepc/libepc-sections.txt: Add libepc-ui symbols.
* docs/reference/libepc/Makefile.am: Add libepc-ui.
* libepc-ui/entropy-window.c, libepc-ui/entropy-window.h:
Add API documentation and rename EpcEntropyProgress to EpcEntropyWindow.
* libepc-ui/password-dialog.c, libepc-ui/password-dialog.h: Add docs.
* libepc/consumer.h, libepc/dispatcher.h, libepc/publisher.h:
Add /*< public >*/ annotations to make gtk-doc happy.
* libepc/protocol.c: Link to epc_service_type_new.
* Makefile.am, examples/server-credentials.c:
Rename EpcEntropyProgress to EpcEntropyWindow.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Finish API documentation.
* libepc/consumer.c, libepc/dispatcher.c, libepc/dispatcher.h,
libepc/publisher.c, libepc/shell.c: Finish API documentation.
* docs/reference/libepc/libepc-docs.xml: Add chapters comments.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Split service-type files into service-type and protocol files
for better documentation. Update documentation.
* docs/reference/libepc/libepc-sections.txt: Update symbols.
* libepc/protocol.c, libepc/protocol.h: Take over the EpcProtocol
related functions of the service-type files. Update documentation.
* libepc/service-type.c, libepc/service-type.h: Drop the EpcProtocol
related functions. Update documentation.
* Makefile.am: Add protocol.c and protocol.h
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Update documentation and add an error argument
to epc_shell_create_avahi_client.
* docs/reference/libepc/libepc-sections.txt: Updated symbols.
* libepc/shell.c, libepc/shell.h: Document functions. Add error
argument to epc_shell_create_avahi_client.
* libepc/consumer.c, libepc/dispatcher.c, tests/framework.c:
Pass error argument to epc_shell_create_avahi_client.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Drop the shell's artificial Avahi client by keep the publisher's
dispatcher arround. Implement name changes for the dispatcher.
* libepc/dispatcher.c, libepc/dispatcher.h:
Allow changing of name property.
* libepc/publisher.c: Keep dispatcher arround and use its
Avahi client ot lookup the host's official hostname.
* libepc/shell.c, libepc/shell.h: Remove epc_shell_get_host_name.
* Makefile.am, tests/.gitignore: Add test-dispatcher-rename and
test-dispatcher-reset.
* tests/framework.c, tests/framework.h: Print invokation location
for epc_test_pass. Assert tests are passed only once. Restart the
timeout when a test passes.
* tests/test-publisher-change-name.c: First call epc_test_pass,
then change the name by calling epc_publisher_set_service_name.
* tests/test-dispatcher-rename.c: Verify that epc_dispatcher_set_name
removes the old mame.
* tests/test-dispatcher-reset.c: Verify that epc_dispatcher_set_reset
removes the old mame.
2007-11-12 Mathias Hasselmann <mathias@openismus.com>
Move protocol property from EpcDispatcher to its internal service
class, as protocols (aka. address families) are a property of the
service address. Entirely drop the interface property as I see no
way to map them onto interface names (eth0, ppp0, ...). Also I
see no masures in Avahi to keep them valid when interfaces are
created or shutdown.
* libepc/dispatcher.c, libepc/dispatcher.h: Add EpcAddressFamily
enumeration. Add protocol argument to epc_dispatcher_add_service.
Remove interface and interface property from EpcDispatcher.
* libepc/publisher.c, tests/*: Pass address family to
epc_dispatcher_add_service instead of epc_dispatcher_new.
2007-11-11 Mathias Hasselmann <mathias@openismus.com>
Create epc_service_type_get_base from existing EpcDispatcher code and
use it in epc_service_type_get_protocol.
* libepc/dispatcher.c: Use epc_service_type_get_base.
* libepc/service-type.c, libepc/service-type.h: Add
epc_service_type_get_base and use it in epc_service_type_get_protocol.
* Makefile.am, tests/.gitignore: Add tests/test-service-type.c.
* tests/test-service-type.c: Test epc_service_type_get_base.
2007-11-10 Mathias Hasselmann <mathias@openismus.com>
Update API documentation.
* docs/reference/libepc/libepc-docs.xml,
docs/reference/libepc/libepc-sections.txt, libepc/consumer.c,
libepc/consumer.h, libepc/dispatcher.c, libepc/publisher.c,
libepc/service-type.c, libepc/shell.c, libepc/tls.c, libepc/tls.h:
Update API documentation.
* docs/reference/libepc/Makefile.am: Improve stamp file dependencies.
2007-11-09 Mathias Hasselmann <mathias@openismus.com>
Use new avahi-ui API for overriding service type names (Avahi #180).
* configure.in, Makefile.am: Test for avahi-ui 0.6.22.
* examples/test-consumer.c: Use aui_service_dialog_set_service_type_name.
2007-11-09 Mathias Hasselmann <mathias@openismus.com>
Implement the HTTPS transport method.
* libepc/consumer.c, libepc/consumer.h: Support HTTPS transport
protocol. Add reauthenticate signal to vtable. New publisher-resolved
signal, epc_consumer_resolve_publisher method and protocol property.
Replace service-type property by application property.
* libepc/publisher.c, libepc/publisher.h: Implement HTTPS transport.
Add certificate-file, private-key-file and protocol property. Add
epc_publisher_set_credentials method. Remove service-type property.
* libepc/enums.c.in, libepc/enums.h.in: Templates for glib-mkenums.
* libepc/marshal.list: Update for EpcConsumer::publisher-resolved.
* libepc/service-type.c, libepc/service-type.h: Add EpcProtocol enum.
Add functions for service-type and protocol handling.
* libepc/shell.c, libepc/shell.h: Add epc_shell_get_host_name.
Remove epc_shell_create_service_type.
* libepc/.gitignore: Add libepc/enums.[ch] and artifacts.
* Makefile.am: Add libepc/enums.[ch] and artifacts.
Improve error handling when using glib-genmarshal.
* examples/test-consumer.c: Pass choosen protocol to epc_consumer_new.
* examples/test-publisher.c: Add --protocol command line switch.
* tests/test-consumer-by-name.c, tests/test-publisher-change-name.c,
tests/test-publisher-libsoup-494128.c: Create publishers in HTTP mode,
since generating HTTPS keys takes quite some time.
* docs/reference/libepc/libepc-sections.txt: Update symbols.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Minor TLS cleanups.
* libepc/tls.c: Check that the variables crtfile and keyfile point
to NULL to prevent memory leaks in in epc_tls_get_server_credentials.
* libepc/tls.h: Add G_GNUC_CONST attribute to epc_tls_error_quark.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Set common name in generated certificates.
* libepc/tls.c: Set common name in generated certificates.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Change epc_test_init to take initial result mask as argument.
* tests/framework.c, tests/framework.h, tests/*.c:
Change epc_test_init to take initial result mask as argument.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Always dump the test cases' stdout and stderr when EPC_DEBUG is set.
* tests/test-runner.sh: Consider EPC_DEBUG variable.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Pass arguments to make when building API documentation.
* Makefile.am: Pass arguments to make when building API documentation.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Restart the DNS-SD dispatcher when changing the publisher's name.
* libepc/publisher.c: Restart dispatcher on server-name change.
* Makefile.am, tests/.gitignore: Add tests/test-publisher-change-name.c
* tests/test-dispatcher-local-collision.c: Remove some G_GNUC_UNUSED
* tests/test-publisher-change-name.c: Verify name changes are working.
* tests/test-publisher-libsoup-494128.c: Add description.
* tests/framework.c: Print message when tests pass.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Try to deal with libsoup bug #494128. Seems there is no way to force
SoupServer to close all pending HTTP connections. So it seems we have
to accept leaking the SoupServer on shutdown, as each HTTP connection
increases the server's reference count. Well, but at least we can try
not to add additional leaking references. That's what this changes
try to achive.
* libepc/publisher.c: Try to deal with libsoup bug #494128
* tests/test-publisher-libsoup-494128.c: Test run/quit variants
* Makefile.am, tests/.gitignore: Add test-publisher-libsoup-494128.c
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Use more descriptive property names for EpcPublisher.
* docs/reference/libepc/libepc-sections.txt,
libepc/publisher.c, libepc/publisher.h,
tests/test-consumer-by-name.c: Update property names.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Rename epc_tls_privkey_* functions to epc_tls_private_key_*,
which results in same symbol length for private key and
equivalent certificate functions.
* docs/reference/libepc/libepc-sections.txt: Updating symbols.
* libepc/tls.c, libepc/tls.h, libepc-ui/entropy-progress.c:
Rename epc_tls_privkey_* functions to epc_tls_private_key_*.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Rename EpcPublication to EpcResource in EpcPublisher.
* libepc/publisher.c: Rename EpcPublication to EpcResource.
2007-11-08 Mathias Hasselmann <mathias@openismus.com>
Show a progress window when generating new keys.
* examples/server-credentials.c: Use EpcEntropyProgress.
* libepc-ui/passworddialog.c, libepc-ui/passworddialog.h,
examples/test-consumer.c: Rename files to password-dialog.
* libepc/tls.c, libepc/tls.h: Add epc_tls_privkey_set_hooks which
allows showing of a progress window when generating private keys.
* libepc-ui/entropy-progress.c, libepc-ui/entropy-progress.h,
Makefile.am: Add EpcEntropyProgress, which can be shown when
generating keys.
2007-11-07 Mathias Hasselmann <mathias@openismus.com>
Create simple API for creating, storing and loading server keys.
* configure.in: Add gnutls package.
* libepc/tls.c, libepc/tls.h: Simple server key API.
* examples/.gitignore: Add server-credentials
* examples/server-credentials.c: Demonstrate how to
retreive self-signed SSL/TLS server credentials.
* docs/reference/libepc/libepc-docs.sgml: Add new chapters.
* docs/reference/libepc/libepc-sections.txt: Add new symbols.
* Makefile.am: Add libepc/tls.c, libepc/tls.h and
examples/server-credentials.c.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Prevent that make tries to build API docs before building the library.
* Makefile.am: Explicitly list the rules of gtk-doc.make.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Prevent that repeated calls of epc_test_quit kills the EpcShell.
* libepc/shell.c: Trace epc_shell_ref/unref when EPC_DEBUG is set.
* tests/framework.c: Try to call epc_shell_unref only once.
* tests/test-dispatcher-simple-service.c: Your changes...
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Remove g_debug calls in test-consumer-by-name.
* tests/test-consumer-by-name.c: Remove g_debug calls.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Add gdk_threads hooks to inspect #494173.
* examples/test-consumer.c: Add gdk_threads hooks to inspect #494173.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
* libepc/consumer.c, libepc/consumer.h: Add epc_consumer_new_for_name
and epc_consumer_new_for_name_full for connecting by service name.
* libepc/dispatcher.c: Use external _epc_debug variable.
* libepc/shell.c: Provide _epc_debug variable.
* tests/test-consumer-by-name: Test epc_consumer_new_for_name.
* Makefile.am, tests/.gitignore: Add tests/test-consumer-by-name.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Try to prevent dead-locks with GDK when entering main loops.
* configure.in: Add gmodule-2.0 as dependency.
* libepc/shell.c, libepc/shell.h: Add epc_shell_leave and
epc_shell_enter which deal with GDK's big lock when needed.
* libepc/dispatcher.c: Call epc_shell_unref in finalize, not dispose.
* libepc/consumer.c: Unlock when calling soup_session_send_message.
* tests/framework.c: Unlock when calling g_main_loop_run.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Also commit services when not adding any subtypes.
* libepc/dispatcher.c: Also schedule commmit from epc_service_publish.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Rename EpcAvahiShell to EpcShell.
* libepc/dispatcher.c, libepc/publisher.c, libepc/shell.c,
libepc/shell.h, Makefile.am, tests/framework.c:
Rename EpcAvahiShell to EpcShell.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Permit access when no authentication handler is installed.
* libepc/publisher.c: Let epc_publisher_server_auth_cb return TRUE,
when no authentication handler is found to permit access in that case.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Announce program name based service type.
* libepc/publisher.c: Announce program name based service type.
* libepc/dispatcher.c: Move commit step into idle function.
* libepc/avahi-shell.c, libepc/avahi-shell.h:
Provide epc_avahi_shell_create_service_type for creating
program name based service types.
2007-11-06 Mathias Hasselmann <mathias@openismus.com>
Introduce common API for managing basic, shareable Avahi infrastructure.
* libepc/avahi-shell.c, libepc/avahi-shell.h: Introduce EpcAvahiShell.
* libepc/dispatcher.c, tests/framework.c: Use EpcAvahiShell.
* Makefile.am: Add libepc/avahi-shell.c and libepc/avahi-shell.h.
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Merge password dialog from the libank experiment.
* libepc-ui/passworddialog.c, libepc-ui/passworddialog.h:
Merge password dialog from the libank experiment.
* examples/test-consumer.c: Use EpcPasswordDialog.
* configure.in, Makefile.am, libepc-ui.pc.in, libepc-ui/.gitignore:
Add shared libepc-ui library containing libepc specific widgets.
* libepc.pc.in: Correct the cflags property.
* tests/.gitignore: Add *.loT
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Document authentication mechanism and add "reauthenticate" signal.
* docs/reference/libepc/libepc-sections.txt, libepc/publisher.c,
libepc/publisher.h: Document authentication mechanism.
* libepc/consumer.c: Document authentication mechanism
and add "reauthenticate" signal.
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Implement authentication for EpcPublisher and EpcConsumer.
* examples/test-consumer.c: Demonstrate authentication callback.
* examples/test-publisher.c: Demonstrate publishing of sensitive data.
* libepc/consumer.c, libepc/consumer.h: Add "authenticate" signal.
* libepc/marshal.list: Add marshaller for "authenticate" signal.
* libepc/.gitignore: Add generated files marshal.c and marshal.h.
* Makefile.am: Add marshal.c, marshal.h and code to generate them.
* libepc/publisher.c, libepc/publisher.h: Implement authentication
by adding epc_publisher_set_auth_handler and EpcAuthContext.
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Demonstrate epc_publisher_add_handler.
* examples/test-publisher.c: Demonstrate epc_publisher_add_handler.
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Move examples into separate folder.
* examples/.gitignore, Makefile.am, tests/.gitignore:
Moved test-consumer and test-publisher from tests to examples.
* tests/test-consumer.c, tests/test-publisher.c: Moved to examples.
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Document epc_publisher_add_handler and related API.
* docs/reference/libepc/libepc-sections.txt:
Rename EpcPublisherHandler to EpcContentHandler.
* libepc/publisher.c: Document epc_publisher_add_handler
and EpcContent with its methods.
* libepc/publisher.h: Document EpcContentHandler.
2007-11-05 Mathias Hasselmann <mathias@openismus.com>
Implement epc_publisher_add_handler.
Rewrite epc_publisher_add and epc_publisher_add_file to use it.
* docs/reference/libepc/libepc-sections.txt, libepc/publisher.c,
libepc/publisher.h: Add epc_publisher_add_handler and EpcContent.
* tests/test-publisher.c: Remove obsolete error variable.
2007-11-04 Mathias Hasselmann <mathias@openismus.com>
Document the property accessors of EpcDispatcher.
* docs/reference/libepc/libepc-sections.txt,
libepc/dispatcher.c: Document the property accessors.
2007-11-04 Mathias Hasselmann <mathias@openismus.com>
Implement regression tests for the EpcDispatcher.
* Makefile.am, tests/.gitignore: Add regression tests.
* tests/framework.c, tests/framework.h: Common test code.
* tests/test-runner.sh: Redirect output of regression tests.
* tests/test-dispatcher-simple-service.c: Test a single service.
* tests/test-dispatcher-multiple-services.c: Test registering
of multiple services on a single dispatcher.
* tests/test-dispatcher-subtypes.c: Test service subtypes.
* tests/test-dispatcher-local-collision.c: Test automatic handling
of local service name collisions.
* libepc/dispatcher.c, libepc/dispatcher.h:
Add getter methods for properties of the EpcDispatcher.
2007-11-03 Mathias Hasselmann <mathias@openismus.com>
Implement regression testing for EpcDispatcher.
* Makefile.am, tests/.gitignore: Add tests/test-dispatcher-001.c.
* tests/test-dispatcher-001.c: Regression test for EpcDispatcher.
2007-11-03 Mathias Hasselmann <mathias@openismus.com>
Handle local collisions.
* libepc/dispatcher.c: Handle local collisions.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Fix property assertions in EpcPublisher.
* libepc/publisher.c: Fix property assertions
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Guard g_debug statements by epc_debug flag, which can by enabled
by setting the EPC_DEBUG environment variable.
* libepc/dispatcher.c: Guard g_debug statements.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Adjust indenting for consumer.h
* libepc/consumer.h: Adjust indenting.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Improve API documentation and examples.
* libepc/consumer.c, libepc/dispatcher.c, libepc/publisher.c:
Improve API documentation.
* tests/test-consumer.c, tests/test-publisher.c: Insert code comments
as those files serve as examples and document command line arguments.
* docs/reference/libepc/libepc-sections.txt:
Remove EPC_PUBLISHER_SERVICE_NAME.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Split EPC_PUBLISHER_SERVICE_NAME into EPC_SERVICE_NAME,
EPC_SERVICE_NAME_HTTP and EPC_SERVICE_NAME_HTTPS.
* libepc/publisher.h: Remove EPC_PUBLISHER_SERVICE_NAME.
* libepc/service-names.h, docs/reference/libepc/libepc-docs.sgml,
docs/reference/libepc/libepc-sections.txt: Introduce
EPC_SERVICE_NAME, EPC_SERVICE_NAME_HTTP and EPC_SERVICE_NAME_HTTPS.
* libepc/publisher.c: Use EPC_SERVICE_NAME_HTTP
instead of EPC_PUBLISHER_SERVICE_NAME.
* tests/test-consumer.c: Use EPC_SERVICE_NAME
instead of EPC_PUBLISHER_SERVICE_NAME.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Change library name to libepc.
* docs/reference/libepc/Makefile.am, libepc.pc.in,
Makefile.am: Change library name to libepc.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Tell automake to install developer files.
* Makefile.am: Install header files and pkg-config information.
* configure.in, libepc.pc.in: Provide pkg-config information.
* .gitignore: Ignore libepc.pc.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Add copyright headers.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Document EpcDispatcher and provide examples.
* docs/reference/libepc/.gitignore: Remove libepc-sections.txt.
* docs/reference/libepc/libepc-sections.txt: Add *Class
structures as requested by the gtk-doc tool.
* libepc/consumer.c, libepc/consumer.h, libepc/publisher.c,
libepc/publisher.h: Add examples and document *Class structures.
* libepc/dispatcher.c, libepc/dispatcher.h: Document EpcDispatcher.
2007-11-02 Mathias Hasselmann <mathias@openismus.com>
Provide some initial API documentation.
* docs/reference/libepc/Makefile.am: Force rebuilding
of documentation when the code changes.
* docs/reference/libepc/.gitignore: Ignore *.bak files.
* libepc/consumer.c, libepc/consumer.h: Some initial documentation.
* libepc/publisher.c, libepc/publisher.h: Some initial documentation.
Rename EPC_PUBLISHER_SERVICE_TYPE to EPC_PUBLISHER_SERVICE_NAME.
* tests/test-consumer.c: Rename EPC_PUBLISHER_SERVICE_TYPE to
EPC_PUBLISHER_SERVICE_NAME.
2007-11-01 Mathias Hasselmann <mathias@openismus.com>
Integrate gtk-doc for API documentation.
* configure.in, Makefile.am: Integrate gtk-doc for API documentation.
* gtk-doc.make, docs/reference/libepc/*: Setup gtk-doc infrastructure.
2007-11-01 Mathias Hasselmann <mathias@openismus.com>
Handle construct-only properties more stricly.
* libepc/dispatcher.c, libepc/publisher.c: Assert fields are NULL
instead of releasing their data, when setting construct-only
properties.
2007-11-01 Mathias Hasselmann <mathias@openismus.com>
Implement the consumer.
* libepc/consumer.c, libepc/consumer.h: Really implement the consumer.
* tests/test-consumer.c: Use the consumer API.
2007-11-01 Mathias Hasselmann <mathias@openismus.com>
Start the consumer by merging the document-server's client test.
* tests/test-consumer.c: Just copy the document-server's client test.
2007-11-01 Mathias Hasselmann <mathias@openismus.com>
Implement EpcDispatcher, an easy to use ZeroConf dispatcher.
* configure.in, Makefile.am: Separatly checking for
avahi-ui which is used by tests/test-consumer only.
* libepc/dispatcher.c, libepc/dispatcher.h: Implement an
easy to use ZeroConf service dispatcher on top of Avahi.
* libepc/publisher.c, libepc/publisher.h: Use the new dispatcher.
* tests/test-publisher.c: Use the new dispatcher.
Change key-name for the source-code record.
2007-10-31 Mathias Hasselmann <mathias@openismus.com>
Initial commit of the Easy Publish and Consume library.
|