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 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053
|
Smb4K 4.0.5 (2025-12-10):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/4.0
- Fix the security issues:
CVE-2025-66002: local users can perform arbitrary unmounts via
smb4kmounthelper due to lack of input validation
CVE-2025-66003: local users can perform a local root exploit via smb4k
mounthelper if they can access and control the contents of a Samba share
- Only allow mounting and unmounting below the mount prefix
/var/run/smb4k/<user ID>/.
- Only accept sane URLs and especially deny specially crafted ones.
- Let the mounthelper create the mount points by itself depending on the
passed URL.
- Use the mount and umount binaries returned by the respective functions
from Smb4KGlobal.
- Only allow whitelisted mount and unmount options.
- Make sure that no comma separated values can be passed with the mount
options.
- Only allow setting the UID and GID to the ones of the calling user.
- Only accept four-digit octal numbers as file and directory masks that
do not carry any special permissions (e.g. a setuid root bit).
- Only accept the location of the Kerberos ticket being passed as a file
descriptor.
- Remove all settings that are obsolete: mount prefix, unmounting of
forein shares, user and group, filesystem port, custom CIFS mount
options.
- Introduce the setting to use the user's UID and GID for mounting.
- Remove the whitelist of mount options from Smb4KGlobal.
- Remove the mount point creation and removal from the mounter.
- Pass the Kerberos ticket as a file descriptor to the mounthelper.
- Do not allow the unmounting of foreign shares.
- Do not pass obsolete and rejected settings to the mounthelper.
- Improve error handling in the mounter.
- All shares on the system that are not mounted under
/var/run/smb4k/<user ID>/ are considered foreign.
- Improve notifications with regard to failed KAuth actions.
- Remove obsolete settings from the configuration and custom settings
dialog.
- Introduce setting to set the UID and GID of a mount to the one of
the user to the configuration and the custom settings dialog. The
IDs are not editable.
- Restrict the input of the file and directory mode to 4 digits and
validate it.
- Remove the possibility to unmount foreign shares through the
network neighborhood browser, the shares view and the shares menu.
Additional changes:
- Fix Smb4KCustomSettingsManager::saveCustomSettings(): Now all settings
are indeed removed from the file if an empty list is passed.
- Merge Smb4KHardwareInterface class from master.
Smb4K 4.0.4 (2025-07-31):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/4.0
- Fix serveral issues with the UNC-to-URL conversion in the mount dialog.
- Port to KUIServerV2JobTracker. KUIServerJobTracker is in the process of
being deprecated.
- Update README.md to reflect the right location of the license files.
Smb4K 4.0.3 (2025-06-15):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/4.0
- Do not copy empty credentials into the URL when reading the password,
and, thus, fix the failed mounting of home shares in particular, which
have no credentials.
Smb4K 4.0.2 (2025-05-15):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/4.0
- Fix regression that Smb4K could not be compiled anymore with Qt versions
prior to 6.8.
Smb4K 4.0.1 (2025-05-13):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/4.0
- Use Q_APPLICATION_STATIC instead of Q_GLOBAL_STATIC to avoid crashes on
exit (BUG #500855).
Smb4K 4.0.0 (2025-02-04):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/4.0
- Ported Smb4K to Qt6 and KF6. Minimum requirements are Qt version >= 6.6.2
and KF6 version >= 6.0.0.
- Separated all widget based classes from the core classes as far as
possible and moved them out of the core library. Improved them along the
way where needed. Adjusted the code of the core classes and the rest of
the program accordingly.
- The login credentials are now stored using QtKeychain. This allows the
usage of other secure storage solutions apart from KWallet.
Since QtKeychain does not provide access to all login credentials Smb4K
stored, we lost the capability to edit the login credentials in the
configuration dialog. You need to use the respective editor program (i.e.
kwalletmanager, KeePassXC, ...) to edit or remove the login credentials.
- The bookmarks, custom settings and the default login now have become
profile-dependent. They are reloaded when the active profile changes.
- Improved handling of bookmarks and rewrite large parts of the bookmark
handler. Introduce a new "Bookmarks" configuration page and a new bookmark
editor. Also rename one of the functions from Smb4KBookmarkHandler class
and adjust the code accordingly.
- Rename Smb4KConfigPageCustomOptions to Smb4KConfigPageCustomSettings. Add
Smb4KCustomSettingsEditorWidget and implement a new editor for the config
page.
- Improve the handling of custom settings.
- Rewrote and improved mount dialog.
- Improved code of Smb4KBookmarkMenu class.
- Overhauled the way profiles are handled. Removed the profile migration
assistant.
- Improved profiles config page. When enabling profiles, set the first
profile in the list active, if no active profile is available.
- Remove obsolete setting "Force SMB protocol version 1.0 for workgroup and
domain lookups". We have DNS-SD and optionally WSD in place, so this is
not needed anymore.
- Save the settings of the main window at the right place in time. Previously,
the settings were saved too late when the main window was hidden already.
So, isVisible() returned false and the main window was always hidden at
program start.
- Import mounted shares regardless of a running mounter. Otherwise, if e.g.
the last remount fails, we end up with no imports. Also, connect to the
hardware interface right away.
- Overhauled the configuration dialog and the configuration pages. Fixed
several bugs during that process.
- Use 'CompletionItems' config group for completion items.
- Cleaned up and simplified the code where needed.
- Declared Smb4KBasicNetworkItem, Smb4KBookmark, Smb4KCustomSettings,
Smb4KFile, Smb4KHost, Smb4KShare and Smb4KWorkgroup metatypes.
- Fixed empty tooltip when shown the first time. This was actually caused by
the wrong parent assigned to the contents widget. Also, improved the code
a bit.
- Position the first item found by the network search at the center of the
network browser.
- Improve drop functions in the shares view: Only consider dropping if there
is an item under the mouse and disallow it if the share is mounted read-only.
- Replace deprecated qAsConst() with std::as_const().
- Made the enabling of the "Apply" button in the configuration dialog work
properly.
- Properly mount and unmount the selected shares and also improve the code
for showing the homes user dialog.
- Updated handbook and README to reflect new version.
Smb4K 3.2.5 (2023-11-17):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.2
- Backport the bookmark menu from master to fix broken handling of bookmarks.
- Make Smb4KBookmark known as metatype. This is needed for the backport of
the bookmark menu from master.
Smb4K 3.2.4 (2023-10-11):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.2
- Fix the reported paths of the synchronization progress information: Use
the relative path returned by rsync and emit the correct paths with the
description() signal.
- In the 'Authentication' configuration page, fix the missing connection
of the reset button to its slot.
- In the 'Authentication' configuration page, fix the wrong parent for
the button box. This got previously mended by adding the button box
to the editor's layout, but we should fix it anyway.
Smb4K 3.2.3 (2023-09-06):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.2
- Fix bug in the copy constructors of the derived network item classes.
- Fix the remounting of shares after the computer went online again / woke
up from suspend/resume. Thank you to Hendrik Haddorp and Stefan v. Wachter
for reporting this issue.
Smb4K 3.2.2 (2023-07-28):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.2
- Fix crash in the bookmark menu and remove unnecessary/dysfunctional code
(BUG 472467).
- Fix Smb4KCustomOptions::setMACAddress(). Backported from master.
- Fix clearing the MAC address in the custom options dialog. Backported
from master.
Smb4K 3.2.1 (2023-04-08):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.2
- Lower required KF5 version to 5.78 so that it can be compiled under
Debian 11.
- Fix include statement so that Smb4K 3.2 can be compiled with older
versions of KF5.
- Make installation work with KF5 version < 5.89.
Smb4K 3.2.0 (2023-04-07):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.2
- Set required Qt version to 5.14 and KF5 version to 5.80.
- Rename "Custom Options" to "Custom Settings" all over the GUI.
- Replace 'Login' with 'Username' in the GUI where appropriate.
- Add support for SMB3 filesystem under Linux.
- Fix a crash in the plasmoid that occurred every time when a share
was checked if it was mounted. Also improve the code.
- Add ability to define custom settings also from the shares view.
- Fix handling of the configuration dialog in the main window and the system
tray icon.
- Improve config dialog by disentagling the code, removing dead code and fixing
bugs.
- Update icons in the configuration dialog and the GUI.
- Improve "Custom Settings" config page and custom settings handling.
- Improve "Authentication" config page and credentials handling.
- Improve "Network" configuration page. Move Samba and Wake-on-LAN settings to
one "Advanced Settings" tab. Replace self-made note in the Wake-on-LAN group
box by a KMessageWidget.
- Improve "Mounting" configuration page. Make the additional CIFS options entry
checkable.
- Enable support for the CIFS Unix extensions by default. To make this work
properly, do not perform permission checks on the share by default.
- Add settings to the "User Interface" configuration page to adjust the icon sizes
in the network neighborhood browser and the shares view.
- Improve "Synchronization" configuration page. Make the custom filter rules entry
checkable. Create new tab for the file attributes and ownership settings. Use
kilobytes (base 10) and the appropriate SI units with synchronization.
- Add new synchronization options and handle the existing once more intuitively
(like you would in a command line in the terminal).
- Use capabilites of rsync >= 3.1 to refactor the synchronization code. Get rid
of the occasionally appearing error notifications when the user canceled the
synchronization via the cancel button.
- Improve and fix bookmark menu code. Improve handling of toplevel mount action.
Rename text of mount actions to "Mount Bookmarks".
- Fix handling of profiles: Save changes to the active profile to disk.
- Overhaul the handling of several selected shares.
- Do not clutter the share icon with too many emblems and only use one base folder
icon.
- Revise notifications and adjust code accordingly.
- Make remounting of shares work when the profile was changed.
- Show an error notification if DNS-SD ought to be used and Zeroconf is not
working.
- Allow more advanced options to be passed to mount.cifs.
- Improve handling of mounted and unmounted network shares.
- Use QStorageInfo instead of KIO::StatJob in the mounter and merge code
from slotStatResult() into the import() function. Emit the
mountedSharesListChanged() only once. Replace KIO::upUrl() with a
QUrl::resolved() approach. Use QStorageInfo instead of deprecated (as
of KF5 5.88.0) KDiskFreeSpaceInfo. Adjust code in Smb4KShare accordingly.
- Get rid of the settings Smb4KSettings::NetBIOSName and Smb4KSettings::DomainName. If
the user set up Samba correctly, these values are provided by the respective smbc_get*()
functions. Otherwise we will use fall back values. There is no need to make these
configurable anymore.
- Extensively rewrite Smb4KWalletManager class and remove basically unnecessary
functions from Smb4KAuthInfo class. Adjust the code accordingly.
- Check whether the share is accessible before using the canonical path
in findShareByPath().
- Updated handbook.
- Updated README.md
- Many other bug fixes.
Smb4K 3.1.7 (2023-01-08):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Fix a potential crash if the SMB context could not be initialized.
Backported from master.
- Make the additional CIFS options dialog work.
- Fix problems with the 'nolock' option for mount.cifs (BUG #463637).
Smb4K 3.1.6 (2022-12-15):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Fix position of the drop popup menu under Wayland. Backported from master.
- Always pass the domain to the mount command if it is not empty and not a
DNS-SD domain (BUG #462798).
Smb4K 3.1.5 (2022-12-04):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Fix arrangement of the dock widgets as tabs on first start. Backported
from master.
- Fix crash bug(s) in Smb4KClientJob. Backported from master.
Smb4K 3.1.4 (2022-10-30):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Silence possible error message when terminating rsync with the stop button.
- Add missing emission of the changed() signal to
Smb4KNetworkObject::setInaccessible().
- Remove obsolete includes.
Smb4K 3.1.3 (2022-07-13):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Remove KDE4 migration code (BUG #455772).
- Fix a crash when the mount point is not available (BUG #454687).
Smb4K 3.1.2 (2022-04-02):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Since for slow (un)mounting processes, the process might be killed before
it finishes, the timeout is extended to 30 sec instead of 5 sec. The
timeout is only supposed to be used to kill hanging processes and not
working ones that are slow. Backported from master.
- Fix error handling in the client. Backported from master.
- Only add a host once. Especially when DNS-SD discovery was used, a host
might have appeared twice. Backported from master.
Smb4K 3.1.1 (2021-09-28):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Detect all network shares on startup in Smb4KHardwareInterface, so that
removing of shares that were already present when Smb4K started works
again.
- Implement non-blocking wait and automatic process termination in the
mount helper (BUG 430627 and partly BUG #442187).
Smb4K 3.1.0 (2021-05-26):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.1
- Raise minimum requirements to Qt version >= 5.9.0 and KF5 version
>=5.44.0.
- Implement DNS-SD to look up servers that provide SMB resources.
- Implement WS-Discovery to look up domains, workgroups and servers.
Since this is optional, add a new CMake option SMB4K_WITH_WS_DISCOVERY.
- Introduce the possibility to force the SMB v1 protocol for workgroup
and domain lookups, if Samba's client library supports it. This option
is disabled by default.
- Add support for setting the minimal and maximal SMB protocol version
that are used when connection to servers, if Samba's client library
supports it. These options are disabled by default.
- Improved the way shares are bookmarked in the mount dialog.
- Improve handling of bookmarks. Among other things, add the possibility
to edit the workgroup in the bookmark editor. This may be useful in the
case you bookmarked a share through the mount dialog and misspelled the
workgroup/domain.
- Improve handling of custom options. Make the custom options dialog and
the custom options config page more robust regarding the handling of
the options. In this context, change the way the settings are stored in
custom_options.xml file. This is INCOMPATIBLE with earlier versions of
Smb4K!
- Add more arguments for the 'vers' option and change the default according
to the docs of mount.cifs/mount.smb3 version 6.11.
- Fix notification regarding unmounted shares and improved mounter code.
- Add support for the SMB3 file system under Linux.
- Fix missing Wayland icon.
- Do not hard code the mainwindow's size.
- Use high DPI pixmaps in the application.
- Improve tooltips by using KTooltipWidget class.
- Don't require Plasma if the plasmoid is not to be installed.
- Improve GUI layout throughout the whole application.
- Align position of the mounted emblem with KDE.
- Port away from bearer management classes, because they are deprecated in
Qt 5.15 and will be removed in Qt 6. Use QNetworkInterface instead to
determine the connection state.
- Simplify the error reporting of the client.
- Do not read global options from smb.conf anymore. Use an SMB context
to retrieve the required information.
- Rename CMake option INSTALL_PLASMOID to SMB4K_INSTALL_PLASMOID.
- Remove ability to install core header files. Thus, the CMake option
INSTALL_HEADER_FILES does not exist anymore.
- Several more bug fixes, code clean ups and improvements.
- Updated handbook.
Smb4K 3.0.7 (2020-11-06):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.0
- Fix enabling / disabling of bookmarks menu according to the mounting state
in the bookmark menu.
- Make mounting of bookmarks work (again) in the plasmoid. (Backported from
master.)
Smb4K 3.0.6 (2020-06-03):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://invent.kde.org/network/smb4k/-/commits/3.0
- Save the mainwindow settings no matter how the application is closed.
This fixes the inability of Smb4K to started docked to the system tray.
- Do not show a message box when the main window is visible and the user
logs off.
- Add missing mount option 'ntlmsspi' to the respective combo box in the
config dialog.
- Silence a compiler warning under BSD.
Smb4K 3.0.5 (2020-05-12):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=3.0
- Fix the location of the mounted emblem for KF5 versions greater
than 5.52.
- Fix build with Qt-5.15 (missing header)
- Fix hasOptions() function, so that no false positives occur anymore.
Smb4K 3.0.4 (2020-04-14):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=3.0
- Fix build with Qt 5.9 and lower. `QApplication::screenAt()` only
exists since 5.10.
- Improved the mount helper. It will not freeze anymore when the
system is offline (BUG 415165).
- Fixed crashes and other problems in the mounter (BUG 398296,
BUG 415165, BUG 415726 and BUG 419658).
- Implemented inhibition of shutdown and sleep while the mounter
performs unmounts.
- Improved the handling of online and offline state in the hardware
interface.
Smb4K 3.0.3 (2020-03-08):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=3.0
- Exit silently when the query for domains and workgroups failed
(BUG 417754).
- Fixed authentication problems while mounting due to special characters
in the password (BUG 367911).
- Wait for 50 ms after the unmount of a share before starting the next
one (BUG 417631).
- Replace deprecated QApplication::desktop()->screenGeometry() function
and, thus, silence a compiler warning.
- Updated translations.
Smb4K 3.0.2 (2019-08-15):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=3.0
- Fixed and improved handling of custom options, especially the remount
options. Removed the "RemountNever" enum entry, since it is actually
not needed for a proper operation.
- Updated home page address.
- Updated translations.
Smb4K 3.0.1 (2019-06-15):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=3.0
- Implemented safe defaults to fix the "Smb4K mounts shares read-
only" issue reported by Forolinux.
- Updated handbook.
- Updated translations.
Smb4K 3.0.0 (2019-06-10):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=3.0
- Moved to libsmbclient for network related communication. Removed
the old scan, search, preview and print classes. Adjusted the rest
of the code accordingly.
- Removed periodic scanning capabilities and other obsolete settings.
- Only start a network scan, if the computer is online.
- Removed the search tab from the main window. Searches can now be
done directly in the browser window.
- Use the display string 'SHARE on HOST' instead of the UNC in the GUI.
- Added several more mount options under Linux.
- Added several new custom options and reworked the custom options
dialog.
- Improved support for NetBSD and added Dragonfly BSD as supported
operating system.
- Reworked the configuration dialog on many pages. Moved several settings
around.
- Added more rsync options:
- Compression level: --compress-level=NUM
- Skip compression: --skip-compress=LIST
- Munge symlinks: --munge-links
- Copy directory symlinks: --copy-dirlinks
- Set bandwidth limit: --bwlimit=RATE
- Got rid of KParts. The dock widgets are now direct children of the
main window.
- Changed the system tray icon.
- Overhauled the notifications.
- Improved plasmoid:
- Added 'Configuration' page.
- Introduced sorting of items.
- Reworked the layout.
- Introduced more actions that can be performed on single items.
- Fixed restoring the window sizes.
- Cleaned up code.
- Changed many things under the hood (see Git log if you wish to learn
more about this).
- Updated handbook.
- And much, much more.
Smb4K 2.1.1 (2018-07-22):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=2.1
- Fixed auto mounting of shares (BUG 396342).
- Fixed missing rsync arguments in the synchronizer.
- Fixed resetting of changes made to the bookmarks list. For this,
clear the list of bookmarks in the read function.
Smb4K 2.1.0 (2018-04-02):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=2.1
- Ported the plasmoid to Plasma 5 and extended its functionality.
Among others:
- Added ability to synchronize shares.
- Added ability to preview shares.
- Added sorting to the list views.
- Added a compact representation of the plasmoid.
- Use the location ('SHARE on SERVER') instead of the UNC in most
widgets.
- Made suffixes in the configuration dialog translatable (BUG 386434).
- Fixed a crash in the bookmarks menu that was triggered by a null
pointer access (BUG 391424).
- Only start the domain lookup job when the computer is online
(BUG 391150).
- Fix mounting of shares with a UNC like //server/share/$user
(BUG 390558).
- Fixed several more bugs.
- Improved the code responsible for mounting.
- Improved the code responsible for the handling of profiles.
- Improved the code responsible for handling the custom options.
- Removed the undo option for changes made to the custom options in
the configuration dialog.
- Improved code responsible for the handling of bookmarks.
- Did some major rewrites of the code of the core classes.
- Use smart pointers for shares, hosts, workgroups, etc.
- Continue to replace normal for loops by range-based for loops
where appropriate.
- Cleaned up code where necessary.
- Improved handbook.
- And many other changes ...
Smb4K 2.0.2 (2017-08-22):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=2.0
- cmake: set the policy CMP0063 only if existing
- cmake: lower required version to 3.2.
- Add a remark regarding denied privilege escalation to the handbook.
- Fixed removal of remounts in Smb4KMounter::slotStatResult().
Smb4K 2.0.1 (2017-05-13):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=2.0
- Fix a logic flaw in the mount helper (CVE-2017-8849).
- Fix build system.
Smb4K 2.0.0 (2017-03-11):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=2.0
- Ported Smb4K to Qt5 and KF5.
- Removed the plasmoid from this release, because it has not been ported yet.
- Added migration of config and XML files.
- Bumped required CMake version to 3.3. Set policies for CMP0037 and CMP0063 to NEW.
- Implemented new org.kde.appname format for desktop and xml files.
- Added support for high DPI screens.
- Removed the IP scan job and setting, since that method did not to work properly.
- Got rid of all dependencies to other shell programs except the Samba ones.
- Revised the shares view:
- The old list view was removed and replaced by a new one based on the default
icon widget.
- A new 'Shares View' action menu to was added to the shares view and the dynamic
main tool bar.
- The mount point is not shown anymore in the shares view.
- Make sure no drops can be performed if either the computer is offline or the
share is inaccessible.
- Revised the mounter and the mount helper:
- Rely on Solid to nofify the application that a share was added or removed.
- Under Linux, the /proc/mounts file for imports is not needed anymore, because
all the needed information is present in the KMountPoint::mountOptions() string
list.
- However, under FreeBSD/NetBSD a workaround for detecting mounts and unmounts had
to be implemented for now, since on my FreeBSD system Solid was not able to detect
mounts and unmounts of Samba shares.
- Replaced the choice of the view mode of the shares view by a combo box in the
configuration dialog.
- Removed the setting for showing the mount point instead of the UNC.
- Removed the protocol hint, since it is not needed anymore. Adjust the code
accordingly. As a consequence, we are now using the RPC protocol when listing
the shares of a server.
- Removed obsolete configuration option that was used to determine an interval
between checks for mounted shares.
- The smbclient program of Samba 4.x does not report the server and operating system
anymore. The support of this extra information has now been removed.
- Suppress error messages and warnings when a browse/hosts/shares list could be
retrieved.
- Do not report those shares that were initially imported as being mounted.
- Close all notifications on timeout.
- Changed some status bar texts.
- Fixed several issues in the preview dialog.
- Improved hardware support.
- Changed overlay for the icon of a foreign share.
- Added a donator to the about dialog.
- Remove "for KDE" in the description of SmbK as suggested by Burkhard Lück.
- Updated handbook.
- Removed CPack support.
- And many other changes under the hood ...
Smb4K 1.2.3 (2017-02-05):
See the summary of changes below. For a full list of changes, please
refer to the Git log at https://cgit.kde.org/smb4k.git/log/?h=1.2
- Fix Smb4KSharesMenu::refreshMenu() function. Backported from master.
- Fix Smb4KBookmarkMenu::refreshMenu() and simplify Smb4KBookmarkMenu::setupMenu()
functions. Backported from master.
- Introduce workaround to search code so that network search is also working with
option 'client max protocol = SMB3' defined in smb.conf. Backported fix from master.
Smb4K 1.2.2 (2016-11-12):
See the summary of changes below. For a full list of changes, please
refer to the Git log at
https://quickgit.kde.org/?p=smb4k.git&a=shortlog&h=49babc09bf94b732c5bce85c9d825ca14e1eb138
- Improved error message handling in the scanner. Mostly backported
changes from master.
- Accept the drop events (QEvent::accept()) in the shares views.
- Added remarks regarding the regession introduced by the security fixes
released on April 12, 2016 to the handbook. Changed URL of the bug tracker
to the KDE Bugtracking System. Bumped version number (and modification date)
of the handbook.
- Now that Smb4K is on bugs.kde.org, remove the custom bug report address.
Smb4K 1.2.1 (2015-09-04):
See the summary of changes below. For a full list of changes, please
refer to the Git log at
https://projects.kde.org/projects/extragear/network/smb4k/repository/revisions/1.2/changes
- Fixed the "authentication dialog is missing the host name" error
(closes SF ticket #37).
- Fixed scanning of broadcast areas (added missing pipe).
- Updated license text to the current version of GPL v2
(closes SF ticket #40).
- Make Smb4K also useful with operating systems that are not supported.
You can now do anything with it except mounting.
- Fixed code under FreeBSD/NetBSD.
- Split the mount options off the other options. Adjusted the code accordingly.
The reason for this is that we want to support more operating systems and that
is is now easier to deal with different mount options.
- Use KIO::convertSize() instead self written code.
- Refactored and improved code responsible for mounting.
- Fix out-of-source builds when po is present.
When building out-of-source, ALLOW_DUPLICATE_CUSTOM_TARGETS never gets turned on
because the po directory doesn't exist in the build directory, causing a build
failure. This ensures that the correct source directory is always checked.
Smb4K 1.2.0 (2015-02-21):
See the summary of changes below. For a full list of changes, please
refer to the Git log at
https://projects.kde.org/projects/extragear/network/smb4k/repository/revisions/1.2/changes
- Added support for NetBSD.
- Added support for profiles.
- Added appdata file. Closes SF ticket #35.
- Updated handbook.
- Do not clean up the mount prefix in Smb4KMounter::timerEvent(), but
do it when a share was unmounted (and, naturally, on exit).
- Fix the Smb4KMounter::cleanup() function.
- Removed Smb4KNotification::systemCallFailed() and also removed
the systemCallFailed event from smb4k.notifyrc file.
are reserved variables, so they were replaced by 'stdOut' and 'stdErr'.
- Get rid of platform dependend functions and replace them by Qt, KDE or
C++ includes.
- Added Smb4KDeclarative::isMasterBrowser() and Smb4KDeclarative::setMasterBrowser()
functions.
- Fixed non-functional editing capabilities of the bookmark dialog.
- Added share name to the homes user dialog.
- Implemented profiles page in the plasmoid.
- Added a second argument to initCore() function with that you can determine
whether the core classes (at the moment scanner and mounter) should be started
or not.
- Removed old CTRL+R shortcut for rescanning the network neighborhood.
- Implemented use of Kerberos with net command.
- Improved handling of sleep states. Smb4K now reacts on changes of the network
connection instead of on button press events. So, we are also able to properly
unmount and remount shares when the computer is suspended by software.
Since the button press events are not checked anymore, the respective settings
and the 'Laptop Support' configuration page were removed.
These changes should fix SF ticket #38.
- If the smb.conf file is missing, notify the user (ideally only once)
that it is missing and recommend him/her to create one.
Since we do not want to spam the user, remove any warnings/error
messages about a missing smb.conf file from stderr.
- Fixed compilation errors under FreeBSD.
- Fixed synchronization: rsync needs trailing slashes to operate correctly.
Make sure they are present. Also, ignore the "sending incremental file list"
output when compiling file urls.
- Implemented more CIFS mount options under Linux as well as a whitelist
of mount.cifs options that are save to be entered via the "Additional options"
line edit in the configuration dialog.
The new (and removed) mount options are:
- 'cache=none|strict|loose' replacing 'directio' that is deprecated as of
kernel 3.7 and was thus removed. In the configuration dialog the respective
setting is named 'Cache mode'.
- 'vers=1.0|2.0|2.1|3.0'. In the configuration dialog the respective setting
is named 'SMB protocol version'.
- 'forceuid'. In the configuration dialog the respective setting is named
'Definitely assign the UID'.
- 'forcegid'. In the configuration dialog the respective setting is named
'Definitely assign the GID'.
To ensure a seamless transition, configuration updates are provided.
To enforce proper checking of the additional options provided by the user,
the "Additional options" line edit has been set read-only and the user must
use the new edit button to be able to enter the options. All options that
are not whitelisted - i.e. they have already been defined elsewhere or they
pose a potential security risk - will be removed from the list upon commit.
This is, among others, the proper fix to the security issue reported
by Heiner Markert (aka CVE-2014-2581) and initially fixed in version 1.1.2.
- Use the "-e" (--encrypt) and "--use-ccache" options with the net command
where appropriate.
- Add the ability to lookup the IP addresses of the hosts with the 'net'
command. You can choose to either use the 'nmblookup' command or the
'net' command on the 'Network' configuration page.
- Reorganized the tabs in the User Interface configuration page. There is now
a 'Miscellaneous Settings' tab that currently contains the bookmark settings.
- Moved and partly renamed four settings. They all were located under "User
Inferface" and were now moved to the "Network" and "Shares" sections in
smb4k.kcfg, respectively.
- Implemented notifications correctly. Part of the rewrite is the
transformation of the Smb4KNotification class into a namespace.
Since now the notifications can be edited via system settings, there
is no need for the "Show notifications" setting anymore that was
removed accordingly.
- Implemented selection of multiple items in the browser:
You can select multiple items in the browser by pressing either the
CTRL or Shift key. However, only share items can be selected this way.
All others are automatically deselected.
- Implement permanent (re)mounting of shares. This closes SF ticket #33.
- Require CMake version 2.8 and make it a fatal error if it is not present.
- Due to the API changes the version number of the core library was increased.
- Smb4KWalletManager now opens the wallet asynchronously. This fixes the problem
thatarose because of the timeout of KWallet::Wallet::openWallet() in synchronous
mode where the password dialog for the host/share was shown before the wallet
was opened.
Addtionally, some functions were removed and added.
- Remove setting for temporal storage of the login information. Now, the
user either stores the passwords in the wallet or needs to enter the
login information each time it is needed.
Although it might be a regression for a few users, I decided to do this
because the code can be better maintained.
- Do not use custom bookmark labels in the plasmoid.
- Fix crash that might happen due to a (misconfigured) smb.conf file
that does not contain a global section.
Many thanks go to Michael Rohde for reporting this issue.
- Remove the ability to exclude IPC$ and/or ADMIN$ shares from being
displayed when hidden shares should be listed.
This change also includes the removal of Smb4KShare::isIPC() and
Smb4KShare::isADMIN().
- Fix i18n handling in smb4k (split into 3 catalogs)
+ Added a new catalog plasma_applet_smb4k-qml with messages extracted from
plasmoid/ subdir
+ Spitted existing message extraction:
* catalog smb4k with messages extracted from smb4k/ and helpers/ subdirs
loaded via KAboutData/KComponentData
* catalog smb4k-core with messages extracted from core/ subdir
loaded via KCatalogLoader in core/smb4kglobal.cpp
- Actually, Smb4K does not need to be a kdeinit executable. So, the
modification introduced in Smb4K 1.1.0 was reverted. Thanks go to
Albert Alstals Cid for pointing this out.
- ...
Smb4K 1.1.4 (2015-01-01):
- Hopefully fixed a crash reported by Ingo Ratsdorf that happened when the
user used the "Master browsers need authentication" setting and an
authentication error occurred.
- Fix a potential crash in Smb4KMainWindow. Thanks go to Mounty One for
reporting this issue.
- When the user cancels the homes user dialog, don't show the custom options
dialog.
Smb4K 1.1.3 (2014-06-17):
- Make mounting of a password protected share work under FreeBSD, if
no password has been defined yet.
- Fixed compilation errors under FreeBSD.
Smb4K 1.1.2 (2014-05-03):
- Fixed a crash that could happen during the loading of bookmarks into
the bookmark editor's tree widget.
- Fixed the enabling and disabling of the "Up" action in the preview
dialog.
- Fixed two crashes in the previewer: The first occurred when authentication
data was requested and the password dialog was just closed and the other
one occurred when a recurring authentication error happened.
- Improved 'Command Reference' section in the handbook.
Smb4K 1.1.1 (2014-03-22):
- Fixed a string in the handbook.
- Set date when documentation was updated to 2014-03-16.
- Fixed potential security issue reported by Heiner Markert. Do not
allow the cruid option to be entered via the "Additional options"
line edit. Also, implement a check in Smb4KMountJob::createMountAction()
that removes the cruid option from the custom options returned by
Smb4KSettings::customCIFSOptions().
- Fix crash that might happen due to a (misconfigured) smb.conf file
that does not contain a global section. Many thanks go to Michael
Rohde for reporting this issue.
Smb4K 1.1.0 (2014-01-06):
- Smb4K needs KDE SC version 4.8 or later.
- Fixed many issues reported by krazy2. On the way several minor changes
to the core classes were applied.
- Made Smb4K a kdeinit executable.
- Renamed the mount helper to net.sourceforge.smb4k.mounthelper.
- Added a plasmoid. It needs KDE 4.10.0 or later. If this requirement is not
met, its installation will be skipped.
- Added Smb4KNetworkObject class that derives from QObject and encapsulates
a network item (workgroup, host, or share).
- Added Smb4KBookmarkObject class that derives from QObject and encapsulates
a bookmark.
- Introduced a new dynamic main tool bar. If you do not like it, you can enable
old tool bars via the 'Shown Toolbars' menu item.
- Added Wake-On-LAN (WOL) feature (closes SF ticket #27).
- Introduced Smb4KDeclarative class that provides an interface for Plasma/
QtQuick to the core classes.
- Improved mounting under FreeBSD. We do not need the ~/.nsmbrc file anymore
because the mount helper will feed the password to the mount process.
- Revised Smb4KGlobal namespace:
+ Merged Smb4KCore class.
+ Added Process enumeration in favor of per class solutions.
- Revised Smb4KHost class:
+ The unc() function now only returns the UNC in the form //HOST. If you
also need the username, password or port in the string, use the url()
function.
+ Removed ipChecked() function.
+ Removed infoChecked() function.
+ Added hasIP() function.
+ Added hasInfo() function.
- Revised Smb4KShare class:
+ The unc() function now only returns the UNC in the form //HOST/Share. If
you also need the username, password or port in the string, use the url()
function.
+ Added setURL() function that takes a string as argument.
- Revised Smb4KCustomOptions class:
+ Added functions for Wake-On-LAN.
+ Added functions for defining the security mode used by mount.cifs.
- Revised Smb4KBookmark class:
+ Renamed function group() to groupName().
+ Renamed function setGroup() to setGroupName().
- Removed Smb4KIPAddressScanner class. IP addresses are now looked up by
Smb4KScanner using a private job.
- Revised Smb4KBookmarkHandler class:
+ Renamed the bookmarks() functions to bookmarksList() to unify the naming.
+ Added addBookmark() function that takes an URL as argument.
+ Added two removeBookmark() functions, one taking a pointer to a Smb4KBookmark
object and one taking an URL.
+ Added private addBookmarks() function that takes a list of Smb4KBookmark
objects and optionally a boolean that indicates if the internal list of
shares should be replaced by the new one.
+ Improved bookmark editor.
- Revised Smb4KProcess class:
+ Explicitly set the language to "C", because Samba might be localized
(closes SF ticket #34).
- Revised Smb4KScanner class:
+ Added workgroups(), hosts(), and shares() functions that return lists
of type QDeclarativeListProperty<Smb4KNetworkObject>.
+ Added workgroupsListChanged() and sharesListChanged() signals.
+ Renamed hostListChanged() signal to hostsListChanged().
+ Added lookup() function that takes a QUrl as argument and initiates a
network lookup according to the URL. The URL must already be known to
Smb4K otherwise this function will not do anything.
+ Added find() function that takes a QUrl as argument and searches for
a network item with the given URL. The URL must already be known to
Smb4K otherwise this function will not do anything.
+ IP addresses are looked up every 60 s and when new hosts were discovered.
+ Improved periodic scanning.
+ Reimplemented usage of WINS server when looking up IP addresses.
+ Removed additional error code handling from
Smb4KLookupSharesJob::processShares() since auth errors should be
reported with a NTSTATUS* error message via stderr (closes SF ticket
#25).
- Revised Smb4KMounter class:
+ Added mountedShares() functions that returns a list of type
QDeclarativeListProperty<Smb4KNetworkObject>.
+ Added mountedSharesListChanged() signal.
+ Added mount() function that takes a QUrl as argument and mounts the
corresponding share. The URL must already be known to Smb4K otherwise
this function will not do anything.
+ Added unmount() function that takes a QUrl as argument (the path)
and unmounts the corresponding share. The mounted share must already
be known to Smb4K otherwise this function will do nothing.
+ Added find() function. It takes a QUrl and a boolean and returns the
mounted share, if it could be found.
+ Added ability to make several attempts to remount shares. Many thanks
go to Ettore Atalan for the suggestion.
+ Improved handling of notifications.
+ Improved handling of timer based events.
+ Fixed mounting with Kerberos. The location of the ticket is propagated
to the root environment in which the mounting is done and the 'cruid'
argument to mount.cifs is set to the users uid (closes SF ticket #32).
+ Adjusted command line under FreeBSD, so that the password can be passed
to the mount process by the mount helper.
+ Under Linux, the error message "Unable to find suitable address." is
now suppressed.
- Revised Smb4KWalletManager class:
+ When prompting for a password for a 'homes' share, use the UNC of the
user's home directory and not //SERVER/homes.
+ Removed obsolete writeToConfigFile() function under FreeBSD.
- Revised Smb4KCustomOptionsManager class:
+ The customOptions() function now takes a boolean that determines if
also entries that are only meant to be remounted are also returned.
+ The findOptions() functions take either a QUrl object or an
Smb4KBasicNetworkItem object and a boolean.
+ Added wolEntries() function that returns a list of custom options objects
that have Wake-On-LAN features defined.
+ Custom options that are defined for a host object are propagated to its
shares (if there are custom options for its shares are defined). The options
for the host overwrite the ones defined for its shares.
- Revised Smb4KSolidInterface class:
+ Removed custom code that determined that the computer woke up.
+ Connected wokeUp() signal to
Solid::PowerManagement::Notifier::resumingFromSuspend().
+ The sleep cookie is not handled internally anymore. So, the function
beginSleepSuppression() returns a cookie and endSleepSuppression()
takes a cookie.
+ Renamed Smb4KSolidInterface::NetworkStatus::Unknown to
Smb4KSolidInterface::NetworkStatus::UnknownStatus.
- Revised Smb4KSynchronizer class (and helper classes):
+ Make synchronizer work with rsync 3.1.
- Changed the way tooltip are handled. They are not owned by the widgets
anymore, but by the items.
- Revised mount helper:
+ Simplified names for the arguments that can/must be passed.
+ Under FreeBSD, the password is passed to the mount utility.
- Revised network browser:
+ Removed wrong checks that caused tooltips not being updated properly.
+ Added ability to select multiple shares and process them accordingly.
+ Improved tool bar.
+ Added ability to unmount shares. Many thanks go to Ettore Atalan for
the suggestion.
+ Files can be printed if there are still other print jobs running.
- Revised configuration dialog:
+ Added options for advanced remounting behavior.
+ Implemented shortcuts for all entries. (Labels have now their buddies
set.)
+ Moved custom options to own page, since they are no longer only related
to Samba. Wake On LAN settings and the ability to - basically - switch
off remounting have been added. Further improvements were implemented.
+ Renamed all classes that represent a page in the configuration dialog.
+ Added security modes 'ntlmssp' and 'ntlmsspi' for mount.cifs used with
Linux kernel >= 3.8.
+ Set the default security mode for mount.cifs to 'ntlmssp'.
- ... and more ...
Smb4K 1.0.9 (2013-11-03):
- With non-English languages the change introduced in version 1.0.8
might not work correctly, because e.g. umlauts are not recognized and
the shell output is truncated. Setting the language to "en_US.UTF-8"
fixes this problem.
Smb4K 1.0.8 (2013-10-19):
- Explicity set language to "C" in Smb4KProcess, because Samba might be
localized (closes SF ticket #34).
Smb4K 1.0.7 (2013-05-13):
- Fixed remounting of shares.
- Fixed Smb4KCustomOptionsManager::hasCustomOptions(). The default options
defined via the configuration dialog are honored now.
- Fixed "Ignoring unknown parameter" error messages (closes SF ticket #29).
- Fixed command line argument when a master browser is queried for the
browse list.
Smb4K 1.0.6 (2013-03-03):
- Fixed crash in Smb4KMounter::slotAuthError() due to signals being emitted
from Smb4KMountJob::slotActionFinished() too often (closes SF ticket #25).
- Fixed unmounting of selected shares. Thanks go to Ettore Atalan for
reporting this issue.
- Removed faulty and useless clean-up code from read function of
Smb4KCustomOptionsManager.
Smb4K 1.0.5 (2012-12-26):
- Fixed hanging of Smb4K if a custom mount prefix without a trailing
slash was entered (closes SF ticket #28). Thanks go to Ettore Atalan
for reporting this issue and PhobosK for the patch.
Smb4K 1.0.4 (2012-08-19):
- Fixed erroneously shown error notifications when searching. Thanks to
Alexander Willand for reporting this issue.
- Make sure that "tdb_log" messages are not shown as error notifications
to the user.
- Wait until unmounting all shares on exit finished before closing down.
- Make sure that the mount prefix and all its subdirectories correctly
inherit their permissions.
Smb4K 1.0.3 (2012-06-23):
- Make sure that output from the mount and unmount process is trimmed, so
that there are no false error messages.
- Fixed error notifications being shown although mounting and unmounting
shares was successful.
Smb4K 1.0.2 (2012-05-30):
- Fixed two potential crashes in class Smb4KHomesSharesHandler.
- Fixed a wrong comparision between QString and QByteArray in
Smb4KMountJob::slotActionFinished().
- Fixed a wrong comparision between QString and QByteArray and a double
declaration in Smb4KUnmountJob::slotActionFinished().
- Fixed wrong assumption that qreal equals double in Smb4KShare class.
Patch by Rex Dieter from the Fedora Project.
- Fixed missing assignments of the IP address in Smb4KAuthInfo::setHost()
and Smb4KAuthInfo::setShare().
- When prompting for a password for a 'homes' share, use the UNC of the
user's home directory and not //SERVER/homes.
- When mounting a 'homes' share, show the UNC of the user's home directory
in the mainwindow's status bar instead of //SERVER/homes.
- Fixed a crash in Smb4KMountJob::slotActionFinished() reported by
Peter Trenholme.
- Fixed unmounting on exit. Many thanks go to Peter Trenholme for reporting
this issue.
Smb4K 1.0.1 (2012-03-11):
- Fixed potential crash in Smb4KWalletManager::init().
- Fixed KDEInit complaining when Smb4K is started from a desktop icon
(closes SF ticket #23).
- Fixed periodic scanning.
Smb4K 1.0.0 (2012-02-01):
- KDE SC 4.4.0 and Qt 4.7.0 or later are required.
- We now use Utf8 throughout the whole application (closes #14674 and
#17535).
- Unified the function names of the core classes that set and return the
workgroup name, host name, and share name.
- Made the core container classes use QUrls internally where appropriate.
- Added ability to install core header files by passing the new
-DINSTALL_HEADER_FILES=true configuration option to cmake. By default,
no header files will be installed.
- Revised Smb4KSettings class:
+ Removed the program entries from this class. Each core class that needs
an external program searches for itself.
+ Added entries for handling notifications.
+ Removed all entries related to the old mounting/unmounting implementation.
- Revised Smb4KAuthInfo class:
+ Removed old constructor.
+ Added two new constructors.
+ Added type enumeration and function.
+ Added setUNC() and unc() functions.
+ Renamed user() and setUser() functions login() and setLogin().
+ Removed the setHomesUser() function. Use setLogin() instead.
+ Removed setHomesUsers() and homesUsers() functions.
+ setShare() now automatically uses Smb4KShare::homeUNC() to set the UNC,
if you pass a homes share.
+ Added equals() function.
+ Added "==" operator.
+ Added setIP() and ip() functions.
+ Renamed setDefaultAuthInfo() to useDefaultAuthInfo().
- Revised Smb4KWalletManager:
+ Fixed several bugs.
+ The IP address is now also saved to the wallet.
+ Also return correct authentication information if only the IP address is
given (hosts only).
+ Introduced readDefaultAuthInfo() and writeDefaultAuthInfo() functions.
+ Rewrote readAuthInfo() and writeAuthInfo() functions. Among other things,
they now take a Smb4KBasicNetworkItem object as argument.
+ showPasswordDialog() function now takes a Smb4KBasicNetworkItem object
as argument.
- Introduced Smb4KBasicNetworkItem class. Smb4KWorkgroup, Smb4KHost and
Smb4KShare inherit this class.
- Revised Smb4KWorkgroup class:
+ Added equals() function.
+ Added hasMasterBrowserIP() function.
+ Added "==" operator.
+ Remove setMasterBrowser() convenience function.
- Revised Smb4KHost class:
+ Added setAuthInfo() function. You can set the user info of the UNC/URL with
it.
+ Added setURL() and url() functions.
+ Added unc() function.
+ Added setLogin() and login() function. They store the login that was used
to authenticate to a host.
+ Added setPort() and port() function.
+ Added equals() function.
+ Added hasIP() function.
+ Removed the protocol functions.
+ Added "==" operator.
- Revised Smb4KShare class:
+ Replaced setCIFSLogin() and cifsLogin() with setLogin() and login().
+ Removed cifsLoginIsSet() function.
+ The equals() function now takes a pointer instead of a reference.
+ Removed setUNC() function because it caused a lot of trouble.
+ The setMountData() function does not set and the resetMountData() function
does not reset the login anymore.
+ The login is now empty by default.
+ Added setAuthInfo() function. You can set the user info of the UNC/URL with
it.
+ Added hasHostIP() function.
+ Added homeUNC() function that returns the UNC of the user's home repository
in case of a 'homes' share.
+ Renamed type() to typeString(), setType() to setTypeString() and
translatedType() to translatedTypeString() to avoid problems with
Smb4KBasicNetworkItem::type().
+ The default value for typeString() is now "Disk".
+ Removed uidIsSet() function.
+ Removed gidIsSet() function.
+ Added "==" operator.
+ Removed setHomesUsers() and homesUsers() functions.
+ The path() and canonicalPath() functions return a QString.
- Revised Smb4KCore class:
+ Removed all *State() convenience functions.
+ setDefaultSettings() will only set the first entry of the interfaces option
from smb.conf as default broadcast address, if it is recognized as IP address.
That means entries like "eth0", "192.168.2.10/24", etc. are neglected.
- Added Smb4KSolidInterface class that notifies Smb4K about hardware related
changes.
- Added Smb4KProcess class that is used to execute all processes of the core.
It inherits KProcess and comes with a few extensions.
- Revised Smb4KMounter class:
+ Completely rewrote this class.
+ We are using KJobs and a KAuth inplementation. The utility programs are
no longer needed and were removed!
+ Added mountShares() function that mounts a list of shares at once.
+ Added openMountDialog() function that opens the mount dialog.
+ The mount dialog is a private helper class now. It has been revised.
+ Added unmountShares() function that unmounts a list of shares at once.
Made unmountAllShares() call this function with
Smb4KGlobal::mountedSharesList() as one of the arguments.
+ Added slotHardwareButtonPressed() slot that initiates the unmounting of
all shares when the computer enters one of the sleep states.
+ Added slotComputerWokeUp() slot that triggers the remounting of shares when
the computer woke up from a sleep state.
+ Added saveSharesForRemount() function that is used when the application
exits or when the computer goes to sleep to save the currently mounted
shares.
+ Rewrote slotAboutToQuit() slot.
+ The import() function has been rewritten (closes #16169). Among other things,
shares that were mounted under Linux with the obsolete SMBFS file system are
no longer imported.
+ Added 'servern' and 'netbiosname' mount options. They are only used, if a
connection to a remote host is attempted via port 139.
+ Added aboutToStart() signal that is emitted when a mount process is about
to start.
+ Added finished() signal that is emitted when a mount process finished.
+ Replaced old updated() signal with one that emits the share that was updated.
+ Before the mounted() and unmounted() signals are emitted, we check if the
(un)mounting was successful.
+ Added 'sec' argument for mount.cifs under non-FreeBSD operating systems.
+ Removed all state functions.
+ A warning message is shown when the user attempts the unmounting of a share
that is owned by another user.
- Removed Smb4KSambaOptionsInfo class.
- Removed Smb4KSambaOptionsHandler class.
- Added Smb4KCustomOptions class as a replacement for Smb4KSambaOptionsInfo class.
- Added Smb4KCustomOptionsManager class as a replacement for Smb4KSambaOptionsHandler
class. Among other changes, the custom options dialog is now a private helper
class.
- Revised Smb4KSynchronizer class:
+ Completely rewrote this class and its private helpers.
+ Introduced Smb4KSynchronizer::self().
+ Made constructor and destructor private.
+ Improved abort() function. It takes a share item and you can abort the
corresponding synchronization process with it.
+ Incoming synchronization request are now executed in parallel, because we
are using KJobs.
+ Added abortAll() function that aborts all running synchronization processes
at once.
+ Added isRunning( Smb4KShare * ) function. You can test with it if a certain
synchronization process is running.
+ Added aboutToStart( const QString & ) signal that is emitted when a
synchronization process is about to start.
+ Added finished( const QString & ) signal that is emitted when a
synchronization process finished.
+ The synchronization dialog is now a private helper class.
+ By default, the destination directory offered by the synchronization dialog
is now RSYNC_PREFIX/HOST/Share.
- Removed Smb4KSynchronizationInfo class. It is not needed anymore.
- Removed Smb4KPrintInfo class. It is not needed anymore.
- Revised Smb4KPrint class:
+ Completely rewote this class and its private helpers.
+ Dependencies on dvips and enscript are gone.
+ Introduced Smb4KPrint::self().
+ Made constructor and destructor private.
+ Improved abort() function. It takes a share item and you can abort the
corresponding print process with it.
+ Incoming print requests can now be processed in parallel, because we are
using KJobs.
+ Added abortAll() function that aborts all running print processes at once.
+ Added new isRunning( Smb4KShare * ) function. You can test with it if a
print process using a certain printer is running.
+ Added aboutToStart( Smb4KShare * ) signal that is emitted when a print
process is about to be started.
+ Added finished( Smb4KShare * ) signal that is emitted when a print process
finished.
+ The print dialog is now a private helper class.
- Revised Smb4KScanner class:
+ Completely rewrote this class and its private helpers.
+ Introduced Smb4KScanner::self().
+ Made constructor and destructor private.
+ Removed old abort() function.
+ Incoming scan requests can now be processes in parallel, because we are
using KJobs.
+ Added abortAll() function that aborts all running scanning processes at once.
+ Added new abort() function. You can abort a certain process or process group
with it.
+ Added new isRunning() function.
+ Renamed all public functions that retrieve information from the network
neighborhood. Have a look at the class documentation to find out more.
+ Removed private appendWorkgroup() function.
+ Removed state() signal.
+ Renamed members() signal to hosts().
+ Removed deprecated ipAddress() signal.
+ Fixed minor issues on the command lines. In some situations this should
improve the accessibility.
+ The login that was used to authenticate is now passed to each host object.
+ Misconfigured master browsers that do not belong to a workgroup are ignored.
+ The workgroup entry with id <1d> is recognized.
+ A workgroup will be ignored if the master browser could not be determined.
+ Added aboutToStart() signal that is emitted when a scan process is about to
start.
+ Added finished() signal that is emitted when a scan process finished.
+ When looking up shares, the port defined for the host passed to the scanner
is honored.
+ Added ability to scan the network neighborhood periodically (closes #15829).
+ Fixed 'Invalid command: net rap share list' error by removing the ability
to auto detect the protocol when scanning a server for its shared resources.
- Removed Smb4KPreviewItem class. It is not needed anymore.
- Revised Smb4KPreviewer class:
+ Completely rewrote this class and its private helpers.
+ Introduced Smb4KPreviewer::self() class.
+ Made constructor and destructor private.
+ Improved abort() function. It takes a share item and you can abort the
corresponding preview process with it.
+ Introduced isRunning( Smb4KShare * ) function.
+ Added aboutToStart( Smb4KShare *, const QUrl & ) signal.
+ Added finished( Smb4KShare *, const QUrl & ) signal.
+ Incoming preview requests can now be processed in parallel, because we are
using KJobs.
+ The preview dialog is a private helper class now. During the transition it
was improved significantly.
- Revised Smb4KSearch class:
+ Completely rewrote this class and its private helpers.
+ Introduced Smb4KSearch::self() class.
+ Made constructor and destructor private.
+ Incoming search requests can now be processed in parallel, because we are
using KJobs.
+ Improved abort() function. It takes the search item and you can abort the
corresponding search process with it.
+ Introduced isRunning( const QString & ) function.
+ Introduced abortAll() function.
+ Added aboutToStart( const QString & ) signal.
+ Added finished( const QString & ) signal.
- Revised Smb4KIPAddressScanner class:
+ Completely rewrote this class and its helpers.
+ Introduced lookup(), getHost() and getWorkgroup() functions.
+ Removed the auto scan ability, because it was not needed.
+ Incoming lookup requests can now be processed in parallel, because we are
using KJobs.
+ Added isRunning() function.
+ Added abortAll() function.
+ Added aboutToStart( Smb4KHost * ) signal.
+ Added finished( Smb4KHost * ) signal.
- Revised Smb4KHomesSharesHandler class:
+ Moved homes user dialog to an own class.
+ The dialog can now be resized and text completion has been added.
+ Removed setHomesUsers() functions.
+ Added homesUsers( Smb4KShare * ) function.
+ Refactored code.
+ Added ability to define whether a user name for a homes share should
be overwritten or not.
- Revised Smb4KBookmark class:
+ Added setLogin() and login() function.
+ Added equals() function.
+ Added "==" operator.
+ Added setURL() and url() functions.
+ Added setIcon() and icon() functions.
- Revised Smb4KBookmarkHandler class:
+ Did a major revision.
+ Added the ability to assign a group to the bookmark(s) (closes #18001).
+ Modified the addBookmark() function that takes a Smb4KShare object and
removed the one that took a Smb4KBookmark object.
+ Added addBookmarks() function.
+ Made writeBookmarkList() private.
+ Removed getBookmarks() function and replaced it with bookmarks() and
bookmarks( const QString & ) functions. The former one returns all
bookmarks, the latter one all bookmarks belonging to the specified group.
+ Added editBookmarks() function. All editing is now done by this core class.
Thus the bookmark editor is now private helper functions.
+ Added a private dialog to add bookmarks.
+ The login is now stored in the bookmark.xml file.
+ Removed code that dealt with old bookmark files.
+ Added check if the UNC is valid. If it is not, the bookmark will be ignored.
- Revised Smb4KGlobal namespace:
+ Removed tempDir() function, since we do not need it anymore.
+ Added addWorkgroup(), removeWorkgroup() and clearWorkgroupsList()
functions.
+ Added addHost(), removeHost(), clearHostsList() and workgroupMembers()
functions.
+ Added addMountedShare(), removeMountedShare(), clearMountedSharesList()
and onlyForeignMountedShares() functions.
+ Functions that manipulate the lists have now mutexes to serialize the
access.
+ All functions that add or remove items to the global lists return a boolean.
+ Removed all replaceXXX() functions.
+ All functions returning one of the global lists return constant references
instead of pointers.
+ Added globalSambaOptions() and winsServer() functions. They were moved from
the removed Smb4KSambaOptionsHandler class.
+ Added Smb4KEvent class that handles Smb4K specific events.
- Added Smb4KNotification class. It shows notifications to the user.
- Removed Smb4KCoreMessage class in favor of Smb4KNotification.
- Added Smb4KToolTip class that is to replace all other tooltip implementations.
- Revised shares view:
+ Adjusted the code so that the new abilities that the reworked synchronizer
offers can be used.
+ Added "Add Bookmark" action (closes #14217).
+ Multiple shares can now be selected.
+ The tool tips are now shown when the QEvent::ToolTip event occurrs and
not by our own implementation.
+ Replaced slotMountedShares() by three slots: slotShareMounted(),
slotShareUnmounted() and slotShareUpdated().
+ Revised Smb4KShares*ViewItem classes. This includes the removal of the
Smb4KSharesViewItemData class.
+ Removed Smb4KSharesViewToolTip class. We are now using Smb4KToolTip.
+ Honor KDE's icon size settings.
+ Shares that are owned by other users are now marked with a red flag.
+ The "Unmount All" action gets disabled when only shares are shown that
are owned by other users and the user is not allowed to unmount them
(i.e. Smb4KSettings::unmountForeignShares() returns false).
+ Removed the "Force Unmounting" action. Instead, you can enable the
forced unmounting of inaccessible shares on the "Shares" page in the
configuration dialog.
- Revised network browser:
+ Adjusted the code so that the new abilities that the reworked print code
offers can be used.
+ Adjusted the code so that the new wallet manager can be used.
+ The type of the share is now translated.
+ The tool tips are now shown when the QEvent::ToolTip event occurrs and
not by our own implementation.
+ If during an IP scan no workgroup master browsers could be found, all
discovered hosts of that workgroup will be shown nontheless.
+ The default short cut for rescanning is now F5. CTRL+R is still valid.
+ Revised Smb4KNetworkBrowserItem class.
+ Removed Smb4KNetworkBrowserToolTip class. We are now using Smb4KToolTip.
+ Honor KDE's icon size settings.
+ Only rescan the network item if the user executes the item. Previously also
expanding the item had the same effect.
- Revised search widget:
+ Renamed widget class to Smb4KNetworkSearch.
+ Honor KDE's icon size settings.
+ Hosts are no longer displayed. Only shares are shown.
+ Removed ability to add hosts to the browser. The user will be given a complete
list of shares when searching for the host name, so that there is no need to
add the host to the browser.
+ Searches with IP addresses are no longer supported.
+ Added search and abort tool buttons next to the search item input.
- Revised configuration dialog:
+ Added "Laptop Support" page where the user can set options that are important
when you use a laptop.
+ Reintroduced scroll capabilities to the pages of the configuration dialog, so
that the configuration dialog is fully visible also with small screens.
+ Added ability to define the security mode for mounting to the Samba page.
+ Removed the edit lines for the default username and password. If you choose
to use a default login, a password dialog will pop up where you can enter the
needed information. This way, the password dialog for the wallet will only be
shown when it is actually needed.
+ Added editor for the wallet entries. There is no need for KWalletManager
anymore to edit or remove logins.
+ Improved editor for the custom options.
+ Improved checks for empty entries.
+ Removed settings related to the system tray icon.
+ Added settings related to notifications.
+ Removed obsolete "Super User" settings page.
+ Improved buttons of the user and group input widgets of the Samba page.
+ Renamed "Client Programs" tab to "Utility Programs".
+ Added setting to automatically expand network items in the network browser.
+ Added setting to force the unmounting of inaccessible shares to "Shares"
configuration page. It is disabled by default.
- Added new bookmark menu.
- Revised main window:
+ The icon in the status bar, that indicates the status of the authentication
system now shows a key if the wallet system is not used, i.e. we are in
password dialog mode.
+ Added an improved "Add Bookmark" action.
+ Improved visual (mount) feedback (closes #15899).
+ Fixed saving and restoring of the dock widgets (closes #15899).
+ Improved status messages.
+ Use new bookmark menu.
- Revised system tray icon:
+ Smb4KSystemTray inherits KStatusNotifierItem class.
+ Removed functions for embedding the system tray window. The icon will now always
reside in the tray.
+ The system tray icon will be set passive (will be hidden) if no workgroups could
be found and no shares were mounted.
+ Use new bookmark menu.
- Removed utility programs in favor of the new KAuth implementation.
- Updated handbook.
- ... and more ...
Smb4K 0.10.12 (2011-12-04):
- Fixed wrong QString to char conversion in the mounter.
- Adjusted author's e-mail address and the project's home page and bug
report mailing list addresses due to the relocation of Smb4K to
Sourceforge.net.
Smb4K 0.10.11 (2011-11-13):
- The application is using UTF8 now. This should fix the incompatibility
with non-Latin1 languages.
- Smb4KAuthInfo::login() and Smb4KAuthInfo::password() return a QString.
- Smb4KShare::path() and Smb4KShare::canonicalPath() return a QString.
- Connect configuration dialog with system tray widget, so that changes
can directly be applied.
- Fixed KLibrary warnings during runtime.
Smb4K 0.10.10 (2011-03-08):
- Fixed "Invalid command: net rap share list" error.
- Improved smb4k_sudowriter utility program. Version has been bumped to 0.4.
Smb4K 0.10.9 (2010-09-11):
- Fixed restoring of wrong file permissions for sudoers file (closes #17481).
Smb4K 0.10.8 (2010-08-21):
- Cope with trailing slashes in the UNC. Needed for cifs-utils package under
Linux.
- Fixed crashes in Smb4KSystemTray::slotSetupSharesMenu().
- Fixed crashes in Smb4KScanner::scanForWorkgroupMembers().
Smb4K 0.10.7 (2010-04-07):
- Replace broken backported smb4k_umount binary with a fixed one from the
0.10 branch. This way you won't get the "unknown argument" errors anymore.
Smb4K 0.10.6 (2010-03-24):
- Include files are no longer installed.
- Added updated portugese translation. Thanks to Fathi Boudra for sending the
link and Américo Monteiro for the translation.
- Fixed missing of shares that have no comment (closes #16837 and presumably
also #3009 and #7949).
- Fixed listing of shares when a "creating lame ..." message appears on stderr
(closes #16849).
- Backported smb4k_umount from SVN HEAD. Under non-FreeBSD operating systems
it falls back to use umount directly if umount.cifs could not be found.
- Removed check for mount and umount binaries from Smb4KCore::searchPrograms().
smb4k_mount and smb4k_umount will complain if they do not find them.
Smb4K 0.10.5 (2010-02-13):
- Fixed a crash in Smb4KSambaOptionsHandler::addItem().
- The copy constructor of Smb4KAuthInfo class now takes a constant reference.
Smb4K 0.9.10 (2010-01-30):
- Prevent the scanner from trying to do something before the application
has completely started up.
- Replaced Smb4KPasswordHandler class with the backported Smb4KWalletManager
class (should close #14703).
- Smb4KHomesSharesHandler class has to be accessed via a static pointer
now.
- Fixed problems with Samba 3.3 (among others closes #15276).
- Revised Smb4KGlobal namespace:
+ Removed passwordHandler() function. Use Smb4KWalletManager::self()
instead.
+ Removed homesHandler() function. Use Smb4KHomesSharesHandler::self()
instead.
+ Removed timer() function. It was long deprecated and not used
anymore.
- Adjusted code to use the new infrastructure.
- Fixed compilation errors under CentOS 4.8.
- Bumped version of the core library to 2.1.0.
Smb4K 0.10.4 (2009-10-01):
- Fixed crash in the main window that made Smb4K unusable when no bookmarks
were defined.
Smb4K 0.10.3 (2009-09-30):
- Fixed failing of error recognition when mounting shares with Samba >= 3.3.
- Backported Smb4KAuthInfo class from CVS HEAD. This should close the crash
in Smb4KAuthInfo::unc() under KDE 4.3.
- Fixed network search code so that no comment shows up in the UNC with longer
share names.
- Silenced enscript, so that no erroneous error messages are shown when printing.
- Bumped soname of core library to version 3.2.0.
- Fixed crash in system tray and a potential one in the main window
(closes #15970).
- Fixed saving and restoring of main window layout.
Smb4K 0.10.2 (2009-02-22):
- Revised Smb4KMounter class:
+ Under Linux, the import function does not insert a share with SMBFS
file system twice anymore.
+ Prevent the mounter from trying to do something before the application
has completely started up.
+ Replaced the file system port with the SMB port under FreeBSD.
- Revised Smb4KScanner class:
+ Fixed wrong error handling in Smb4KScanner::processWorkgroupMembers()
when an authentication error occurred.
- Revised Smb4KSambaOptionsHandler:
+ Fixed "Invalid command:" bugs with Samba 3.3 (closes #15276).
+ Replaced all occurences of the file system port by the SMB port.
- Added missing function declaration of Smb4KPrintInfo::setShareItem().
- Revised Smb4KCore class:
+ Fixed wrong connection to the previewer.
- Fixed potentially missing comma at the end of the string that is passed
by Smb4KSambaOptionsHandler::mountOptions() under Linux.
- Backported the new wallet manager from CVS (closes #14703).
- Backported improved Smb4KAuthInfo class.
- Backported Smb4KHomesSharesHandler::setHomesUsers( Smb4KAuthInfo * ).
- Bumped version of core library to 3.1.0.
- Reintroduced editing of the IP address in the bookmark editor.
- Fixed removing of 'homes' users list from the "Specify User" dialog.
- Backported wallet usage indicator in the main window.
- Modified the Samba configuration page:
+ Fixed a crash in the "Custom Options" tab.
+ Removed the file system port entry under FreeBSD.
Smb4K 0.9.9 (2008-11-05):
- Prevent the mounter from trying to do something before the application
has completely started up (closes #14703).
Smb4K 0.10.1 (2008-10-12):
- Fixed compilation errors due to missing #include statements.
- Fixed a wrong test string in Smb4KMounter::processMount().
- Fixed a crash and a bug in the smb4k_sudowriter utility program. Bumped
version to 0.2.
- Fixed an infinite loop in Smb4KSambaOptionsHandler::readCustomOptions().
Smb4K 0.9.8 (2008-10-10):
- Backported smb4k_sudowriter utility program. It directly writes to
the /etc/sudoers file and thus finally fixes the messed-up-sudoers-file
bug.
- Removed smb4k_cat utility program. It's not needed anymore.
- Removed smb4k_mv utility program. It's not needed anymore.
- Removed the support for the program 'super'. If you used it before, you
need to reconfigure Smb4K.
- Completely rewrote Smb4KFileIO class to support smb4k_sudowriter.
- Removed the "Programs" widget from the "Super User" configuration page.
It is not needed anymore.
Smb4K 0.10.0 (2008-08-30):
- Ported Smb4K to KDE4 only.
- Moved the build system to cmake.
- Applied lots of small optimizations.
- Fixed many GCC 4.3 related warnings.
- Removed support for IRIX and Solaris. If you want to have it back, please
join the Smb4K project and help with development.
- Removed Franck Babin from the list of authors because Smb4K does not
contains any code from him anymore.
- Did a major rewrite of all KProcess related functions in the core classes,
because the API of the KProcess class changed.
- Replaced Smb4KError by Smb4KCoreMessage class:
- Moved error codes from smb4kdefs.h to here.
- Added several error codes.
- Removed unused error codes.
- Modified Smb4KSettings class:
+ Renamed several configuration entries. Transition will be seamless due to
automatic updating.
+ Removed support for deprecated SMBFS file system (Linux).
+ Added port for the file system. Its default value is 445 (CIFS).
- Modified Smb4KGlobal class:
+ Removed Smb4KGlobal::timer(). It is replaced by per-class solutions.
+ Removed Smb4KHomesShareHandler class. Use Smb4KHomesSharesHandler::self()
instead.
+ Removed Smb4KPasswordHandler class. Use Smb4KPasswordHandler::self()
instead.
+ Removed Smb4KSambaOptionsHandler class. Use Smb4KSambaOptionsHandler::self()
instead.
+ Added workgroupsList() function that returns the list of all discovered
workgroups.
+ Added hostsList() function that returns the list of all discovered hosts.
+ Added mountedSharesList() function that returns the list of all discovered
mounted shares.
+ Added findWorkgroup() function. It replaces all previous per-class
solutions.
+ Added findHost() function. It replaces all previous per-class solutions.
+ Added findShareByUNC() function. It replaces all previous per-class
solutions.
+ Added findShareByPath() function. It replaces all previous per-class
solutions.
+ Added findInaccessibleShares() function. It replaces all previous per-class
solutions.
- Revised Smb4KAuthInfo class:
+ Added setWorkgroup() function.
+ Added setHost() function.
- Rewrote Smb4KBookmark class and introduced several improvements.
- Revised Smb4KBookmarkHandler class:
+ Improved addBookmark() function. It now also takes a second argument
that determines if an existing bookmark should be overwritten/updated.
+ The bookmarks are now saved in an XML file. The old data will be imported
automatically.
+ Replaced Smb4KBookmarkHandler::findBookmarkByName() function by
Smb4KBookmarkHandler::findBookmarkByUNC().
+ Removed obsolete code.
- Replaced Smb4KWorkgroupItem class with the new Smb4KWorkgroup container
class.
- Replaced Smb4KHostItem class with the new Smb4KHost container class.
- Rewrote Smb4KShare class and merged Smb4KShareItem class with it. Please
consult the class documentation for information about changes.
- Revised Smb4KPreviewer class:
+ Removed isInitialized() function.
+ Added getPreview() function.
- Revised Smb4KPreviewItem class:
+ Removed several functions.
+ Introduced shareItem() function. Through it you can access information about
the share.
- Revised Smb4KPrintInfo class:
+ The constructor now only takes a Smb4KShare object. You have to set the path
to the file and the number of copies by the other functions provided by the
class.
+ Removed ipIsValid() function, because the check was already done in the
Smb4KShare constructor.
- Modified Smb4KSynchronizer class:
+ Removed support of old rsync versions.
- Revised Smb4KSynchronizationInfo class:
+ Renamed setIndividualProgress() function setCurrentProgress().
+ Renamed individualProgress() function currentProgress().
- Revised Smb4KMounter class:
+ Renamed the mountedShare() signal to mounted().
+ Optimized the import() function.
+ Renamed getBrokenShares() function to getInaccessibleShares().
+ Improved check for the share's file system, accessibility and free and total
disk space.
+ Revised Smb4KMounterPrivate private class and adjusted the code accordingly.
+ Renamed findShareByName() function findShareByUNC(). It now returns a list
of pointers.
+ Smb4KMounter now makes use of Smb4KGlobal::mountedSharesList().
+ The findShareByPath() function now takes a QByteArray as argument.
+ Improved remounting. Smb4K will try on every start-up to remount the share
until the server becomes available (closes #13217).
+ Improved remounting. The IP address and the workgroup are now used.
+ Removed support for the suid program super.
- Revised the Smb4KSambaOptionsInfo class:
+ Added setHasCustomOptions() function.
+ Added hasCustomOptions() function.
+ Added two constructors, one taking a Smb4KHost item and the empty one.
+ Removed the constructor taking the UNC string. Use the empty constructor and
the setUNC() function instead (if needed).
+ Added workgroup() and setWorkgroup() functions.
+ Added ip() and setIP() functions.
+ The protocol functions use an enumeration instead of strings.
+ The file system functions use an enumeration instead of strings.
+ The write access functions use an enumeration instead of booleans.
+ The kerberos functions use an enumeration indead of booleans.
+ Added update() function.
+ The UID functions now use uid_t instead of QString.
+ The GID functions now use gid_t instead of QString.
+ Added uidIsSet() function.
+ Added gidIsSet() function.
+ Added setProfile() and profile() function for future extension.
- Revised Smb4KSambaOptionsHandler:
+ Added static self() function and made the constructor and destructor
private.
+ Improved check if the custom options are different from the default values.
Because of this, less data needs to be written to the config file.
+ Improved the read_smb_conf() function.
+ There are three netOptions() functions, each taking different arguments.
+ Added sharesToRemount() function that only returns information for those
shares that are to be remounted.
+ Added private function get_host() that searches a host in the global hosts
list.
+ The options handler now reads and writes the host's IP address and workgroup
as well.
+ The options are now saved to an XML file. The old data will be imported
automatically.
+ Removed support for the deprecated SMBFS file system (Linux).
- Revised Smb4KScanner class:
+ The constructor now takes a QObject as only argument. Smb4KScanner makes now
use of the new global workgroups and hosts lists.
+ The getShares() function now takes a Smb4KHostItem object.
+ The getWorkgroupMembers() function now takes a Smb4KWorkgroupItem object.
+ The getInfo() function now takes a Smb4KHostItem object.
+ Moved IP address check from searchForHost() to search() function.
+ The internal workgroup and host list are never cleared but updated.
+ Revised processWorkgroups() function.
+ Revised processWorkgroupMembers() function.
+ Revised processShares() function. It now checks if the share is mounted.
+ Removed code that looks up IP addresses.
+ Removed code that searches for hosts.
- Revised the Smb4KPasswordHandler class:
+ Added static self() function and made the constructor and destructor
private.
+ Added init() function that attempts to open the wallet asynchronously.
+ Added canReadAuthInfo() function that returns TRUE if you can retrieve
authentication information upon request.
+ Added readyReadAuthInfo() signal that is emitted when the password
handler enters a state where you can retrieve authentication information
upon request.
- Revised Smb4KPrint class:
+ Added a queue where the print jobs are stored as long as they are processed.
+ Added startTimer(), killTimer(), timerEvent() combo to process the incoming
print requests.
+ Removed slotRetry() because it was obsolete.
- Introduced new Smb4KIPAddressScanner class, that operates on the global host
list and looks up the IP address for each host.
- Introduced Smb4KSearch class, that looks up the search strings the user
provided through the search dialog. This now also includes remote shares. The
search program to use will determined automatically (smbtree or nmblookup).
- Revised Smb4KCore class:
+ The open() convenience function has been revised.
+ Rewrote searchPrograms() function so that only those utility programs are
found that belong to the current release and we do not run into problems
with parallel KDE 3 installations of Smb4K.
- Revised Smb4KHomesSharesHandler class:
+ The user names for the homes shares are now saved to an XML file. The old
data will be imported automatically.
+ Replaced private read_names() and write_names() functions by readUserNames()
and writeUserNames().
+ The specifyUser() function now takes a pointer to an Smb4KShare object as
argument and returns a boolean.
- Removed Smb4KFileIO class.
- Introduced Smb4KSudoWriterInterface class that handles writing to the sudoers
file from within Smb4K.
- Bumped version of core library to 3.0.0.
- Revised bookmark editor:
+ Removed actionCollection() function because it is not used.
+ Removed the "Delete All" menu entry because you can now select multiple
bookmarks and remove them with the redesigned "Delete" menu entry.
+ Added the "Edit" action to the popup menu.
- Revised custom options dialog:
+ The dialog is now resizeable.
+ Reverted to combo boxes for the UID and GID entries. The entries are
now more informative since besides the UID/GID the user/group name
is shown.
- Revised preview dialog:
+ If the mimetype is known, the files will have the appropriate icons.
- Revised print dialog:
+ The dialog is now resizeable.
- Revised synchronization dialog:
+ The dialog is now resizeable.
+ The URL requesters now support squeezed text.
- Revised configuration dialog:
+ All labels are now taken from Smb4KSettings entries.
+ Tidied up the Custom Options dialog.
+ Several entries are now arranged in combo boxes.
+ Removed "Network Search" group box from "Network" configuration page
since with the new search method there is no need to choose a program
for searching.
+ Merged Samba client programs tabs. The new one is named "Client Programs".
+ Redesigned the "Custom Settings" tab on the "Samba" configuration page.
+ Improved writing/removing of super user entries.
+ The (global) UID and GID input widgets were changed. The displayed UID
and GID are now read-only and you have to choose the new values from a
context menu.
+ Removed "Drag & Drop" box from the "User Interface" page. Drag and drop
is now always enabled where implemented.
+ Removed all options that belonged to the deprecated SMBFS file system
(Linux and similar operating systems).
+ Added port for use with the file system.
+ Moved the "Shares View" box from "User Interface"->"Main Window & System
Tray" to "User Interface"->"View" and merged it with the "List View" box.
+ Removed "Programs" box from the "Super User" page.
- Revised the network browser:
+ Items are expanded after the search process ended and not before.
+ Removed several obsolete functions from Smb4KNetworkBrowserItem class.
+ Removed Smb4KNetworkBrowser::closeToolTip() and ::aboutToShowToolTip()
signals. The tool tip now emits similar signals.
+ Implemented Smb4KNetworkBrowser::enterEvent() and
Smb4KNetworkBrowser::leaveEvent() to keep track of the mouse.
+ Added Smb4KNetworkBrowser::mouseInside() and
Smb4KNetworkBrowser::mouseOutside() signals that are emitted when the mouse
entered and left the network browser, respectively.
+ The behavior of the rescan action changed slightly. If you move the mouse
outside the widget, the rescan will be affected by the selected item and not
by the fact that the mouse is outside.
+ Revised and improved the tool tip management.
+ Removed Smb4KNetworkBrowser::blockToolTips(), because it is not needed
anymore.
+ Added several functions to Smb4KNetworkBrowser to make it comply with
KDE's global settings.
+ Added ability to move columns and save their positions.
- Revised search dialog:
+ Adjusted search dialog to the requirements of the new search core class.
It now displays servers and shares.
+ Added ability to mount shares.
+ Removed push buttons next to the combo box from the widget.
+ Added search menu and tool bar.
+ Added popup menu.
+ The list widget is automatically cleared when a new search was started.
+ Moved all slots from Smb4KSearchDialog to Smb4KSearchDialogPart class.
+ The Smb4KSearchDialogItem::setupItem() function replaces the previous
Smb4KSearchDialogItem::setIcon(), because it collided with
KListWidget::setIcon().
- Revised shares view:
+ Merged list view and icon view into one KPart (Smb4KSharesViewPart).
+ Added Smb4KSharesViewItemData container class that carries the information
needed by the items and the tool tips.
+ The units used to display the disk usage were corrected. Smb4K has
always shown values with radix 2, so we have to use KiB, MiB, GiB, ...
+ The list view and the tool tips now show the owner and group also with
the CIFS file system.
+ Added ability to move columns and save their positions when the list view
is used.
+ With foreign shares the unmount actions are only enabled when the user is
allowed to unmount those (see configuration dialog).
+ Removed usage bar from the list view, since with the methods available for
the QTreeWidgetItem class this either cannot be achieved (?) or looks very
ugly. The usage in percent is still shown.
+ Drag and Drop support is now always enabled. You can drop URLs onto items
and drag a share outside Smb4K.
- Rewrote main window:
+ Smb4KMainWindow replaces Smb4KApp class.
+ The KParts are now organized in tabs by default.
+ The main tool bar has been extended, but it is hidden by default. The user
can reach its functions through the menu.
- Modified utility programs:
+ Introduced smb4k_sudowriter utility program that writes to the sudoers file.
This finally fixes the corrupted-sudoers-file issues that were reported by
several users.
+ Removed smb4k_cat utility program because its not needed anymore.
+ Removed smb4k_mv utility program because its not needed anymore.
- Updated handbook.
Smb4K 0.9.7 (2008-08-29):
- Backported rewritten Smb4KCore::searchPrograms() function that garantees
that the correct utility programs are found and we do not run into
trouble with another Smb4K installation on the system (i.e. in KDE 4).
- Fixed error message box in Smb4KConfigDialog::checkSettings().
- Fixed Smb4KPasswordHandler::writeAuth(). Incorrect login data is now
properly overwritten in no-wallet mode.
- Backported improved Smb4KAuthInfo class.
- Added hicolor fall back icons. They are actually copies of the crystal
ones.
- Updated Swedish translation. Thanks go to Leslie Jensen for the update.
Smb4K 0.9.6 (2008-06-15):
- Fixed crash when the search item was empty: Pressing RETURN instead
of activating the search action will not start a search and
Smb4KScanner::search() now just returns when the search string is
empty.
- Revised synchronization.
+ Rewrote Smb4KSynchronizer::slotReceivedStdout().
+ Fixed missing total file number in the synchronization dialog.
+ Fixed error message when the cancel button was pressed.
+ Removed obsolete code for old rsync versions.
- Fixed unquoted path in Smb4KCore::open(), so that also paths ending
with '$' are opened correctly in Konsole.
Smb4K 0.9.5 (2008-06-01):
- Fixed an authentication issue that occurred when the master browser
was queried for the workgroup members.
- Added a configuration entry that must be enabled when authentication
information needs to be send to the workgroup master browser when
querying it for the browse list.
Smb4K 0.9.4 (2008-04-27):
- Smb4KGlobal::timer() is now deprecated.
- The core classes now use QObject::timerEvent() instead of a connection
to Smb4KGlobal::timer().
- Smb4K will try to launch the wallet manager before it opens the wallet.
This should prevent it from hanging on start-up (closes #12707).
- If the digital wallet could not be opened, KWallet support won't be
disabled completely but only for the current session.
- Fixed blocking of tooltips in the network browser.
- Fixed invalid check in the network browser's tool tip code.
- Simplified code in smb4k_cat. Bumped version to 0.8.
- Fixed disabled configuration dialog when another user edited the same
system file.
- Fixed wrong path when the strings "cifs" or "smbfs" were part of the
mount point name (closes #13342).
- Fixed unrecognized authentication error when querying the workgroup
master browser for the workgroup members (closes #12830).
- Fixed flickering of items in the shares views.
- Applied patch by Dirk Mueller that installs the configuration dialog as
KDE module.
Smb4K 0.9.3 (2008-02-24):
- Revised and optimized the code of the password handler. One consequence
is, that the format of the wallet entries is not compatible with previous
versions. The old entries will be converted automatically.
- Fixed a regression in the browser, where the list of shares was not deleted
when an host item was collapsed.
- Fixed an unmount problem that occurred when mount.smbfs is indeed a symlink
to or a copy of mount.cifs.
- The mount command now includes the NetBIOS name of the local host, which
is at least needed when using port 139.
Smb4K 0.9.2 (2008-01-20):
- Added a few "What's this?" help texts to the "Shares" configuration page.
- Updated translations.
- The preview dialog does not show the "." and ".." directories if the user
chose to see hidden directories.
- The bookmark folder in the system tray widget now has a bookmark folder
icon.
- Applied patch provided by Carsten Lohrke so that Smb4K's desktop file
complies with freedesktop.org's specifications.
- Fixed double declaration in Smb4KSystemTray class.
- Removed Smb4KConfigDialogFactory::setConfigObject() function that was not
used.
- Fixed poor IP address check in Smb4KScanner::searchForHost().
- Fixed saving of default login data when the wallet was closed.
- Updated handbook.
Smb4K 0.9.1 (2007-12-31):
- Replaced all occurences of getenv("USER") by getpwuid(getuid())->pw_name.
- Corrected spelling mistakes in German translation.
- Fixed compilation error under FreeBSD.
- Fixed fails-to-build-from-source bugs with upcoming GCC 4.3.
Smb4K 0.9.0 (2007-12-16):
- Cleaned up the code and updated the copyright statements (class descriptions,
e-mail address and year).
- Smb4K now uses KConfig XT throughout the whole application. This breaks
compatibility with older versions of Smb4K.
- Replaced the old configuration dialog with a new one based on KConfigDialog
to take advantange of the KConfig XT infrastructure. It is a KDE module
library: libsmb4kconfigdialog.
- Added some configuration options:
+ The '-S <arg>' (signing state) and '-P' (use machine account) arguments of
smbclient are now supported.
+ Added several advanced mount.cifs options and the ability to pass custom
options to mount.cifs (closes #10249). You will need Linux kernel >= 2.6.15
to take advantage of most of them.
+ Added the ability to remove all options at once in the "Custom" tab of the
Samba configuration page.
- Changed some configuration options:
+ The hidden files and directories are not displayed in the preview dialog by
default.
+ Rsync's '--existing' and '--ignore-existing' option can be active at the
same time.
+ The default UID and GID are now those of the user.
- Removed obsolete Smb4KUser class.
- Implemented validity checks into the core container classes, so that only IPv4
and IPv6 IP addresses are used (closes #11470).
- Modified Smb4KGlobal namespace:
+ Removed Smb4KGlobal::kernelVersion() function.
+ Removed Smb4KGlobal::systemName() function.
+ Removed Smb4KGlobal::config() function.
+ Removed Smb4KGlobal::getUMASK().
- Removed Smb4KHomesShareHandler::convert() function.
- Revised Smb4KCore class:
+ Rewrote Smb4KCore::searchPrograms().
+ Removed Smb4KCore::smb4k_core() static pointer and replaced it with a better
approach (Smb4KCore::self() and static pointers to the core classes).
+ Added Smb4KCore::init() function, that initializes the core, i.e. starts the
scanning of the network and the import and remounting of shares.
- Improved Smb4KSambaOptionsHandler class:
+ The constructor does not take a KConfig object anymore.
+ The client charset and server codepage will be auto-detected if the 'unix
charset' and 'dos charset' options are present in smb.conf, respectively
(closes #10805).
- Modified Smb4KShare class:
+ Moved to KUser and KUserGroup to retrieve information about the user and the
group of the mounted share. This sets the minimum requirement to KDE 3.3.
+ Added Smb4KShare::setUID() and Smb4KShare::setGID() functions.
+ Smb4KShare::equals() now takes a constant reference instead of a pointer.
- Improved Smb4KMounter class:
+ Removed legacy code from mountRecent() function and renamed it to remount().
+ Renamed Smb4KMounter::State::MountRecent to Smb4KMounter::State::Remount.
+ Smb4KMounter::findShareByName() now returns a list of all mounts of the
specified share that are present on the system. This way the checks for
mounted shares etc. could be improved.
+ Rewrote Smb4KMounter::mount() function.
+ Cleaned up Smb4KMounter::unmount() and improved the remaining checks.
+ Removed check for correct Linux kernel if the "Force Unmounting" feature is
used. The operating system will throw an error if the wrong kernel is used.
+ Added a new function Smb4KMounter::checkAccessibilty( Smb4KShare *share ).
It replaces code in Smb4KMounter::import() and Smb4KMounter::processMount()
and simplifies maintenance.
+ The "bad user name" and "bad group name" messages that are returned by
mount.cifs if a bad UID/GID are provided are recognized as errors.
+ Improved Smb4KMounter::isMounted(). It takes now a boolean as second argument
that determines whether all or only user mounts should be considered.
- Modified Smb4KScanner class:
+ Removed preview code from class.
+ Improved code for custom search requests.
+ Renamed Smb4KScanner::addHost() function to Smb4KScanner::insertHost() and
improved it.
+ Added hostAdded() signal that is emitted when a single host has been added
via the insertHost() function to the list of known hosts.
- Moved Smb4KMounterPrivate and Smb4KScannerPrivate classes to own files. Now
the users can use the --enable-final configure option without problems.
- Introduced Smb4KPreviewer core class that takes care of previews of remote
shares.
- Rewrote Smb4KPreviewItem class and moved it into own files.
- Introduced new Smb4KSynchronizationInfo container class.
- Modified Smb4KSynchronizer class:
+ Replaced the "--devices" option by the "--devices --specials" options, so
that also fifos, etc. can be preserved.
+ Replaced the "--remove-sent-files" option by "--remove-source-files". This
makes rsync 2.6.9 a requirement, if you want to take advantage of this
option.
+ Removed the URL requester and the progress dialog.
+ Added new signals: progress() and finished().
+ Make use of the new Smb4KSynchronizationInfo container class.
+ A new synchronization request won't be taken if one is already processed.
- Modified Smb4KPasswordHandler class:
+ Removed import() function which imported authentication data from old
password file (versions prior to Smb4K 0.6.0).
+ The constructor does not take a KConfig object anymore.
+ The descriptive text in the askpass dialog now distinguishes between a
server and a share.
- Did a major revision of Smb4KFileIO class:
+ Removed Smb4KFileIO::getUsers().
+ Removed Smb4KFileIO::writeSuperUserEntries().
+ Removed Smb4KFileIO::removeSuperUserEntries().
+ Removed Smb4KFileIO::processOutput().
+ Removed obsolete compatibility code.
+ Introduced Smb4KFileIO::writeSudoers().
+ Introduced Smb4KFileIO::writeSuperTab().
+ Introduced Smb4KFileIO::processSudoers().
+ Introduced Smb4KFileIO::processSuperTab().
+ The env_keep list will not be replaced, but PASSWD and USER are appended
to it.
- Modified definitions in smb4kdefs.h. For changes see the file itself.
- Improved Smb4KBookmark class:
+ Added ability to define an alternative label that can be used to identify
the bookmark in a custom way.
+ Added constructor that takes a Smb4KHostItem object.
- Improved Smb4KBookmarkHandler class:
+ Implemented support for the new label feature.
+ Replaced findBookmark() by findBookmarkByName() and findBookmarkByLabel()
functions.
+ Rewrote addBookmark() function.
- Smb4KPrint now supports the "application/x-shellscript" mime type.
- Unified API of the network item classes.
- Bumped version of the core library to 2.0.0.
- Rewrote main window:
+ Smb4KApp now inherits KParts::DockMainWindow.
+ Removed labels that gave information about the WINS server and the look-up
method.
+ Made the status bar messages a bit more informative.
- Redesigned shares icon view:
+ Removed Smb4KShareWidget, Smb4KShareWidgetItem, Smb4KShareActionMenu, and
Smb4KShareTooltip classes.
+ Introduced new classes: Smb4KSharesIconView, Smb4KSharesIconViewItem,
Smb4KSharesIconViewPart, and Smb4KSharesIconViewToolTip.
+ The shares iconview is now a KParts KDE module: libsmb4ksharesiconview.
+ Removed the fake list view feature.
+ Added ability to open a mounted share with Konsole. This is useful for
people who need to execute shell scripts on the share.
- Added new shares list view:
+ The features of the new list view are similar to the ones of the icon view.
+ The new list view consists of the classes: Smb4KSharesListViewPart,
Smb4KSharesListView, Smb4KSharesListViewItem and Smb4KSharesListViewToolTip.
- Redesigned network browser:
+ Removed Smb4KBrowserWidget, Smb4KBrowserWidgetItem, Smb4KBrowserActionMenu,
and Smb4KNetworkItemTooltip classes.
+ Introduced new classes: Smb4KNetworkBrowser, Smb4KNetworkBrowserItem,
Smb4KNetworkBrowserPart and Smb4KNetworkBrowserToolTip.
+ The network browser is now a KParts KDE module: libsmb4knetworkbrowser.
- Redesigned search dialog:
+ Applied a major revision to the Smb4KSearchDialog class. Among other things,
the widget that shows the search results is now a KListView.
+ Introduced new Smb4KSearchDialogItem class for easier handling of the items
in the list view.
+ Introduced Smb4KSearchDialogPart class that manages the communication with
the core and the rest of the application.
+ The search dialog is now a KParts KDE module: libsmb4ksearchdialog. (An rc
file is not provided because it's not needed.)
- Introduced a new synchronization dialog (Smb4KSynchronizationDialog) where the
old URL requester and the progress dialog from Smb4KSynchronizer were merged.
- Redesigned the print dialog.
- Revised the preview dialog. It now uses the new Smb4KPreviewer class and the
reworked Smb4KPreviewItem class.
- Modified and improved the bookmark editor:
+ It is now possible to define a custom label to identify a bookmark.
+ The workgroup is not editable anymore.
- Rewrote Smb4KSystemTray class from scratch:
+ The old functionality has been preserved.
+ Added the ability to unmount all mounted shares at once.
- Ported the Konqueror plugin to the new widgets.
- Modified utility programs:
+ Removed deprecated arguments from smb4k_mount.
+ Removed deprecated arguments from smb4k_umount.
+ Adjusted help screens where necessary.
+ Bumped versions where appropriate.
Smb4K 0.8.7 (2007-11-28):
- Fixed smb4k_cat utility program:
+ Enlarged the allowed length per line to 1024 (instead of 255) characters
(closes #12262).
+ Fixed a bug that could lead to corrupted files.
- Fixed Smb4KPasswordHandler::readDefaultAuth() that returned a pointer that was
freed when the function exited.
- Fixed Smb4KMounter:
+ Smb4K won't consider foreign shares for remounting on start-up. This also
seems to solve the crash bug initially reported in #11973 (closes #11467
and #12369).
+ Fixed unmount command line in slotShutdown() function under FreeBSD.
+ Fixed unmount command line in unmount() function under FreeBSD.
Smb4K 0.8.6 (2007-10-15):
- Fixed a crash in Smb4KMounter::findShareByPath() (closes #11499, #11543 and
#11973).
Smb4K 0.8.5 (2007-09-23):
- Updated the handbook.
- Fixed compile errors in Smb4KMounter class under FreeBSD.
Smb4K 0.8.4 (2007-07-14):
- Reintroduced Polish translation provided by Jerzy Trzeciak.
- Updated Turkish translation and improved smb4k_add.desktop file. Thanks go
to Serdar Soytetir for providing the patches.
- Fixed missing functionality of the --ignore-existing argument of rsync.
- Fixed 'net rap server domain' command that is incompatible with Samba
3.0.25 (and later?).
- Fixed Smb4KPasswordHandler::readAuth() that returned a pointer that was
freed when the function exited.
- Fixed broken Smb4KPrint::print() function.
- Fixed a bug in the preview dialog that led to the hanging of the whole
application.
- Fixed DCOP-related hanging of Smb4K during KDE start-up (closes #11189):
+ Added 'X-DCOP-ServiceType=Unique' entry to smb4k.desktop file.
+ Implemented KUniqueApplication::start() in main.cpp.
- Fixed a potential memory leak in the bookmark editor.
Smb4K 0.8.3 (2007-05-02):
- Fixed command lines in Smb4KMounter:unmount() that provoked smb4k_umount
to complain about a deprecated argument.
- Applied Turkish translation patch provided by Ismail Donmez.
Smb4K 0.8.2 (2007-05-01):
- Modified utility programs:
+ Fixed the "No mode was specified" bug in smb4k_mount/smb4k_umount and
related issues in the other utility programs.
+ Modified the help screens of the utility programs with respect to clarity
and better readability.
+ Warnings are shown if deprecated arguments are used.
+ Increased all versions by 0.1.
- Worked around a bug where shares where remounted with UID=0 and GID=0 when
using the CIFS file system.
- Improved the 'Trouble Shooting' section of the handbook and bumped its
version to 1.1.2.
Smb4K 0.8.1 (2007-04-08):
- Rewrote smb4k_mount, smb4k_umount, smb4k_kill, smb4k_cat, and smb4k_mv from
scratch in order to fix the following security weaknesses discovered by
Ben Hutchings (should finally close #9631):
+ Due to insufficient sanitation, smb4k_mount allowed an user to mount any
(local) device if the program was used in combination with sudo or super.
+ The function findprog(), which was present in smb4k_mount, smb4k_umount,
and smb4k_kill, returned a pointer to memory that was freed when the
function exited.
+ The function replace_special_characters(), that was present in smb4k_mount
and smb4k_umount, returned a pointer to memory that was freed after the
function exited. Additionally, it didn't replace the hyphen.
- Changes in smb4k_mount:
+ Moved to getopt_long() to parse the command line options.
+ Added '-n' and '-s' switches (not under FreeBSD) as short forms of the
'--suid' and '--no-suid' arguments, respectively.
+ Added '--version' argument.
+ Out of the many arguments that may be passed to the 'mount' binary, only
'-t <filesystem>' and '-o <options>' are still supported with smb4k_mount.
+ All file systems except 'smbfs' and 'cifs' will result in an error.
+ Fixed order of the arguments that were passed to 'mount.cifs' and
'smbmount' (the '-o <options>' argument must be placed at the end).
+ Added check if a share in the form //HOST/SHARE is supplied. If this is
not the case, smb4k_mount will error out.
+ Improved FreeBSD support.
- Changes in smb4k_umount:
+ Moved to getopt_long() to parse the command line arguments.
+ Added '-n' and '-s' switches (not under FreeBSD) as short forms of the
'--suid' and '--no-suid' arguments, respectively.
+ Added '--version' argument.
+ Added check if a mount point is supplied at all.
+ Improved FreeBSD support.
+ The '--smbfs' and '--cifs' arguments have been deprecated and are now
inoperable. They are still present for backward compatibility, but may be
removed any time soon.
- Changes in smb4k_kill:
+ Moved to getopt_long() to parse the command line arguments.
+ Added '--version' argument.
+ smb4k_kill does not take a signal number anymore. You can only terminate
a process with the SIGTERM signal.
- Changes in smb4k_cat:
+ Moved to getopt_long() to parse the command line arguments.
+ Added '--version' argument.
- Changes in smb4k_mv:
+ Moved to getopt_long() to parse the command line arguments.
+ Added '--version' argument.
+ Added a check if the source and destination files are regular files. If
they are not, smb4k_mv will error out.
- Adjusted Smb4KMounter class to the slightly changed behavior of the utility
programs:
+ Removed SIGTERM signal from command line in Smb4KMounter::abort() because
of the changes made to smb4k_kill.
+ Changed the command lines for smb4k_mount and smb4k_umount.
- Started to address the browsing problems experienced by users in Active
Directory environments: If the NT_STATUS_ACCOUNT_DISABLED error is
encountered (which actually seems to be an authentication issue), Smb4K
won't error out anymore but ask the user for the user name and password
(closes #10280).
- Fixed two bugs in Smb4KFileIO:
+ The search for the lock file directory will not return a directory that is
not readable and writeable anymore (except /var and /tmp are mounted ro).
+ If the lock file does not exist when Smb4KFileIO::removeLockFile() wants
to delete it, no error will be shown anymore.
- Fixed a compilation error under SUSE (10.2) and with the upcoming GCC 4.3.
- Smb4K now uses the CIFS file system by default (closes #10804).
- The handbook was updated to reflect the changes made to the utility programs.
Smb4K 0.8.0 (2006-12-21):
- smb4k_konqplugin: implemented working toolbar code + search dialog connected
to toolbar
- smb4k_konqplugin: fixed unmount all shares on exit
- Moved source files of the Konqueror plugin to own directory.
- Improved the build system:
+ Added '--with-konqplugin=ARG' argument which allows the user to disable
the compilation of the Konqueror plugin.
+ Added a check for Konqueror plugin header file if '--with-konqplugin=yes'
(default) was supplied. The configuration will be aborted with an error
message if the check fails (closes #8755).
- Updated admin/ directory.
- Utility programs:
+ Removed file search function from smb4k_cat.
+ Exchanged all occurrences of strcpy() by strncpy() (closes #9631).
+ Implemented several other security releated fixes proposed by Kees Cook
after a security audit (closes #9631). They include the elimination of
stack overflows and a design error in smb4k_kill.
- Removed the Smb4KDataItem class again, because its introduction was not a
good idea.
- Revised Smb4KShare:
+ Now references to strings are returned instead of copies of these strings.
+ Smb4KShare::path() and Smb4KShare::canonicalPath() are now QCStrings.
- Made Smb4KUser, Smb4KPrintInfo return references to strings instead of copies
of those strings.
- Logins with umlauts and other special characters are now supported.
- Introduced the ability to define custom options for mounting and browsing
(closes #3822, #6490). Changes in detail:
+ Added a new container class: Smb4KOptionsInfo
+ Added a new core class that manages all Samba related options:
Smb4KSambaOptionsHandler
+ Custom options are stored in ~/.kde/share/apps/custom_options.
+ Added new dialog were the options can be defined.
+ Added new "Custom" tab to the Samba configuration tab. Here you can edit
and delete the custom options.
- Introduced a new class named Smb4KHomesSharesHandler that handles the homes
shares:
+ Moved the list of 'homes' shares and the user names defined for them to the
file ~./kde/share/apps/smb4k/homes_shares.
+ Added new read and write functions for the data.
+ Moved the "Specify User" dialog to this class.
+ Improved "Specify User" dialog by adding a "Clear List" button that enables
the user to clear all names from the combo box.
- Introduced new Smb4KError class which handles the error messages:
+ Renamed and removed several error codes.
+ Adjusted code to use the new error codes.
+ Improved error messages.
- Revised Smb4KGlobal namespace:
+ Moved Smb4KPasswordHandler here.
+ Added Smb4KSambaOptionsHandler.
+ Added Smb4KHomesSharesHandler.
+ Smb4KGlobal now provides a function that creates a temporary directory. The
core classes were ported to use it.
- Revised Smb4KMounter class:
+ Optimized code in Smb4KMounter::import().
+ Merged Smb4KMounter::unmount() and Smb4KMounter::forceUnmount() into a more
powerful Smb4KMounter::unmount() function. Accordingly, the public function
forceUnmountingShare() has been removed and replaced by an enhanced version
of unmountShare().
+ Fixed missing port statement in the mount command under FreeBSD.
- Revised Smb4KScanner class:
+ Improved code in Smb4KScanner::init().
+ Rewrote code for retrieving IP addresses.
+ Added a new 'IP scan' method to retrieve the browse list (closes #7933).
+ Adjusted code in Smb4KScanner::processHosts(). In case of an IP scan, the
hosts won't be deleted from the list but only additional info we be added
to existing host items.
+ The constructor now takes a list for workgroups and one for hosts. Both
are provided by Smb4KCore and are used to make all discovered workgroups
and hosts available to the core classes.
+ Replaced Smb4KScanner::authFailed() signal with Smb4KScanner::failed() and
implemented it more places.
+ Revised the shell command for previewing shares.
+ /bin/sh is not required to be present on your system anymore, but you need
a shell that understands the '-c command' option.
- Added update functionality to Smb4KBookmarkHandler class (closes #8832):
+ The constructor now takes a pointer to the global host list provided by
Smb4KCore.
+ Added Smb4KBookmarkHandler::update() which searches the hosts list for
changes of the IP address and updates the bookmarks, if necessary.
- Completely rewrote the Smb4KFileIO class:
+ The automatic conversion of old super.tab entries has been dropped now.
+ Implemented several security fixes proposed by Kees Cook after a security
audit: Moved the lock file to /var/lock, fixed a race vulneribility with
the lock file, and moved to mkstemp (closes #9630).
- Revised print code:
+ Rewrote Smb4KPrint class.
+ Improved Smb4KPrintDialog class.
- Improved the network item container classes:
+ Smb4KShareItem: Added isHidden(), isPrinter(), isIPC(), and isADMIN().
+ Smb4KPreviewItem: Added isHidden().
- Revised Smb4KShareWidget class:
+ Disabled the ability to move the items around.
+ Added Drag 'n' Drop support (closes #3027). It must be enabled in the
configuration dialog in order to use it.
+ The tool tips will be displayed in a distance of 5 points away from the
mouse pointer.
+ Enhanced overall handling of tooltips.
- Revised Smb4KBrowserWidget class:
+ Made the browser behave much smarter.
+ The tool tips will be displayed in a distance of 5 points away from the
mouse pointer.
+ Enhanced overall handling of tooltips.
+ The current network item will be collapsed if the Smb4KScanner::failed()
signal is received.
- Smb4KBrowserWidgetItem class now inherits KListViewItem instead of
QListViewItem.
- Revised Smb4KPreviewDialog class:
+ The constructor now takes a pointer to an Smb4KShareItem object and looks up
the IP address of the host by itself.
+ Added Smb4KPreviewDialog::initialized(). It returns a boolean and can be
used to only show the dialog if the preview dialog was initialized properly.
+ Added a 'Back' and a 'Forward' button.
+ Code clean-ups and optimizations.
+ Preview of hidden files and directories may be switched off in the
configuration dialog.
+ Added scrollbars to the combobox's listbox.
- Configuration dialog:
+ Renamed several settings in network options tab.
+ Replaced 'Appearance' by 'User Interface' configuration page and added several
new settings.
+ Some widgets won't appear under operating systems anymore where they are
useless.
- The bookmark editor will reload the bookmarks if the bookmark handler emitted
the updatedBookmarks() signal.
Smb4K 0.7.5 (2006-11-25):
- Fixed a serious bug in Smb4KFileIO that could cause a corrupted /etc/sudoers
file if debug or error output was received via stderr while reading the file
for subsequent processing. Many thanks go to h-gent-o who reported this
issue to the Ubuntu bug tracker and to Richard Johnson from the Ubuntu
project who brought it to our attention (closes #9527).
Smb4K 0.7.4 (2006-11-11):
- Fixed error handling in Smb4KMounter::processMount() under FreeBSD.
- Fixed a bug in Smb4KSearchDialog::slotCheckItemInBrowser() that occurred
when a server item had no IP address displayed.
- Fixed a bug in the shell code that was used to retrieve the list of
workgroup/domain members from the master browser. Under certain circum-
stances the bug caused the master browser not to return the browse list.
Please note, that you need the 'sh' command being present now! On most
systems, this is a symlink to a sh-compatible shell, which is fine.
- Improved error handling in Smb4KScanner::processHosts().
- Implemented better error handling in Smb4KSynchronizer: The synchronization
is canceled if an error occurrs. This prevents the user from being flooded
with error dialogs.
- Fixed disabled "Linux charset" and "Server codepage" combo boxes in the
configuration dialog under operating systems different from Linux.
- Fixed a bug that occurred when reading or writing the file and directory
mask.
- Changed the address used for reporting bugs via Help->Report Bugs.
- Updated several translations.
Smb4K 0.7.3 (2006-09-24):
- Rewrote help texts of the utility programs and added version info.
- Updated handbook to version 1.0.0.
- Updated README file.
- Fixed several issues in Smb4KFileIO:
+ Added a missing signal in Smb4KFileIO::write_lock_file().
+ Fixed writing of /etc/sudoers under Ubuntu.
- A host item will be closed (collapsed) if the authentication failed
(closes #8325).
- Fixed insertion of a host from the search dialog to the browser window
when the host has no IP address displayed.
- Added missing error code to Smb4KGlobal::showCoreError().
- The preview dialog won't accept the contents of a wrong address anymore.
- The wallet will be reopened if it was closed by the user, the screensaver,
etc. (closes #8558).
- Reintroduced Chinese Traditional (zh_TW) translation. Many thanks go to
Wei-Lun Chao for providing it.
- Updated several translations.
- The text streams are now aware of the locale.
Smb4K 0.7.2 (2006-08-03):
- Fixed another crash in Smb4KNetworkItemTooltip class.
- Fixed missing header file in smb4kcore.cpp.
- Shares having special characters in their names do not appear broken
anymore (closes #8036, #8108).
- Updated handbook.
- Fixed removal of temporary files after printing.
- Updated admin directory for autoconf 2.60 support.
- Fixed a minor bug in search routine of the smb4k_cat utility.
- Fixed potential crash in Smb4KApp::readOptions().
- Fixed compilation error of smb4k_umount.cpp on IRIX (closes #7927).
- Fixed memory leak in Smb4KPrint::init().
- Updated several translations.
Smb4K 0.7.1 (2006-06-18):
- Fixed compilation error occurring with Smb4KBrowserWidgetItem::update()
(closes #7261, #7263).
- Fixed compilation error(s) in smb4k_umount.cpp under Solaris (closes #4419,
#7269).
- Updated translations.
- Updated handbook. However, it's still work-in-progress.
- Introduced the possibility to modify the length of the interval between
checks for external mounts/umounts and dead shares. This is especially
useful on systems with many mounted shares and/or to reduce the load
on remote servers (closes #6907).
- The timer will be disconnected from Smb4KScanner::start() if the scanner
is idle (closes #6907). This drastically reduces the CPU load!
- Fixed input validation when using smbclient for searching (closes #7429).
- Fixed a bug that prevented the correct saving of updated authentication
information.
- Fixed smb4k.desktop file.
- Removed two queries for a non-existent config entry. So, using Kerberos
with smbclient works again and the domain is included in the argument
string for nmblookup.
- Made the synchronization progress dialog work correctly with the latest
version of rsync.
- Fixed broken translation in the Konqueror plugin.
- Fixed a crash in the network browser's tooltip code.
- Fixed several small issues in Smb4KFileIO.
Smb4K 0.7.0 (2006-04-23):
- KonqSidebar_Smb4K: hang up the new alreadyMountedShare signal from mounter.
No error dialogs of "already been mounted share" anymore (partially
closes #5636).
- The old tab widget in the main window has been removed.
- Added shortcuts to the main window that allow jumping to each dock widget:
CTRL+1: Network Browser, CTRL+2/CTRL+S: Search Dialog, CTRL+3: Shares View.
- Unified look of dialogs.
- Did a major revision of the browser widget (GUI):
+ Introduced tooltips that carry information about the network item
underneath the mouse pointer.
+ The master browser will be displayed with blue color.
+ The popup menu has the highlighted network item as title.
+ Improved the "Rescan" action. If you open the popup menu, the selected
workgroup or server will be scanned. If you use the rescan action on
the empty viewport or from the toolbar/menu, the old behavior will
be preserved.
+ Moved "Mount Manually" action here.
+ Removed obsolete "This computer is already in the list." error
message box.
- Did a major revision of the search dialog (GUI):
+ Redesigned the widget and made it a stand-alone dock widget.
+ Hosts can be added by simply double clicking them (closes #2247).
+ A host that is already in the browse list is underlaid with the
"button_ok" pixmap. This makes the "This computer is already in the
list." message box obsolete (see above).
- Did several changes to the shares view (GUI):
+ The popup menu has the share name as title.
+ Introduced tooltips that carry the information about the mounted
share.
+ Replaced the old icon for broken shares by a a new combined icon
(mounted hard drive overlayed by a semi-transparent cancel icon).
+ The item width of the share icons has been enlarged to 500 pixels in
list mode.
- The bookmark editor allows editing of the IP address and workgroup.
- Put Smb4KShareWidgetItem class in own files.
- Removed obsolete options "This master browser needs authentication" and
"Use authentication when querying the workgroup master browsers" from
the configuration dialog.
- When closing the configuration dialog, the root password is only asked,
if the user changed one of the super user options (partially closes #5636).
- The removal of the super user entries from super.tab and/or sudoers is
now determined by the choice in the configuration dialog.
- Rewrote Smb4KSharesMenuWidget class.
- Added new Smb4KShareActionMenu and Smb4KBrowserActionMenu classes. They
contain the actions that were defined in Smb4KShareWidget and
Smb4KBrowserWidget before,respectively. The use of Smb4KShareActionMenu in
the system tray icon closes #5622.
- Replaced deprecated KStdActions.
- Introduced new Smb4KDataItem container for the core classes.
- Revised bookmark handling:
+ The bookmark handler does not use KConfig anymore but has its own read
and write functions. Thus, you won't be able to read the bookmark file
with prior versions once you ran Smb4K 0.7.0.
+ The bookmarks are now stored with workgroup/domain and IP address (closes
#6316).
- The scanner class underwent a major revision:
+ The net command now replaces most of the smbclient command lines. This
substantially simplifies the code and also seems to speed up the
look-up processes. As a consequence, however, the support of Samba 2.2
has been dropped.
+ Implemented list of all discovered hosts in Smb4KScanner. This significantly
reduces the network traffic.
+ Moved IP address look-up code to the scanner (and thus removed Smb4KIPFinder
class).
+ Introduced a "background process" which processes the IP address look-up
and the gathering of additional information (OS and server string).
+ An automatic rescan using the RAP protocol will be initiated if the query
for the shares of a certain host failed because of the wrong protocol
(closes #4417).
+ Added possibility to query the current workgroup master browser to
retrieve the browse list.
- Massively changed the entries and groups in the configuration file.
As consequence, Smb4K will be incompatible with prior versions.
- Added ability to synchronize a local copy with a remote share and vice
versa (closes #1940). This feature uses Rsync. A few of the many options
have been stripped, because they are used for transfer from remote hosts,
which is no the case here.
- Information of any share will now be collected by the mounter. Smb4KCore
has been tidied up accordingly. Information of the number of files and
directories has been dropped (for now).
- Removed Catalan, Norwegian Nynorsk, Chinese Traditional (zh_TW) and
Simplified (zh_CN), Russian and Polish translation because they were
unmaintained and hopelessly out-dated.
- Removed the Smb4KShellIO class, because its only purpose was to provide
the Samba version. This is not necessary anymore, because we switched
to Samba 3.
- Introduced smb4k_cat and smb4k_mv utilities to read and copy/move system
config files.
- The handbook shipping with this release actually contains useful information.
However, it is still work in progress. The license of the handbook has been
changed from GFDL to GPL.
- If a user tries to mount an already mounted share, no error message will
be displayed anymore.
- Renamed the global namespace to Smb4KGlobal and several functions inside.
- Centralized the application's timer in the Smb4KGlobal namespace. As a
side effect, this seems to fix the very-fast-vanishing-tooltips problem.
- If the user canceled the writing to /etc/super.tab or /etc/sudoers, the
previous state will be re-established.
- Removed "Specify User" dialog from Smb4KBrowserWidget and moved it to
Smb4KGlobal namespace. Now only core classes are using it.
- Reworked and cleaned up Linux specific code in Smb4KMounter::import().
- Moved error handling to Smb4KGlobal namespace. The reason is, that the
previous signal/slot model was not able to handle errors during the
initialization of the core.
- Removed Smb4KPasswordHandler::AskPass class and integrated its functionality
into Smb4KPasswordHandler::askpass(). This should fix the compilation errors
encountered when using MIPSpro Compilers on IRIX/MIPS (closes #6811).
- When reading the smb.conf file, a line beginning with a semicolon is valued
as comment.
- Reduced CPU load by stretching the interval between checks for externally
mounted and broken shares from 1000 ms to 2500 ms.
Smb4K 0.6.10 (2006-04-17):
- Fixed a bug in smb4k_umount that did not allow the unmounting of a share
when the mount point was quoted.
- Fixed a bug in smb4k_umount that did not allow the unmounting of a broken
share.
- [Patch 0.6.10a] Fixed input validation when using smbclient for searching
(backport from 0.7 branch, closes #7429).
- [Patch 0.6.10a] Fixed broken translations in Konqueror plugin.
- [Patch 0.6.10a] Updated admin directory for autoconf 2.60 support.
- [Patch 0.6.10a] Fixed removal of temporary files after printing.
- [Patch 0.6.10a] Fixed smb4k.desktop file.
- [Patch 0.6.10a] Fixed memory leak in Smb4KPrint::init().
- [Patch 0.6.10a] Fixed occurrence of annoying error dialog on start-up when
a share had already been mounted.
- [Patch 0.6.10a] Fixed a potential crash in Smb4KBrowserWidget::insertItem().
- [Patch 0.6.10a] The preview dialog won't accept the contents of a wrong
address anymore.
Smb4K 0.6.9 (2006-03-24):
- Integrated startup fix for Samba 2.2 users by Chris Clayton and extented it.
- Updated French and Czech translation.
- The "Remove Entries" button in the "Super User" configuration tab will now
be disabled together with the "Apply" and "OK" button if Smb4K writes to a
system configuration file.
Smb4K 0.6.8 (2006-02-24):
- Fixed another bug in the bookmark menu widget. It will again be properly
updated during run time, when bookmarks are added or removed.
- Fixed enabling of "Authentication" action in browser widget.
- Fixed a crash (NULL pointer access) in Smb4KShareWidget::slotMountedShares(),
that was found by Glen Masgai, who also sent the patch.
- Added support of mount.cifs and umount.cifs. This should enable users to
mount CIFS shares as normal user depending on the configuration of the
system and on the presence of these two utilities. NOTE: You have to set the
setuid root bit for both binaries.
- Revised start-up: Smb4K will run on systems where either only smbmount/
smbumount or mount.cifs/umount.cifs are present.
Smb4K 0.6.7 (2006-02-05):
- Fixed a crash in Smb4KBookmarkMenuWidget::insertBookmarks(), that was
introduces by the "fix" in 0.6.6.
- Updated Turkish translation.
Smb4K 0.6.6 (2006-02-04):
- Fixed too small buffer size in Smb4KUser on systems with many users and
groups (closes #6070).
- Fixed crash in Smb4KNetworkTab::slotKilled() (closes #3125).
- Fixed these issues found by Marc Hansen (Thanks!):
+ crash in Smb4KBrowserWidget::slotMembers()
+ searching for illegal strings such as #, ', () shows search command
as search result
+ the application might crash if you press "Apply" and "OK" successively
in the configuration dialog and system files have to be written (As
consequence, the OK and the Apply button will be disabled while the
configuration is written to disk.)
+ shares are displayed although the user has to supply a password
+ printer shares are displayed although they are disabled in the
configuration dialog
+ crash in Smb4KBookmarkMenuWidget::insertBookmarks() (closes #6146)
+ unusable entries were written when the user bookmarked a 'homes' share
without providing a user name
- Fixed the broken writing to the configuration file and the popping up
of multiple information dialogs in Smb4KPasswordHandler.
Smb4K 0.6.5 (2006-01-07):
- Fixed writing to ~/.nsmbrc file under FreeBSD.
- Fixed freezing of Smb4K when a share went offline (closes #3676). Smb4K
will lock-up for a short amount of time if it encounters a broken share
and will then continue its work without any problems.
- Fixed the generation of wrong file permissions for /etc/sudoers and
/etc/super.tab, respectively. The permissions are no longer hard coded,
but the stat() system call is used to read the original permissions that
will then be preserved.
- Introduced global KConfig object and ported all classes to use it.
- Fixed login problem when trying to preview a WinXP share or similar.
- Added support of the 'include' directive in the smb.conf file (closes
#5948). NOTE: The file that is to be included *must* be given with its
full path!
- Moved from getgrgid() to getgrgid_r() in Smb4KUser. This should close the
"Smb4KUser: Could not get group name!" issue also known as #4914.
- KonqSidebar_Smb4K: switched to global config system. Now parameters changed
from the option dialog have effect into the konqueror plugin.
- Executing a network item in the browser by clicking its name (not the [+])
will show/hide its contents (closes #3352).
Smb4K 0.6.4 (2005-10-30):
- REALLY fixed the security issues in Smb4KFileIO. Now, temporary files
and directories are used to copy and modify sensitive data and the lock
file is checked to be not a symlink.
- Fixed unmount-all-shares-on-exit functionality, that was broken due to
changes that were applied to the smb4k_umount utility program in earlier
versions of Smb4K.
- Fixed forced unmounting of shares.
- Fixed running progress bar after you denied the forced unmounting of a
share.
- Fixed missing exit( EXIT_FAILURE ) statement in smb4k_umount utility.
- Fixed several memory leaks.
- Fixed compilation error under FreeBSD.
- The PASSWD environment variable will be preserved when the 'env_reset'
flag has been set in /etc/sudoers (closes #4945). The user needs to
rewrite the entries, though. See FAQ for details.
Smb4K 0.6.3 (2005-08-31):
- Fixed security issue: An attacker could get access to the full contents
of the /etc/super.tab or /etc/sudoers file by linking a simple text file
FILE to /tmp/smb4k.tmp and /tmp/sudoers, respectively, because Smb4K didn't
check for the existance of these files before writing any contents. When
using super, the attack also resulted in /etc/super.tab being a symlink to
FILE.
- Included three patches by Montel Laurent, that
+ add moc file inclusion to the bookmark editor,
+ fix a memory leak in the Konqueror plugin,
+ fix ./smb4k/Makefile.am,
+ disable the OK button of the mount dialog if the input line is empty.
Smb4K 0.6.2 (2005-08-29):
- Fixed security issue: When ignoring the kdesu dialog a copy of the
super.tab file was left under /tmp.
- Error messages won't pop up anymore when ignoring the kdesu dialog. The
reporting of unknown errors has been disabled in
Smb4KFileIO::slotReceivedStderr() (closes #4309).
- Fixed reading of authentication data.
- Removed check for mount.smbfs (under Linux) which is actually needless
because it is either a symlink to smbmount or nonexistent.
- Updated ./admin directory. Smb4K now needs automake 1.9.
- Fixed command line for mount.cifs (closes #4854). The 'domain' instead
of the 'workgroup' option is used.
- Fixed crash when the user clicked the "Show search dialog" action and the
tab group widget wasn't shown.
Smb4K 0.6.1 (2005-07-31):
- Improved lock file handling (closes #4310). Now the editing of a system
file is only denied, if another instance of Smb4K (i. e. another user)
is modifying the same system file. Additionally, the lock file will now
be removed (or processed), if the application emits the shutDown() signal.
- Fixed a bug in the code that removes the entries from the sudoers file.
- Fixed wrong assignment of RAP protocol config entry to RPC radio button
in configuration dialog.
- Moved to QString::compare() to compare strings, because "==" caused
crashes under certain circumstances (closes #3604).
- The wallet won't be opened on start-up but when a password is actually
needed.
Smb4K 0.6.0 (2005-06-17):
- Rewrote password handling: Added KWallet support as default method
(closes #3695). If you do not want to use KWallet, login information
won't be saved but only stored temporarily. There is also the possibility
to deny the password storage altogether.
ATTENTION: If you deny access to the wallet on the first start-up, all
passwords stored in the passwords file will be lost!
- Improved FreeBSD support. The passwords will now be stored encrypted in
the ~/.nsmbrc file.
- Added Dutch translation.
- Put the core and (most of) the widget classes into shared libraries.
- The DNS won't be queried anymore when doing an IP lookup.
- Added Konqueror plugin by Massimo Callegari (closes #2731). An installation
of KDE Base is necessary to make it compile.
- Moved to default KDE icons for the network items.
- Added support of the 'net' command (closes #2227). This adds the advantage
of the ADS and RPC protocol being used and even very large share names will
be displayed. Additionally, it seems to significantly speed up the lookup
process. Smb4K will automatically use the 'net' command if found on the
system.
There is a disadvantage though: A valid login and password are necessary
to logon to a server. If neither is known, Smb4K will try to authenticate
with the 'guest' user and an empty password. This will work with (almost
all) Windows machines and with Samba servers that have set the security
option to SHARE. For all others you will have to provide a login and
password.
- Added namespace Smb4K_Global which contains functions used by several
classes.
- Improved KAction handling in popup menus.
- Added a patch by Nuts Mueller that adds /usr/local/bin and /usr/local/sbin
to the paths that are searched by the utility programs.
- Added a patch by Steven Lawrance that fixes buffer size problems in
the Smb4KUser constructor.
- Fixed mounting via bookmarks (ampersand issue).
- Added FAQ file.
- Redesigned some widgets in the configuration dialog.
- Cleaned many strings from full stops and exclamation marks (closes #2869).
- Fixed crash in Smb4KBrowserWidget::slotAddIPAddress() that occurred when
opening a workgroup (closes #3351). Thanks go to Nuts Mueller who helped
me finding the problem.
- Implemented 'iocharset' option for CIFS mounts (closes #4071).
- Fixed mounting of CIFS shares. The file_mode and dir_mode options were not
provided in octal which resulted in broken mounts that could not be accessed.
- Fixed the "probably not smb-filesystem" issue (closes #1837).
Smb4K 0.5.2 (2005-03-27):
- Fixed naming of Norwegian translations.
- Fixed crash that appeared when trying to determine the disk usage. Thanks
go to Bamfox who helped me finding the problem.
- Added Icelandic and Danish translation; updated Chinese Simplified
translation.
- Added additional cleaning of the mount prefix on exit.
- Added patch by Yura Pakhuchiy that fixes wrong IP address resolution for
hosts starting with a hyphen.
- Fixed problems with special characters in passwords (closes #3444, #3728).
- The warning that Konqueror might hang if you open CIFS shares will only be
shown with KDE <= 3.3.92. Thanks go to Stefan Gehn (aka mETz) who send a
patch.
- Fixed compilation errors under FreeBSD.
- Improved printing by switching to smbspool.
Smb4K 0.5.1 (2005-01-30):
- Reduced CPU load by using QDir::isReadable() and QDir::exists() instead
of QDir::entryList() to determine if a share is broken and by increasing
the check interval for external mounts/unmounts.
- Fixed crash that occurred when trying to forcibly unmount a (broken)
share (should close #3029).
- Fixed mandatory password input for browsing (unprotected) WinXP shares.
- Added patch #303 by Ian Abbott that fixes the failure of smb4k_mount,
smb4k_umount and smb4k_kill in the case the user does not have read
access to mount/umount/smbmount/smbumount/kill (closes #3094).
- Updated French translation.
- Added Chinese (Taiwan) translation. Thanks go to Jack Liu.
- Fixed unmounting of hidden shares.
Smb4K 0.5.0 (2005-01-11):
- Only one instance of Smb4K can be started (closes #2636).
- The hide/close behavior is now KDE compliant.
- Removed Smb4KStarter class and distributed its duties to the Smb4KCore
class and the main() function.
- Added support of sudo (closes #2222).
- Added support of the CIFS file system (closes #1874). Samba 3 is required.
- Introduced smb4k_mount, smb4k_umount, and smb4k_kill utilities and ported
classes to use them. This fixes several security concerns regarding the
use of mount and umount with super (and sudo).
- Closed several memory leaks.
- Replaced the QSplitters in the main window by KDockWidgets. Now, you can
move the network browser and tab widget around or even detach them.
- Removed the Smb4KView class.
- Moved to nice KActionMenus. This included a complete rewrite of the
Smb4KSystemTray and Smb4KBookmarkMenuWidget classes (closes #2007).
- Mounted shares are optically advertized in the browser widget.
- If the mountpoint can't be created, an error message will be emitted and
the mounter will exit.
- Every mountpoint within the mount prefix will automatically be removed
after the share was unmounted. This made the "Clean up default directory
on exit." option obsolete.
- Share names containing blanks are fully supported. LIMITATION: If Smb4K
cannot figure out, that the share contains a blank instead of an
underscore, the latter one will be shown.
- Removed the readOptions() functions from the core classes. Options are
now read when they are needed (i.e. at the beginning of a function).
- Changed the format of the entries in the super.tab file. It's not
compatible with the old one and will be converted on the first program
start.
- Revised Smb4KBookmarkHandler class and moved the bookmark editor to its
own class.
- Disk usage information is now provided by the statvfs() system call.
*** Program freezes may still happen if the network connection is bad or
the share vanishes. Help is wanted to fix this issue! ***
- Improved Smb4KShareWidgetItem class and cleaned up Smb4KShareWidget class.
- Added Czech and Turkish translations. Thanks go to Alois Nespor and G�kem
Cetin.
- Added "Super User" tab to configuration dialog and moved the "Super User
Privileges" options there.
- Reorganized and cleaned up the configuration file.
- Restricted the "Unmount all shares on exit." option to those shares that
are owned by the user.
- Removed "obsolete" '-N' options from smbclient commands. Instead '-U %'
is used which serves the same purpose.
- Fixed searching for hosts via smbclient. Hosts that are not available are
no longer reported as existent.
- Added the ability to mount shares manually (closes #1640, #2546).
- Redesigned the askpass dialog and added information why it is shown
(closes #2226).
- IP addresses are now also assigned correctly if host names are partly the
same (closes #2769).
- Improved support of FreeBSD.
- Included patch #286 by Andrei Bulava to add codepage cp1251 to Linux charset
selection (closes #2962).
- Enhanced source code documentation.
- Broken shares (i.e. empty CDROM shares, etc.) are marked as such and the
user will only be able to unmount them. No other actions may be performed.
(closes #2998, #3000)
REMARK: This feature does not include shares that got unavailable due to
the shut-down of a server. This issue is still NOT solved.
Smb4K 0.4.1a (2004-09-04):
- Fixed severe bug in Smb4KMounter::unmountAll(), which led under certain
circumstances to complete data loss on remote shares. Thanks go to Jeremy
Shaw for informing us and sending a patch.
- Updated French and Polish translations.
- Added missing connection to Smb4KApp::slotQuit() to system tray.
Smb4K 0.4.1 (2004-08-29):
- Fixed multiple occurrences of workgroups in the browser widget.
- Fixed malfunction when super program was chosen and became deinstalled.
- Fixed handling of passwords with special characters (closes #2146).
- Fixed problems opening shares with Konqueror by moving from
KApplication::invokeBrowser() to KRun.
- Fixed two potential crashes by adding NULL pointers to the return statements
of Smb4KMounter::findShareByName() and Smb4KMounter::findShareByPath().
- Fixed blocking of KDE's logout if the main window was open.
- Added Smb4KCore class as container for all core classes.
- Centralized error message handling in Smb4KCore.
- Added error messages for errors that might occur while trying to mount
a share.
- Added ability to print PS and PDF files directly over the net (closes #1737).
This is still experimental. To have full functionality, you'll have to have
the programs 'dvips' and 'enscript' installed.
- Added error codes to smb4kdefs.h file and ported core classes to use them.
- Added Japanese, Bulgarian and Norwegian translations. Thanks go to Toyohiro
Asukai, Atanas Mavrov and Nils Kristian Tomren for providing them.
- Removed abandoned Russian and Catalan translations.
- Added several codepages (closes #2094).
- Added Smb4KShellIO class, that takes care of all shell IO operations,
that are not connected to mounting and unmounting of shares and network
operations. Moved Smb4KShareTab's shell operations there.
- Printer shares are shown by default.
- Changed default behavior if a WINS server was found: The network instead
of the WINS will be queried to get the browse list.
- Revised the configuration dialog. Most important change is, that the
config dialog does not need that much space anymore.
- Sped up the retrieval of IP addresses in the Smb4KIPFinder class.
- Revised mouse handling in Smb4KShareWidget class.
- Smb4K can detect the IP address also with Samba pre-releases correctly.
- Ported Smb4KScanner, Smb4KBrowserWidget and Smb4KBrowserWidgetItem classes
to use Smb4K*Item containers.
- Revised code in Smb4KPasswdReader class and renamed several functions.
- Rewrote program detection in Smb4KStarter (closes #1861).
- Major revision of Smb4KMounter class. Many functions have been modified
and many bugs fixed.
Smb4K 0.4.0 (2004-05-02):
- This version REQUIRES KDE 3.2.0 or higher.
- Fixed unmounting of all shares upon exit.
- Fixed several memory leaks (closes #1144).
- Fixed layout problem with Plastik theme in the network tab of the
configuration dialog.
- Fixed unmounting of shares that contain parentheses.
- Added ability to execute mount and umount SUID root. This feature requires
the program super [ftp://ftp.ucolick.org/pub/users/will/].
- Added ability to force the unmounting of dead shares (closes #764). This
feature requires Linux kernel 2.4.11 or later, a recent util-linux package
and the program super.
- Added the ability to bookmark shares (closes #1319).
- Added special handling of 'homes' shares.
- Added system tray icon for the application with the ability to open mounted
shares and to open the configuration dialog. It shows also available
bookmarks.
- With the implementation of the system tray, the application is started
minimized.
- Added support of advanced Samba options (closes #1359 and #1488).
- Added ability to authenticate to master browsers when retrieving browse
lists (closes #1439).
- Added ability to select the program used for network searches (closes #1501).
- Added searching for hosts via IP addresses.
- Added detection, displaying and usage of IP addresses.
- Added user and group information to the "Share" tab.
- Added the ability to allow the user to unmount shares that are not owned by
him/her. This feature is off by default.
- Added "Quit" and "Configure Smb4K..." action to toolbar.
- Added French, Slovak and Spanish translation. Thanks go to Nicolas Ternisien
Michal Sulek and Quique for providing them.
- Revised the Smb4KStarter class: added detection of mandatory programs and
Samba's version; added error message box that reports missing programs;
removed the splash screen; moved the mounting of recently used shares to the
Smb4KMounter class.
- Revised the Smb4KPasswdReader class and removed some bugs.
- Revised the Smb4KShareWidget and Smb4KShareWidgetItem classes.
- Improved the error messages of the configuration dialog.
- Improved the status bar message handling and made Smb4K more communicative.
- Revised the process of handling the list of mounted shares centralizing it
with Smb4KShare
- Moved error dialogs to the core classes.
- Moved desktop entry to category "Utilities".
Smb4K 0.3.2 (2004-01-16):
- Fixed crash in Smb4KBrowserWidget class (closes #1145).
- Fixed hanging when exiting after long use.
- Fixed generation of wrong address entry after using the combo box to
switch directories in the preview dialog.
- Fixed a bug in search tab, that led to an insertion attempt of a non-existent
share when clicking 'Add' after clearing.
- Fixed handling of passwords containing special characters (closes #1182).
- Fixed compilation error with KDE 3.2 pre-releases.
- Added ability to force the generated subdirectories to be lower case.
- Added weak password obfuscation. NOTE: After the first use the authentication
info won't be usable for prior version of Smb4K.
- Added ability to hide shares that are not owned by the user.
- Added Brazilian Portuguese, Ukrainian, and Hungarian translation. Thanks go
to Giovanni Degani, Ivan Petrouchtchak, and Karoly Barcza for providing them.
- Added ability to navigate through the main window's tabs by pressing the
shortscuts CTRL+1/2/3.
- Added OS and version detection.
- Added credits.
- Added default login (closes #1133).
- Added support for empty passwords (closes #1268 and #1269).
- Removed the preview's info dialog.
- Revised shares view: major feature enhancements and new look.
- Revised the Smb4KMounter class: major improvements and bug fixes.
- Revised the Smb4KScanner class: major improvements and bug fixes.
- Revised share tab.
- Revised network browser widget.
- Revised configuration dialog; renamed and added pages; options will also
be reread when pressing "Apply"; moved some configuration entries.
- Rewrote Smb4KStarter class and added major enhancements.
- Rewrote internal communication infrastructure.
- Renamed some pages of the configuration dialog (and their classes too).
- All buttons now respect KDE's global option "Show icons on buttons".
- Unified error message boxes.
Smb4K 0.3.1 (2003-11-14):
- Fixed a crash in the browse window.
- Fixed duplicate share entries.
- Added status messages for the mount process.
- Added titles to the pop-up menus.
- Added progress bar to the splash screen.
- Added Chinese (zh_CN) and Russian translation. Thanks go to Nick Chen
and Yudin Stanislav for providing them.
- Added monitoring of selected share to "Share" tab.
- Added ability to open a share by executing it.
- Revised internal communication of the program parts.
- Revised core classes: many changes and bug fixes were done; source
code documentation has been improved.
- Improved the authentication tab of the configuration dialog.
- Improved preview dialog and fixed handling of hidden files/directories.
- Improved error handling of the browse code.
- Improved status bar and added progress bar to it.
- Improved WINS server support.
- The search function now uses nmblookup, which makes it more reliable.
- The "ERRDOS - ERRnoaccess" error message is now respected by the mounter.
- Only one global password reader instance is used.
- And, as always: Some more improvements and minor bug fixes.
Smb4K 0.3.0a (2003-09-21):
- Fixed crash upon start-up.
Smb4K 0.3.0 (2003-09-19):
- Fixed faulty checking during mount process.
- Fixed the host-in-wrong-workgroup problem.
- Fixed truncated workgroup entries, if the WINS server was queried.
- Fixed crash, if the user pressed CTRL+U and no share was highlighted.
- Fixed bug in the "Unmount All" routine.
- Fixed bug #765: Shares that contain spaces (e. g. "Shared Files") are
handled correctly.
- Added popup menu to the browser window.
- Added preview of network shares.
- Added authentication dialog.
- Added request buffering to the browse and mount code.
- Added selection of the look-up method.
- Added directory info to "Share" tab; made overall improvements.
- Added type info to the "Network" tab.
- Added nice caption.
- Added Polish translation. Thanks go to Radoslaw Zawartko for providing it.
- Added detection of external mounts/unmounts during program run.
- Improved "splash screen".
- /usr/local/etc (FreeBSD) is searched for smb.conf, too.
- Merged Smb4KSearch and Smb4KScanner core classes.
- Removed KProcess::setEnvironment() stuff from the browse and mount code.
It only caused problems.
- Changed password handling. Passwords for single shares can be defined.
Unfortunaltelly, it is INCOMPATIBLE with the old one. Sorry, folks!
- Scanning for Server and OS info is only done, if it is necessary.
- Clicking onto an empty space in the browser window will hide the entries
in the "Network" tab.
- And, as always: Some more improvements and minor bug fixes.
Smb4K 0.2.1 (2003-06-28):
- Fixed hanging of Smb4K when exiting via File->Quit.
- Fixed wrong master entry for hosts, that were added by a network search.
- Fixed duplicate workgroup entries.
- Fixed several problems in the browse code.
- Fixed a crash in the "Logins" config tab.
- Improved the "Network" and "Share" tab.
- Improved the share view's popup menu.
- Redesigned the configuartion dialog. Now it complies with KDE standards.
- Added Catalan translation. Many thanks go to Leopold Palomo Avellaneda for
providing it.
- Added Swedish translation.
- Added experimental WINS server support.
- Separated KProcess stuff from the widget classes.
- Login information is stored in a separate file with strict permissions.
- Many more improvements, bug fixes and code clean-ups.
Smb4K 0.2.0a (2003-06-11):
- Fixed truncated kde_qt_dirs variable in the configure script. The compilation
problems with Red Hat and other distributions should be gone now.
- Fixed a bug in the browse code, that made the browse lists of some hosts
inaccessible under certain circumstances.
- Fixed a bug in the mount routine, that prevented a share from being displayed,
if output appeared on stdout/stderr during mounting.
Smb4K 0.2.0 (2003-05-31):
- Fixed two bugs, that prevented the "Abort" action from being disabled after a
network scan.
- Fixed the annoying disappearance of the type and comment entries in the
browser window after the configuration dialog was closed.
- Fixed a bug in the "Network" and "Share" tab, that made the entries appear
clustered in the upper left corner.
- Fixed wrong nmblookup command line, that made Smb4K not work with Samba
>=3.0alpha24.
- Added possibility to unmount all shares at once (even on exit).
- Added option to mount recently used shares on start-up.
- Added basic network search.
- Added icons to all tabs.
- Added shortcuts.
- Redesigned the tabs in the configuration dialog.
- The "Network" tab now shows the comment at all times.
- The widget sizes can freely be adjusted and will be restored on start-up.
There are no hard coded values anymore.
- Many other bug fixes, internal changes and code clean-ups.
Smb4K 0.1.1 (2003-04-20):
- Actions are only enabled, when they are needed.
- New program icon. It comes from the Crystal 0.85 icon set.
- Added explanation to the "Logins" tab of the configuration dialog.
- Labels were shortened and unified.
- Printer shares can be hidden now.
- Added comment to the network info tab. Whether the comment will be shown
depends on your choice in the configuration dialog.
- A few more bug fixes and improvements I can't remember exactly.
Smb4K 0.1.0 (2003-04-14):
- Initial release.
|