File: news.html

package info (click to toggle)
libvirt 1.2.9-9%2Bdeb8u5
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 174,832 kB
  • sloc: ansic: 463,173; xml: 68,283; sh: 16,393; makefile: 4,580; python: 3,705; perl: 3,675; ml: 470; sed: 16
file content (16314 lines) | stat: -rw-r--r-- 1,237,972 bytes parent folder | download | duplicates (3)
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
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
14531
14532
14533
14534
14535
14536
14537
14538
14539
14540
14541
14542
14543
14544
14545
14546
14547
14548
14549
14550
14551
14552
14553
14554
14555
14556
14557
14558
14559
14560
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
14576
14577
14578
14579
14580
14581
14582
14583
14584
14585
14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
14621
14622
14623
14624
14625
14626
14627
14628
14629
14630
14631
14632
14633
14634
14635
14636
14637
14638
14639
14640
14641
14642
14643
14644
14645
14646
14647
14648
14649
14650
14651
14652
14653
14654
14655
14656
14657
14658
14659
14660
14661
14662
14663
14664
14665
14666
14667
14668
14669
14670
14671
14672
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
14688
14689
14690
14691
14692
14693
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
14745
14746
14747
14748
14749
14750
14751
14752
14753
14754
14755
14756
14757
14758
14759
14760
14761
14762
14763
14764
14765
14766
14767
14768
14769
14770
14771
14772
14773
14774
14775
14776
14777
14778
14779
14780
14781
14782
14783
14784
14785
14786
14787
14788
14789
14790
14791
14792
14793
14794
14795
14796
14797
14798
14799
14800
14801
14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
14818
14819
14820
14821
14822
14823
14824
14825
14826
14827
14828
14829
14830
14831
14832
14833
14834
14835
14836
14837
14838
14839
14840
14841
14842
14843
14844
14845
14846
14847
14848
14849
14850
14851
14852
14853
14854
14855
14856
14857
14858
14859
14860
14861
14862
14863
14864
14865
14866
14867
14868
14869
14870
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
15236
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
15286
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
15343
15344
15345
15346
15347
15348
15349
15350
15351
15352
15353
15354
15355
15356
15357
15358
15359
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
15604
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!--
        This file is autogenerated from news.html.in
        Do not edit this file. Changes will be lost.
      -->
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" type="text/css" href="main.css" />
    <link rel="SHORTCUT ICON" href="32favicon.png" />
    <title>libvirt: Releases</title>
    <meta name="description" content="libvirt, virtualization, virtualization API" />
  </head>
  <body>
    <div id="header">
      <div id="headerLogo"></div>
      <div id="headerSearch">
        <form action="search.php" enctype="application/x-www-form-urlencoded" method="get"><div>
            <input id="query" name="query" type="text" size="12" value="" />
            <input id="submit" name="submit" type="submit" value="Search" />
          </div></form>
      </div>
    </div>
    <div id="body">
      <div id="menu">
        <ul class="l0"><li>
            <div>
              <a title="Front page of the libvirt website" class="inactive" href="index.html">Home</a>
            </div>
          </li><li>
            <div>
              <span class="active">News</span>
              <ul class="l1"><li>
                  <div>
                    <a title="Details about libvirt maintenance releases" class="inactive" href="http://wiki.libvirt.org/page/Maintenance_Releases">Maintenance Releases</a>
                  </div>
                </li></ul>
              <ul class="l1"><li>
                  <div>
                    <a title="Latest commit messages from the source repository" class="inactive" href="http://libvirt.org/git/?p=libvirt.git;a=log">Git log</a>
                  </div>
                </li></ul>
            </div>
          </li><li>
            <div>
              <a title="Applications known to use libvirt" class="inactive" href="apps.html">Applications</a>
            </div>
          </li><li>
            <div>
              <a title="Get the latest source releases, binary builds and get access to the source repository" class="inactive" href="downloads.html">Downloads</a>
            </div>
          </li><li>
            <div>
              <a title="Information for users, administrators and developers" class="inactive" href="docs.html">Documentation</a>
            </div>
          </li><li>
            <div>
              <a title="User contributed content" class="inactive" href="http://wiki.libvirt.org">Wiki</a>
            </div>
          </li><li>
            <div>
              <a title="Frequently asked questions" class="inactive" href="http://wiki.libvirt.org/page/FAQ">FAQ</a>
            </div>
          </li><li>
            <div>
              <a title="How and where to report bugs and request features" class="inactive" href="bugs.html">Bug reports</a>
            </div>
          </li><li>
            <div>
              <a title="How to contact the developers via email and IRC" class="inactive" href="contact.html">Contact</a>
            </div>
          </li><li>
            <div>
              <a title="Available test suites for libvirt" class="inactive" href="testsuites.html">Test suites</a>
            </div>
          </li><li>
            <div>
              <a title="Miscellaneous links of interest related to libvirt" class="inactive" href="relatedlinks.html">Related Links</a>
            </div>
          </li><li>
            <div>
              <a title="Overview of all content on the website" class="inactive" href="sitemap.html">Sitemap</a>
            </div>
          </li></ul>
      </div>
      <div id="content">
        <h1>Releases</h1>
        <p>Here is the list of official releases, it is also possible to just use the <a href="downloads.html" shape="rect">GIT version or snapshot</a>, contact the mailing list
and check the <a href="http://libvirt.org/git/?p=libvirt.git;a=log" shape="rect">GIT log</a> to gauge progress.</p>
        <h3>1.2.9: Oct 1 2014</h3>
        <ul><li> Features:<br />
      Introduce virNodeAllocPages (Michal Privoznik),<br />
      event: introduce new event for tunable values (Pavel Hrdina),<br />
      add migration support for OpenVZ driver (Hongbin Lu),<br />
      Add support for fetching statistics of completed jobs (Jiri Denemark)<br />
      </li><li> Security:<br />
      CVE-2014-3633: qemu: blkiotune: Use correct definition when looking up disk (Peter Krempa),<br />
      CVE-2014-3657: domain_conf: fix domain deadlock (Pavel Hrdina)<br />
      </li><li> Documentation:<br />
      LXC: emphasis uid start of idmap only accept '0' in docs (Chen Hanxiao),<br />
      specify vhost-net instead of net-vhost (Jianwei Hu),<br />
      LXC: add HOME environment variable docs (Chen Hanxiao),<br />
      update zfs documentation (Roman Bogorodskiy),<br />
      man: virsh: Add docs for supported stats groups (Peter Krempa),<br />
      lib: Document that virConnectGetAllDomainStats may omit some stats fields (Peter Krempa),<br />
      lib: De-duplicate stats group documentation for all stats functions (Peter Krempa),<br />
      util: Fix copy-paste error in virXPathLongLong description (Martin Kletzander),<br />
      formatdomain: Update &lt;loader/&gt; example to match the rest (Michal Privoznik),<br />
      virsh: desc command in --title mode mentions description instead of title (Peter Krempa),<br />
      fix encryption format attribute in example (Ján Tomko)<br />
      </li><li> Portability:<br />
      qemu: monitor: Avoid shadowing variable "devname" on FreeBSD (Peter Krempa),<br />
      lxc_monitor_protocol: Redefine xdr_uint64_t if needed (Michal Privoznik),<br />
      Fix build without polkit (Pavel Hrdina),<br />
      Fix MinGW build (Pavel Hrdina),<br />
      Fix build in qemu_command (Roman Bogorodskiy),<br />
      Fix build in qemu_capabilities (Roman Bogorodskiy),<br />
      bhyve: tests: fix build (Roman Bogorodskiy),<br />
      virprocess: Extend list of platforms for setns wrapper (Michal Privoznik),<br />
      vircgroup: Fix broken builds without cgroups (John Ferlan),<br />
      util/virprocess.c: fix MinGW build (Pavel Hrdina),<br />
      blockjob: avoid 32-bit compilation warning (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      Allow setting migration max downtime any time (Chris St. Pierre),<br />
      qemu: monitor: return block stats data as a hash to avoid disk mixup (Peter Krempa),<br />
      Also filter out non-migratable features out of host-passthrough (Ján Tomko),<br />
      Don't verify CPU features with host-passthrough (Ján Tomko),<br />
      Fix crash cpu_shares change event crash on domain startup (Ján Tomko),<br />
      storage: Fix logical pool fmt type (Erik Skultety),<br />
      virsh: Fix help message of allocpages (Tomoki Sekiyama),<br />
      qemu: remove capabilities.monitor.sock when done (Guido Günther),<br />
      conf: report error in virCPUDefParseXML (Jincheng Miao),<br />
      Check for NULL in qemu monitor event filter (Ján Tomko),<br />
      qemuPrepareNVRAM: Save domain after NVRAM path generation (Michal Privoznik),<br />
      remoteNodeGetFreePages: Don't alloc args.pages.pages_val (Michal Privoznik),<br />
      virNodeAllocPages: Disallow RO connection (Michal Privoznik),<br />
      polkit_driver: fix possible segfault (Pavel Hrdina),<br />
      blkdeviotune: fix bug with saving values into live XML (Pavel Hrdina),<br />
      security: Fix labelling host devices (bz 1145968) (Cole Robinson),<br />
      nodeinfo: fix nodeGetFreePages when max node is zero (Jincheng Miao),<br />
      Fix bug with loading bridge name for active domain during libvirtd start (Pavel Hrdina),<br />
      libvirt-guests: run after time-sync.target (Jim Fehlig),<br />
      qemu: Fix memory leak in RDMA migration code (Jiri Denemark),<br />
      nodeinfo: report error when given node is out of range (Jincheng Miao),<br />
      virsh-host: fix pagesize unit of freepages (Jincheng Miao),<br />
      qemu: raise an error when trying to use readonly sata disks (Giuseppe Scrivano),<br />
      qemu: Add missing goto on rawio (John Ferlan),<br />
      Move the FIPS detection from capabilities (Pavel Hrdina),<br />
      virSecuritySELinuxSetTapFDLabel: Temporarily revert to old behavior (Michal Privoznik),<br />
      audit: fix memory leak without WITH_AUDIT (Ján Tomko),<br />
      Fixes for domains with no iothreads (Ján Tomko),<br />
      Fix leak in x86UpdateHostModel (Ján Tomko),<br />
      Fix libvirtd crash when removing metadata (Erik Skultety),<br />
      qemu: Don't fail startup/attach for IOThreads if no JSON (John Ferlan),<br />
      qemu: fix crash with shared disks (Ján Tomko),<br />
      qemu: Honor hugepages for UMA domains (Michal Privoznik),<br />
      conf: Disallow nonexistent NUMA nodes for hugepages (Michal Privoznik),<br />
      domaincapstest: Run cleanly on systems missing OVMF firmware (Michal Privoznik),<br />
      util: storage: Copy driver type when initializing chain element (Peter Krempa),<br />
      qemu: time: Report errors if agent command fails (Peter Krempa),<br />
      network: check negative values in bridge queues (Erik Skultety),<br />
      openvz: fixed two memory leaks on migration code (Hongbin Lu),<br />
      util: storage: Fix qcow(2) header parser according to docs (Peter Krempa),<br />
      qemu: Fix call in qemuDomainSetNumaParamsLive for virCgroupNewIOThread (John Ferlan),<br />
      qemu: Fix iothreads issue (John Ferlan),<br />
      domain_conf: Add iothreadpin to cputune (John Ferlan),<br />
      network: check for invalid forward delay time (Erik Skultety),<br />
      qemu: Fix build breaker on printf directive (John Ferlan),<br />
      daemon: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      qemu: Resolve Coverity BAD_SIZEOF (John Ferlan),<br />
      Resolve Coverity CHECKED_RETURN (John Ferlan),<br />
      virsh: Resolve Coverity DEADCODE (John Ferlan),<br />
      domain_conf: Resolve Coverity COPY_PASTE_ERROR (John Ferlan),<br />
      virtime: Resolve Coverity DEADCODE (John Ferlan),<br />
      remote_driver: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      node_device_udev: Try harder to get human readable vendor:product (Lubomir Rintel),<br />
      util: fix potential leak in error codepath (Martin Kletzander),<br />
      network: try to eliminate default network conflict during package install (Laine Stump),<br />
      libxl: Resolve Coverity CHECKED_RETURN (John Ferlan),<br />
      qemu: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      virfile: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      virutil: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      daemon: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      virsh: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      libvirt.spec: Fix permission even for libvirt-driver-qemu (Michal Privoznik),<br />
      libxl: fix mapping of libvirt and libxl lifecycle actions (Jim Fehlig),<br />
      nvram: Fix permissions (Michal Privoznik),<br />
      libxl: Resolve Coverity NULL_RETURNS (John Ferlan),<br />
      qemu: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      qemu: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      xen: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      nodeinfo: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      qemu: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      network_conf: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      qemu: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      virstring: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      network: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      qemu: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      lxc: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      qemu: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      virsh: Resolve Coverity DEADCODE (John Ferlan),<br />
      tests: Resolve Coverity DEADCODE (John Ferlan),<br />
      qemu: Resolve Coverity DEADCODE (John Ferlan),<br />
      virsh: Resolve Coverity DEADCODE (John Ferlan),<br />
      virfile: Resolve Coverity DEADCODE (John Ferlan),<br />
      virsh: Resolve Coverity DEADCODE (John Ferlan),<br />
      storage: Resolve Coverity OVERFLOW_BEFORE_WIDEN (John Ferlan),<br />
      qemu: Resolve Coverity REVERSE_INULL (John Ferlan),<br />
      vbox: Resolve Coverity UNUSED_VALUE (John Ferlan),<br />
      storage: Resolve Coverity UNUSED_VALUE (John Ferlan),<br />
      qemu_driver: Resolve Coverity COPY_PASTE_ERROR (John Ferlan),<br />
      selinux: Properly check TAP FD label (Michal Privoznik),<br />
      qemu: Silence coverity on optional migration stats (Jiri Denemark),<br />
      qemu: panic device: check for invalid address type (Erik Skultety),<br />
      qemu: Propagate QEMU errors during incoming migrations (Jiri Denemark),<br />
      selinux: Avoid label reservations for type = none (Shivaprasad G Bhat),<br />
      storage_conf: Fix libvirtd crash when defining scsi storage pool (Pradipta Kr. Banerjee),<br />
      Don't include non-migratable features in host-model (Ján Tomko),<br />
      conf: Fix even implicit labels (Michal Privoznik),<br />
      apparmor: allow reading cap_last_cap (Felix Geyer),<br />
      security: fix DH key generation when FIPS mode is on (Giuseppe Scrivano),<br />
      lxc_container: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      vircgroup: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      qemu_process: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      remote: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      test_conf: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      tests: Resolve Coverity RESOURCE_LEAK in commandhelper (Wang Rui),<br />
      sanlock: Avoid freeing uninitialized value (Jiri Denemark),<br />
      qemu: ensure sane umask for qemu process (Chunyan Liu),<br />
      spec: Fix preun script for daemon (Jiri Denemark),<br />
      remote: Fix memory leak on error path when deserializing bulk stats (Peter Krempa),<br />
      Free ifname in testDomainGenerateIfnames (Ján Tomko)<br />
      </li><li> Improvements:<br />
      Fix typo s/EMULATORIN/EMULATORPIN/ (Daniel P. Berrange),<br />
      Rename tunable event constants (Daniel P. Berrange),<br />
      qemu: Always re-detect backing chain (Peter Krempa),<br />
      event_example: cleanup example code for tunable event (Pavel Hrdina),<br />
      parallels: login to parallels SDK (Dmitry Guryanov),<br />
      parallels: build with parallels SDK (Dmitry Guryanov),<br />
      virnetserver: Raise log level of max_clients related messages (Michal Privoznik),<br />
      blkdeviotune: trigger tunable event for blkdeviotune updates (Pavel Hrdina),<br />
      tunable_event: extend debug message and tweak limit for remote message (Pavel Hrdina),<br />
      virsh: Expose virNodeAllocPages (Michal Privoznik),<br />
      nodeinfo: Implement nodeAllocPages (Michal Privoznik),<br />
      virnuma: Introduce virNumaSetPagePoolSize (Michal Privoznik),<br />
      nodeGetFreePages: Push forgotten change (Michal Privoznik),<br />
      Convert polkit code to use DBus API instead of CLI helper (Daniel P. Berrange),<br />
      Support passing dict by reference for dbus messages (Daniel P. Berrange),<br />
      Convert remote daemon &amp; acl code to use polkit API (Daniel P. Berrange),<br />
      Convert callers to use typesafe APIs for getting identity attrs (Daniel P. Berrange),<br />
      Convert callers to use typesafe APIs for setting identity attrs (Daniel P. Berrange),<br />
      Add typesafe APIs for virIdentity attributes (Daniel P. Berrange),<br />
      Add common API for doing polkit authentication (Daniel P. Berrange),<br />
      qemu: wire up virtio-net segment offloading options (Ján Tomko),<br />
      conf: add options for disabling segment offloading (Ján Tomko),<br />
      storage: Improve error message when traversing backing chains (Peter Krempa),<br />
      qemu: Report better errors from broken backing chains (Peter Krempa),<br />
      qemu: Sanitize argument names and empty disk check in qemuDomainDetermineDiskChain (Peter Krempa),<br />
      util: storage: Allow metadata crawler to report useful errors (Peter Krempa),<br />
      cputune_event: queue the event for cputune updates (Pavel Hrdina),<br />
      add an example how to use tunable event (Pavel Hrdina),<br />
      conf: sanitize tap and vhost paths (Martin Kletzander),<br />
      qemuBuildNumaArgStr: Discard def-&gt;cpu check (Michal Privoznik),<br />
      nodeinfo: Prefer MIN in nodeGetFreePages (Michal Privoznik),<br />
      domain_conf: separate structures from virDomainDef (Pavel Hrdina),<br />
      Fix typo of virNodeGetFreePages comment (Jincheng Miao),<br />
      qemu: Memory pre-pinning support for RDMA migration (Michael R. Hines),<br />
      qemu: RDMA migration support (Michael R. Hines),<br />
      qemu: Add RDMA migration capabilities (Jiri Denemark),<br />
      qemu: Prepare support for arbitrary migration protocol (Jiri Denemark),<br />
      qemu: Fix old tcp:host URIs more cleanly (Jiri Denemark),<br />
      qemu: Expose additional migration statistics (Michael R. Hines),<br />
      cpu: fix wrong single quote mark (Chen Fan),<br />
      cpu: remove repeated word in error message (Daniel P. Berrange),<br />
      qemu: hook: Provide hook when restoring a domain save image (Peter Krempa),<br />
      schema: properly set tap and vhost backend attributes optional (Jianwei Hu),<br />
      qemu: save image: Split out checks done only when editing the save img (Peter Krempa),<br />
      qemu: save image: Split out new definition check/update (Peter Krempa),<br />
      qemu: save image: Add possibility to return XML stored in the image (Peter Krempa),<br />
      qemu: save image: Split out user provided XML checker (Peter Krempa),<br />
      libxl: Drop driver lock in libxlDomainDefineXML (Jim Fehlig),<br />
      qemu: Process the hostdev "rawio" setting (John Ferlan),<br />
      hostdev: Add "rawio" attribute to _virDomainHostdevSubsysSCSI (John Ferlan),<br />
      domain_conf: Change virDomainDiskDef 'rawio' to use virTristateBool (John Ferlan),<br />
      storage: zfs: implement pool build and delete (Roman Bogorodskiy),<br />
      qemu: Improve check for local storage (Peter Krempa),<br />
      maint: clean up _virDomainMemoryStat (Wang Yufei),<br />
      maint: clean up _virDomainBlockStats (Wang Yufei),<br />
      maint: clean up _virDomainInterfaceStats (Wang Yufei),<br />
      virsh: add options to query bulk stats group (Francesco Romani),<br />
      qemu: bulk stats: implement block group (Francesco Romani),<br />
      qemu: bulk stats: implement interface group (Francesco Romani),<br />
      qemu: bulk stats: implement VCPU group (Francesco Romani),<br />
      qemu: bulk stats: implement balloon group (Francesco Romani),<br />
      qemu: bulk stats: implement CPU stats group (Francesco Romani),<br />
      qemu: bulk stats: extend internal collection API (Francesco Romani),<br />
      rpc: make daemon spawning a bit more intelligent (Martin Kletzander),<br />
      domaincaps: Expose UEFI binary path, if it exists (Michal Privoznik),<br />
      qemu_capabilities: Change virQEMUCapsFillDomainCaps signature (Michal Privoznik),<br />
      qemu: add support for shared memory mapping (Martin Kletzander),<br />
      docs, conf, schema: add support for shared memory mapping (Martin Kletzander),<br />
      schemas: finish virTristate{Bool,Switch} transition (Martin Kletzander),<br />
      qemu: Add support for multiple versions of 'pseries' machine type (Pradipta Kr. Banerjee),<br />
      domaincaps: Expose UEFI capability (Michal Privoznik),<br />
      Wire up the interface backend options (Ján Tomko),<br />
      conf: add backend element to interfaces (Ján Tomko),<br />
      conf: remove redundant local variable (Ján Tomko),<br />
      conf: split out virtio net driver formatting (Ján Tomko),<br />
      qemu: Need to check for capability before query (John Ferlan),<br />
      cputune: allow interleaved xml (Eric Blake),<br />
      network: detect conflicting route even if it is the final entry (Laine Stump),<br />
      qemu: Allow pinning specific IOThreads to a CPU (John Ferlan),<br />
      qemu_cgroup: Introduce cgroup functions for IOThreads (John Ferlan),<br />
      qemu_domain: Add niothreadpids and iothreadpids (John Ferlan),<br />
      vircgroup: Introduce virCgroupNewIOThread (John Ferlan),<br />
      qemu: Issue query-iothreads and to get list of active IOThreads (John Ferlan),<br />
      virsh: Add iothread to 'attach-disk' (John Ferlan),<br />
      util: get rid of unnecessary umask() call (Martin Kletzander),<br />
      remove redundant pidfile path constructions (Martin Kletzander),<br />
      rpc: reformat the flow to make a bit more sense (Martin Kletzander),<br />
      blockjob: allow finer bandwidth tuning for set speed (Eric Blake),<br />
      blockcopy: add qemu implementation of new tunables (Eric Blake),<br />
      blockcopy: add qemu implementation of new API (Eric Blake),<br />
      blockcopy: tweak how rebase calls into copy (Eric Blake),<br />
      virDomainUndefineFlags: Allow NVRAM unlinking (Michal Privoznik),<br />
      virsh: Move --completed from resume to domjobinfo (Jiri Denemark),<br />
      conf: snapshot: Don't default-snapshot empty drives (Peter Krempa),<br />
      util:  Add function to check if a virStorageSource is "empty" (Peter Krempa),<br />
      tests: Add more test suite mock helpers (Daniel P. Berrange),<br />
      util: Allow port allocator to skip bind() check (Daniel P. Berrange),<br />
      qemu: remove leftover virResetLastError (Ján Tomko),<br />
      util: storage: Convert disk locality check to switch statement (Peter Krempa),<br />
      virprocess: Introduce our own setns() wrapper (Michal Privoznik),<br />
      qemu: dump: Resume CPUs only when the VM is still alive (Peter Krempa),<br />
      util: process: Don't report OOM errors in helper (Peter Krempa),<br />
      qemu: Automatically create NVRAM store (Michal Privoznik),<br />
      qemu: Implement extended loader and nvram (Michal Privoznik),<br />
      conf: Extend &lt;loader/&gt; and introduce  &lt;nvram/&gt; (Michal Privoznik),<br />
      qemu: Transfer recomputed stats back to source (Jiri Denemark),<br />
      qemu: Recompute downtime and total time when migration completes (Jiri Denemark),<br />
      qemu: Transfer migration statistics to destination (Jiri Denemark),<br />
      virsh: Add support for completed job stats (Jiri Denemark),<br />
      qemu: Avoid incrementing jobs_queued if virTimeMillisNow fails (Jiri Denemark),<br />
      Refactor job statistics (Jiri Denemark),<br />
      virsh: additional scaled output units (Eric Blake),<br />
      util: let virSetSockReuseAddr report unified error message (Martin Kletzander),<br />
      blockcopy: add a way to parse disk source (Eric Blake),<br />
      qemu: snapshot: Simplify error paths (Peter Krempa),<br />
      qemu: snapshot: Fix snapshot function header formatting and spacing (Peter Krempa),<br />
      qemu: snapshot: Acquire job earlier on snapshot revert/delete (Jincheng Miao),<br />
      qemu: snapshot: Fix job handling when creating snapshots (Peter Krempa),<br />
      qemu: Rename DEFAULT_JOB_MASK to QEMU_DEFAULT_JOB_MASK (Peter Krempa),<br />
      blockcopy: remote implementation for new API (Eric Blake),<br />
      blockcopy: expose new API in virsh (Eric Blake),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      blockcopy: split out virsh implementation (Eric Blake),<br />
      blockcopy: allow block device destination (Eric Blake),<br />
      blockjob: add new --bytes flag to virsh blockjob (Eric Blake),<br />
      blockjob: add new --raw flag to virsh blockjob (Eric Blake),<br />
      blockjob: split up virsh blockjob info (Eric Blake),<br />
      blockjob: allow finer bandwidth tuning for query (Eric Blake),<br />
      blockjob: add new monitor json conversions (Eric Blake),<br />
      blockjob: hoist bandwidth scaling out of monitor code (Eric Blake),<br />
      blockjob: split out block info monitor handling (Eric Blake),<br />
      tests: Add test cases for previous commit (Michal Privoznik),<br />
      blockjob: split out block info driver handling (Eric Blake),<br />
      blockjob: shuffle block rebase code (Eric Blake),<br />
      maint: tighten curly brace syntax checking (Eric Blake),<br />
      maint: use hanging curly braces (Eric Blake),<br />
      maint: enforce previous if-else {} cleanups (Eric Blake),<br />
      maint: use consistent if-else braces in remaining spots (Eric Blake),<br />
      maint: use consistent if-else braces in lxc, vbox, phyp (Eric Blake),<br />
      maint: use consistent if-else braces in xen and friends (Eric Blake),<br />
      maint: use consistent if-else braces in qemu (Eric Blake),<br />
      maint: use consistent if-else braces in conf and friends (Eric Blake),<br />
      LXC: add HOME environment variable (Chen Hanxiao),<br />
      tests: force FIPS testing mode with new enough GNU TLS versions (Giuseppe Scrivano),<br />
      command: test umask support (Eric Blake),<br />
      util: don't shadow global umask declaration (Martin Kletzander),<br />
      util: Introduce flags field for macvtap creation (Matthew Rosato)<br />
      </li><li> Cleanups:<br />
      nodeinfo: fix version of nodeAllocPages (Tomoki Sekiyama),<br />
      audit: remove redundant NULL assignment (Ján Tomko),<br />
      qemu: Drop unused formatting of uuid (Peter Krempa),<br />
      qemu_cgroup: Adjust spacing around incrementor (John Ferlan),<br />
      qemu: dump: Fix formatting of function headers and code inline (Peter Krempa),<br />
      virsh: domain: Clean up handling of "dom" in "save" command (Peter Krempa)<br />
      </li></ul>
        <h3>1.2.8: Sep 2 2014</h3>
        <ul><li> Features:<br />
      blockcopy: virDomainBlockCopy with XML destination, typed params (Eric Blake),<br />
      lib: Introduce API for retrieving bulk domain stats (Peter Krempa),<br />
      Introduce virDomainOpenGraphicsFD API (Ján Tomko),<br />
      storage: ZFS support (Roman Bogorodskiy)<br />
      </li><li>Documentation:<br />
      fix bootmenu timeout description (Martin Kletzander),<br />
      conf: add support for bootmenu timeout (Martin Kletzander),<br />
      maint: fix comment typo (Eric Blake),<br />
      formatdomain: Reformat vCPU description (John Ferlan),<br />
      virsh: Fix help info for freepages (Li Yang),<br />
      virsh: man: Add LXC format info for domxml-from/to-native (Li Yang),<br />
      virsh: Fix comment for net-undefine (Li Yang),<br />
      man: virsh: add missing auto-converge option for 'migrate' (Pradipta Kr. Banerjee),<br />
      nwfilter: add missing dscp attribute (Jianwei Hu),<br />
      virsh: man: Crosslink "desc" and "metadata" sections (Peter Krempa),<br />
      man: virsh: Add 'vcpu_period' and 'vcpu_quota' support info for LXC (Li Yang),<br />
      man: virsh: Add man page for "virsh metadata" (Peter Krempa),<br />
      fix missing forward slash (Jianwei Hu),<br />
      use correct hints per bus type in &lt;disk&gt; examples (Eric Blake),<br />
      use unique dev names in &lt;disk&gt; examples (Eric Blake),<br />
      virsh: clean up attach-interface paragraph in man page (Laine Stump),<br />
      audit: Fix some comments (Wang Rui)<br />
      </li><li>Portability:<br />
      spec: drop anything older than Fedora 13 (Eric Blake),<br />
      fix mingw build (Pavel Hrdina),<br />
      build: fix mingw build with virCommandReorderFDs (Martin Kletzander),<br />
      build: force configure failed when perl is missing (Jincheng Miao),<br />
      Include param.h in case of HAVE_BSD_CPU_AFFINITY (Guido Günther)<br />
      </li><li>Bug Fixes:<br />
      blockcopy: allow larger buf-size (Eric Blake),<br />
      selinux: properly label tap FDs with imagelabel (Martin Kletzander),<br />
      Fix connection to already running session libvirtd (Christophe Fergeau),<br />
      storage: zfs: fix double listing of new volumes (Roman Bogorodskiy),<br />
      qemu_driver: Resolve Coverity FORWARD_NULL (John Ferlan),<br />
      virnetserverservice: Resolve Coverity ARRAY_VS_SINGLETON (John Ferlan),<br />
      libxl_migration: Resolve Coverity NULL_RETURNS (John Ferlan),<br />
      qemu_command: Resolve Coverity DEADCODE (John Ferlan),<br />
      qemu_driver: Resolve Coverity DEADCODE (John Ferlan),<br />
      domain_conf: Resolve Coverity DEADCODE (John Ferlan),<br />
      qemu_monitor: Resolve Coverity NESTING_INDENT_MISMATCH (John Ferlan),<br />
      storage_conf: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      qemu_driver: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      phyp_driver: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      libxl_migration: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      bridge_driver: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      virsh-network: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      network_conf: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      qemu_capabilities: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      libxl_domain: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      qemu_agent: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      qemu_command: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      cpu_x86: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      domain_conf: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      daemon: Resolve Coverity NEGATIVE_RETURNS (John Ferlan),<br />
      qemu_capabilities: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      tests: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      util: Resolve Coverity RESOURCE_LEAK (Wang Rui),<br />
      virsh: fix keepalive error msg (Erik Skultety),<br />
      qemu_capabilities: Resolve Coverity NULL_RETURNS (John Ferlan),<br />
      qemu_driver: Resolve Coverity CONSTANT_EXPRESSION_RESULT (John Ferlan),<br />
      domain_conf: Resolve Coverity REVERSE_INULL (John Ferlan),<br />
      qemu_command: Resolve Coverity REVERSE_INULL (John Ferlan),<br />
      domain_conf: Resolve Coverity REVERSE_INULL (John Ferlan),<br />
      storage_driver: Resolve Coverity REVERSE_INULL (John Ferlan),<br />
      xen_xm: Resolve Coverity USE_AFTER_FREE (John Ferlan),<br />
      xen_common: Resolve Coverity USE_AFTER_FREE (John Ferlan),<br />
      parallels: Resolve Coverity USE_AFTER_FREE (John Ferlan),<br />
      conf: fix leak with def-&gt;mem.hugepages (Martin Kletzander),<br />
      qemu: call endjob in RevertToSnapshot (Jincheng Miao),<br />
      virsh: Initialize vshData in cmdMigrate (Ján Tomko),<br />
      libxl: fix memory corruption introduced by commit b55cc5f4e (Jim Fehlig),<br />
      iotune: setting an invalid value now reports error (Erik Skultety),<br />
      xenconfig: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      virnetsocket: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      commandtest: Resolve Coverity RESOURCE_LEAK (John Ferlan),<br />
      numatune: setting --mode does not work well (Erik Skultety),<br />
      qemu: min_guarantee: Parameter 'min_guarantee' not supported (Erik Skultety),<br />
      Parallels: fix error with video card RAM dimension (Alexander Burluka),<br />
      util: compare floor attribute in virNetDevBandwidthEqual (Martin Kletzander),<br />
      conf: net: Correctly switch how to format address fields (Peter Krempa),<br />
      Perform disk config validity checking for attach-device config (John Ferlan),<br />
      nodeCapsInitNUMA: Avoid @cpumap leak (Michal Privoznik),<br />
      qemu: Issue rtc-reset-reinjection command after guest-set-time (Michal Privoznik),<br />
      qemu: forbid negative blkio values (Martin Kletzander),<br />
      lxc: forbid negative blkio values (Martin Kletzander),<br />
      qemu: Fix build error introduced in 653137eb957a278b556c6226424aad5395a (Peter Krempa),<br />
      qemu: blkiotune: Avoid accessing non-existing disk configuration (Peter Krempa),<br />
      qemu: Label all TAP FDs (Michal Privoznik),<br />
      cmdMigrate: move vshConnect before vshWatchJob (Chunyan Liu),<br />
      qemu: cpu: unplug: Remove vcpu pinning on cold cpu unplug (Peter Krempa),<br />
      qemu: Redundant listen address entry in quest xml (Erik Skultety),<br />
      daemon: Fix driver registration ordering (Michal Privoznik),<br />
      network: fix crash when starting a network with no &lt;pf&gt; element (Laine Stump),<br />
      qemu_process: fix memleak found by coverity (Pavel Hrdina),<br />
      Maximum vlanid should be 4095 in interface.rng (Jianwei Hu),<br />
      LXC: Fix virLXCControllerSetupDevPTS() wrt user namespaces (Richard Weinberger),<br />
      conf: fix parsing 'cmd_per_lun' and 'max_sectors' (Mo yuxiang),<br />
      bhyve: fix error message in bhyveStateInitialize (Dmitry Guryanov),<br />
      qemu: migration: Check domain live state after exitting the monitor (Peter Krempa),<br />
      qemu: managedsave: Check that VM is alive after entering async job (Peter Krempa),<br />
      numatune: Fix parsing of empty nodeset (0,^0) (Erik Skultety),<br />
      conf: Format interface's driver more frequently (Michal Privoznik),<br />
      network: populate interface pool immediately when network is started (Laine Stump),<br />
      network: make networkCreateInterfacePool more robust (Laine Stump),<br />
      Make 'uri' command a bit more prominent. (Guido Günther),<br />
      Don't fail qemu driver intialization if we can't determine hugepage size (Guido Günther),<br />
      blockjob: fix use-after-free in blockcopy (Eric Blake),<br />
      blockjob: avoid memory leak during block pivot (Eric Blake),<br />
      snapshot: conf: Enforce absolute paths on disk and memory images (Peter Krempa),<br />
      Node Devices: Fix nodedev-list for fc_host &amp; vports. (Prerna Saxena),<br />
      blockjob: correctly report active commit for job info (Eric Blake),<br />
      Fix vlanid attribute name in nwfilter d (Jianwei Hu),<br />
      Don't overwrite errors from virNetDevBandwidthSet (Ján Tomko),<br />
      virsh: check if domiftune parameters fit into UINT (Ján Tomko),<br />
      storage: Refresh storage pool after upload (John Ferlan)<br />
      </li><li>Improvements:<br />
      qemu: Allow use of iothreads for disk definitions (John Ferlan),<br />
      domain_conf: Add support for iothreads in disk definition (John Ferlan),<br />
      qemu: Add support for iothreads (John Ferlan),<br />
      domain_conf: Introduce iothreads XML (John Ferlan),<br />
      qemu: Implement bulk stats API and one of the stats groups to return (Peter Krempa),<br />
      virsh: Implement command to excercise the bulk stats APIs (Peter Krempa),<br />
      remote: Implement bulk domain stats APIs in the remote driver (Peter Krempa),<br />
      lib: Add few flags for the bulk stats APIs (Peter Krempa),<br />
      conf: Add helper to free domain list (Peter Krempa),<br />
      vbox: Register per partes (Michal Privoznik),<br />
      virDriverLoadModule: Honor libvirt func name tranlsation (Michal Privoznik),<br />
      virdrivermoduletest: Test all the modules (Michal Privoznik),<br />
      domain_conf: fix internal flag verification (Eric Blake),<br />
      API: Tweak virDomainOpenGraphics to return fd directly (Eric Blake),<br />
      virsh: domain: Split out code to lookup domain from string (Peter Krempa),<br />
      Wire up virDomainOpenGraphicsFD in QEMU driver (Ján Tomko),<br />
      Add RPC implementation for virDomainOpenGraphicsFd (Ján Tomko),<br />
      blkdeviotune: check for overflow when parsing XML (Erik Skultety),<br />
      storage: remove unused 'canonPath' in virStorageFileGetMetadata (Chen Fan),<br />
      Add new 'kvm' domain feature and ability to hide KVM signature (Alex Williamson),<br />
      maint: drop spurious semicolons (Eric Blake),<br />
      daemon: Fix option -v missing info priority log (Zhou Yimin),<br />
      qemu: add support for splash-timeout (Martin Kletzander),<br />
      qemu: add capability probing for splash-timeout (Martin Kletzander),<br />
      storage: zfs: implement download and upload (Roman Bogorodskiy),<br />
      fdstream: introduce virFDStreamOpenBlockDevice (Roman Bogorodskiy),<br />
      fdstream: report error if virSetNonBlock fails (Roman Bogorodskiy),<br />
      qemu: check for active domain after agent interaction (Eric Blake),<br />
      Parallels: Change config report errors code. (Alexander Burluka),<br />
      Parallels: add virNodeGetCPUMap(). (Alexander Burluka),<br />
      daemon: use socket activation with systemd (Martin Kletzander),<br />
      rpc: pass listen FD to the daemon being started (Martin Kletzander),<br />
      util: add virCommandPassListenFDs() function (Martin Kletzander),<br />
      tests: support dynamic prefixes in commandtest (Martin Kletzander),<br />
      cfg.mk: allow integers to be assigned a value computed with i|j|k (Martin Kletzander),<br />
      daemon: support passing FDs from the calling process (Martin Kletzander),<br />
      rpc: set listen backlog on FDs as well as on other sockets (Martin Kletzander),<br />
      remote: create virNetServerServiceNewFDOrUNIX() wrapper (Martin Kletzander),<br />
      util: abstract parsing of passed FDs into virGetListenFDs() (Martin Kletzander),<br />
      virsh: Don't print extra '-'s in error message for -k and -K options (Peter Krempa),<br />
      hvsupport: Adapt to vbox driver rewrite (Michal Privoznik),<br />
      qemu: hotplug: Sanitize shared device removal on media change (Peter Krempa),<br />
      qemu: conf: Split out code to retrieve hostdev key and reuse it (Peter Krempa),<br />
      qemu: conf: Split up qemuRemoveSharedDevice into per-device-type functions (Peter Krempa),<br />
      qemu: conf: Split up qemuAddSharedDevice into per-device-type functions (Peter Krempa),<br />
      qemu: conf: rename qemuCheckSharedDevice to qemuCheckSharedDisk (Peter Krempa),<br />
      qemu: shared: Split out shared device list remove code (Peter Krempa),<br />
      qemu: shared: Split out insertion code to the shared device list (Peter Krempa),<br />
      qemu: hotplug: Format proper source string for cdrom media change (Peter Krempa),<br />
      qemu: hotplug: Change arguments for qemuDomainChangeEjectableMedia (Peter Krempa),<br />
      qemu: hotplug: Add helper to initialize/teardown new disks for VMs (Peter Krempa),<br />
      qemu: hotplug: Untangle cleanup paths in qemuDomainChangeEjectableMedia (Peter Krempa),<br />
      conf: Pass virStorageSource into virDomainDiskSourceIsBlockType (Peter Krempa),<br />
      qemu: Explicitly state that hotplugging cdroms and floppies doesn't work (Peter Krempa),<br />
      conf: fix comment (Giuseppe Scrivano),<br />
      conf, virDomainFSDefPtr: rename "path" argument to "target" (Giuseppe Scrivano),<br />
      bhyve: add volumes support (Roman Bogorodskiy),<br />
      storage: make disk source pool translation generic (Roman Bogorodskiy),<br />
      driver: Move virDrvNetworkGetDHCPLeases to the appropriate section (Peter Krempa),<br />
      qemu: allow device block I/O tuning in session mode (Martin Kletzander),<br />
      src/xenconfig: move common parsing/formatting to xen_common (Jim Fehlig),<br />
      src/xenconfig: wrap common formatting code (Kiarie Kahurani),<br />
      src/xenconfig: wrap common parsing code (Kiarie Kahurani),<br />
      xen: rename xenxs to xenconfig (Jim Fehlig),<br />
      qemu: process: Pin on per-vcpu basis instead of per-vcpupin element (Peter Krempa),<br />
      conf: Refactor virDomainVcpuPinDefParseXML (Peter Krempa),<br />
      conf: cpupin: Remove useless checking of vcpupin element count (Peter Krempa),<br />
      qemu: process: Remove unnecessary argument and rename function (Peter Krempa),<br />
      vbox: Introducing vboxCommonDriver (Taowei),<br />
      vbox: Add registerDomainEvent (Taowei),<br />
      vbox: Rewrite vboxNode functions (Taowei),<br />
      vbox: Rewrite vboxConnectListAllDomains (Taowei),<br />
      vbox: Rewrite vboxDomainScreenshot (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotDelete (Taowei),<br />
      vbox: Rewrite vboxDomainRevertToSnapshot (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotHasMetadata (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotIsCurrent (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotCurrent (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotGetParent (Taowei),<br />
      vbox: Rewrite vboxDomainHasCurrentSnapshot (Taowei),<br />
      vbox: Rewrite vboxSnapshotLookupByName (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotListNames (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotNum (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotGetXMLDesc (Taowei),<br />
      vbox: Rewrite vboxDomainSnapshotCreateXML (Taowei),<br />
      vbox: Add API for vboxDomainSnapshotCreateXML (Taowei),<br />
      vbox: Rewrite vboxDomainDetachDeviceFlags (Taowei),<br />
      vbox: Rewrite vboxDomainDetachDevice (Taowei),<br />
      vbox: Rewrite vboxDomainUpdateDeviceFlags (Taowei),<br />
      vbox: Rewrite vboxDomainAttachDeviceFlags (Taowei),<br />
      vbox: Rewrite vboxDomainAttachDevice (Taowei),<br />
      vbox: Rewrite vboxDomainUndefine (Taowei),<br />
      vbox: Rewrite vboxConnectNumOfDefinedDomains (Taowei),<br />
      vbox: Rewrite vboxConnectListDefinedDomains (Taowei),<br />
      vbox: Rewrite vboxDomainGetXMLDesc (Taowei),<br />
      vbox: Add API for vboxDomainGetXMLDesc (Taowei),<br />
      vbox: Rewrite vboxDomainGetMaxVcpus (Taowei),<br />
      vbox: Rewrite vboxDomainGetVcpusFlags (Taowei),<br />
      vbox: Rewrite vboxDomainSetVcpus (Taowei),<br />
      vbox: Rewrite vboxDomainSetVcpusFlags (Taowei),<br />
      vbox: Rewrite vboxDomainGetState (Taowei),<br />
      vbox: Rewrite vboxDomainGetInfo (Taowei),<br />
      vbox: Rewrite vboxDomainSetMemory (Taowei),<br />
      vbox: Rewrite vboxDomainGetOSType (Taowei),<br />
      vbox: Rewrite vboxDomainDestroy (Taowei),<br />
      vbox: Rewrite vboxDomainDestroyFlags (Taowei),<br />
      vbox: Rewrite vboxDomainReboot (Taowei),<br />
      vbox: Rewrite vboxDomainShutdown (Taowei),<br />
      vbox: Rewrite vboxDomainShutdownFlags (Taowei),<br />
      vbox: Rewrite vboxDomainResume (Taowei),<br />
      vbox: Rewrite vboxDomainSuspend (Taowei),<br />
      vbox: Rewrite vboxDomainIsUpdated (Taowei),<br />
      vbox: Rewrite vboxDomainIsPersistent (Taowei),<br />
      vbox: Rewrite vboxDomainIsActive (Taowei),<br />
      vbox: Rewrite vboxDomainLookupByName (Taowei),<br />
      vbox: Rewrite vboxDomainCreateXML (Taowei),<br />
      vbox: Rewrite vboxDomainCreate (Taowei),<br />
      vbox: Rewrite vboxDomainCreateWithFlags (Taowei),<br />
      vbox: Rewrite vboxDomainDefineXML (Taowei),<br />
      vbox: Rewrite vboxDomainUndefineFlags (Taowei),<br />
      vbox: Rewrite vboxDomainLookupByUUID (Taowei),<br />
      vbox: Rewrite vboxDomainLookupById (Taowei),<br />
      vbox: Rewrite vboxConnectNumOfDomains (Taowei),<br />
      vbox: Rewrite vboxConnectListDomains (Taowei),<br />
      vbox: Rewrite vboxConnectGetCapabilities (Taowei),<br />
      vbox: Rewrite vboxConnectGetMaxVcpus (Taowei),<br />
      vbox: Rewrite vboxConnectIsAlive (Taowei),<br />
      vbox: Rewrite vboxConnectIsEncrypted (Taowei),<br />
      vbox: Rewrite vboxConnectIsSecure (Taowei),<br />
      vbox: Rewrite vboxConnectGetHostname (Taowei),<br />
      vbox: Rewrite vboxConnectGetVersion (Taowei),<br />
      vbox: Rewrite vboxDomainSave (Taowei),<br />
      vbox: Rewrite vboxConnectClose (Taowei),<br />
      vbox: Begin to rewrite, vboxConnectOpen (Taowei),<br />
      src/xenxs: Refactor code formating vif device config (Jim Fehlig),<br />
      src/xenxs: Refactor code formating peripheral device config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating Vfb config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating OS config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating CPU config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating xm disk config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating Char devices config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating event actions config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating virtual time config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating memory config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code formating general VM config (Kiarie Kahurani),<br />
      qemu: Tidy up job handling during live migration (Sam Bobroff),<br />
      LXC: resolve issues in lxcDomainSetMaxMemory (Chen Hanxiao),<br />
      daemon: Limit default log level to journald to VIR_LOG_INFO (Peter Krempa),<br />
      libvirtd: conf: Mention support for logging into journald (Peter Krempa),<br />
      maint: improve syntax check for space around = (Eric Blake),<br />
      qemu_conf: Undefine the correct symbol (Michal Privoznik),<br />
      qemu: process: Fix header format of qemuProcessSetVcpuAffinities (Peter Krempa),<br />
      qemu: use guest-fsfreeze-freeze-list command if mountpoints to freeze specified (Tomoki Sekiyama),<br />
      qemu: Actually clear bandwidth settings (Jianwei Hu),<br />
      src/xenxs: Refactor code parsing OS config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing general config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing emulated hardware config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing Vif config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing Char devices config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing Vfb config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing xm disk config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing CPU features (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing PCI config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing event actions (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing virtual time config (Kiarie Kahurani),<br />
      src/xenxs: Refactor code parsing memory config (Kiarie Kahurani),<br />
      conf: Add USB sound card support and implement it for qemu (Peter Krempa),<br />
      hostdev: Add iSCSI hostdev XML (John Ferlan),<br />
      domain_conf: Common routine to handle network storage host xml def (John Ferlan),<br />
      qemu: Make virFileFindHugeTLBFS fault tolerant (Michal Privoznik),<br />
      qemu: reword caps-related error (Martin Kletzander),<br />
      domtop: Turn parse_argv into void (Michal Privoznik),<br />
      qemu: fix comment in qemu.conf (Martin Kletzander)<br />
      </li><li>Cleanups:<br />
      virsh: drop unused variable (Eric Blake),<br />
      Fix spacing around commas (Michal Privoznik),<br />
      examples: test: Kill unsupported maxMemory element (Peter Krempa),<br />
      cleanup spaces between parentheses and braces (Martin Kletzander),<br />
      qemu_command: fix block indentation (Giuseppe Scrivano),<br />
      qemu: Remove extraneous space in function prototypes (John Ferlan),<br />
      daemon: Fix indentation in libvirtd.c (Wang Rui),<br />
      domtop: Remove unused variable (Michal Privoznik)<br />
      </li></ul>
        <h3>1.2.7: Aug 2 2014</h3>
        <ul><li> Features:<br />
      Introduce virConnectGetDomainCapabilities (Michal Privoznik)<br />
      </li><li> Documentation:<br />
      bhyve: document recent changes (Roman Bogorodskiy),<br />
      fix an incorrect example for memoryBacking (Chen Hanxiao),<br />
      libvirt-guests: fix some typos in a comment (Martin Kletzander),<br />
      libvirt: Fix 'quest' typo in comment (Li Yang),<br />
      Point to list of valid pool target volume formats (John Ferlan),<br />
      Documented VIR_DOMAIN_FEATURE_CAPABILITIES use of virDomainCapabilitesPolicy (Cédric Bosdonnat),<br />
      Explicitly specify how to override spice channel mode (Peter Krempa),<br />
      add domain to address of hostdev pci (Hu Tao),<br />
      domain: Clarify that disk type 'lun' works with iSCSI too (Peter Krempa),<br />
      esx: Fix a comment about VSphere versions (Geoff Hickey),<br />
      virsh: Document bandwidth maximum more clearly (John Ferlan),<br />
      mention more about older capability feature bits (Eric Blake),<br />
      Be more specific about semantics of _REUSE_EXT flag (Peter Krempa),<br />
      Document that snapshot name of block-backed disk isn't autogenerated (Peter Krempa),<br />
      virsh: document the possibility of accepting integers for numatune mode (Martin Kletzander),<br />
      Document the need to free vir*Ptr objects per-function (Ján Tomko),<br />
      Document the need to free vir*Ptr objects (Ján Tomko),<br />
      LXC: fix an improper comments for lxcDomainDestroyFlags (Chen Hanxiao),<br />
      formatdomain.html fixes (Michele Paolino),<br />
      Fix broken link in the HACKING page (Michele Paolino),<br />
      formatdomain: Fix issues found describing auth (John Ferlan),<br />
      LXC: update comments of lxcDomainCreateXMLWithFiles() and lxcDomainCreateXML() (Yue wenyuan)<br />
      </li><li> Portability:<br />
      build: fix build on cygwin (Eric Blake),<br />
      domtop: Fix build on mingw (Michal Privoznik),<br />
      build: fix build without numactl (Eric Blake),<br />
      Fix build on non-Linux platforms (Roman Bogorodskiy),<br />
      check for cfg-&gt;spiceTLS earlier in qemuProcessSPICEAllocatePorts (Ján Tomko),<br />
      build: package .pc files for mingw64 (Eric Blake),<br />
      build: fix gnulib build for mingw (Eric Blake),<br />
      util: cgroup: Fix build on non-cgroup platforms (Peter Krempa),<br />
      Don't require iptables-ipv6 on &gt;= F17 and RHEL &gt;= 7 (Ján Tomko),<br />
      tools/wireshark: fix rpm build (Pavel Hrdina),<br />
      tests: Avoid double linking some libraries (Michal Privoznik)<br />
      </li><li> Bug fixes:<br />
      network: always set disable_ipv6, even when it should be 0 (Laine Stump),<br />
      Fix a crash when cloning a volume with no backing store (Ján Tomko),<br />
      qemu: error out if PCI passthrough type is not supported (Hu Tao),<br />
      storage: create: Create files with correct mode (Peter Krempa),<br />
      nodedev: fix a uninitialized variable build failure (Chen Hanxiao),<br />
      nodedev: fix pci express memory leak (Eric Blake),<br />
      qemu: sound: Fix uninitialized model string (Peter Krempa),<br />
      qemu: Fix starting of VMs with empty CDROM drives (Peter Krempa),<br />
      util: virTimeFieldsThenRaw never returns negative (James),<br />
      qemu: cgroup: Don't use NULL path on default backed RNGs (Peter Krempa),<br />
      qemuConnectGetDomainCapabilities: Report error on unknown arch (Michal Privoznik),<br />
      remove range checking for blkiotune weight (Martin Kletzander),<br />
      qemuConnectGetDomainCapabilities: Use wiser defaults (Michal Privoznik),<br />
      leaseshelper: avoid mem leak after storing lease entries (Nehal J Wani),<br />
      conf: avoid memory leaks while parsing seclabel (Eric Blake),<br />
      nwfilter: plug memory leak with firewall (Eric Blake),<br />
      metadata: track title edits across libvirtd restart (Eric Blake),<br />
      Fix build after 47e5b5ae3262f140955abd57bbb13337c65a3497 (Peter Krempa),<br />
      qemu: snapshot: Forbid taking/reverting snapshots in PMSUSPENDED state (Peter Krempa),<br />
      qemu: snapshot: Forbid taking snapshot in invalid state (Peter Krempa),<br />
      schema: pool: netfs: Don't enforce slash in glusterfs pool source (Peter Krempa),<br />
      examples: domtop: Avoid leaking memory (Peter Krempa),<br />
      examples: domtop: Fix uninitialized variable use (Peter Krempa),<br />
      qemu: snapshot: Forbid snapshots of iSCSI passthrough devices (Peter Krempa),<br />
      storage: Disallow vol_wipe for sparse logical volumes (John Ferlan),<br />
      virsh vol-upload/download disallow negative offset (John Ferlan),<br />
      storage: Split out volume wiping as separate backend function (Peter Krempa),<br />
      esx: Fix a bug in the XML code for storage pools (Geoff Hickey),<br />
      blockjob: wait for pivot to complete (Eric Blake),<br />
      Fix const correctness (Michal Privoznik),<br />
      Fix assignment of comparison against zero (Ján Tomko),<br />
      Fix error on fs pool build failure (Ján Tomko),<br />
      spec: fix invalid syntax (Eric Blake),<br />
      libxl: fix return value error Attach|DetachDeviceFlags (Chunyan Liu),<br />
      qemu: blockcopy: Initialize correct source structure (Peter Krempa),<br />
      GetBlockInfo: Use the correct path to qemuOpenFile (John Ferlan),<br />
      virseclabel: Resolve Coverity FORWARD_NULL issue (John Ferlan),<br />
      conf: Always format seclabel's model (Michal Privoznik),<br />
      conf: Fix possible NULL dereference in virStorageVolTargetDefFormat (Matthias Bolte),<br />
      conf: Don't allow multiple seclabels for same model (Michal Privoznik),<br />
      qemu: don't error out when cgroups don't exist (Martin Kletzander),<br />
      util: storage: Fix build after 25924dec0f9329d429aadae14e273602307e2214 (Peter Krempa),<br />
      qemu: fix domxml-to-native failing when spice_tls is not enabled (Jincheng Miao),<br />
      virEventPollDispatchHandles: Honour array boundaries (Michal Privoznik),<br />
      Allow updating names in DHCP hosts by matching IPs. (Ján Tomko),<br />
      Actually fix the spec file (Ján Tomko),<br />
      libxl: fix crash in migrate confirm for transient domains (Jim Fehlig),<br />
      libxl: acquire job though begin phase only (Jim Fehlig),<br />
      libxl: remove domain when migration prepare fails (Jim Fehlig),<br />
      qemu: raise an eror when using aio=native without cache=none (Giuseppe Scrivano),<br />
      Do not allow changing the UUID of a nwfilter (Hu Jianwei),<br />
      LXC: Allow setting max mem lower than current mem (Ján Tomko),<br />
      virsh: domain: Use inactive XML when unplugging interface with --config (Peter Krempa),<br />
      Free the return value of virFileFindResource (Ján Tomko),<br />
      qemu_domain: fix startup policy for disks (Pavel Hrdina),<br />
      Fix segfault when starting a domain with no cpu definition (Ján Tomko),<br />
      qemu: raise an error when trying to use readonly ide disks (Giuseppe Scrivano)<br />
      </li><li> Improvements:<br />
      blockcommit: turn on active commit (Eric Blake),<br />
      blockcommit: track job type in xml (Eric Blake),<br />
      Domain config: write &lt;features/&gt; if some capabilities are set. (Cédric Bosdonnat),<br />
      blockjob: properly track blockcopy xml changes on disk (Eric Blake),<br />
      blockcopy: add more XML for state tracking (Eric Blake),<br />
      qemu: Implement ./hugepages/page/[@size, @unit, @nodeset] (Michal Privoznik),<br />
      domain: Introduce ./hugepages/page/[@size, @unit, @nodeset] (Michal Privoznik),<br />
      virbitmap: Introduce virBitmapOverlaps (Michal Privoznik),<br />
      qemu: Utilize virFileFindHugeTLBFS (Michal Privoznik),<br />
      Introduce virFileFindHugeTLBFS (Michal Privoznik),<br />
      schema: bhyve and nmdm updates (Roman Bogorodskiy),<br />
      nodedev: move pci express types to virpci.h (Eric Blake),<br />
      nodedev: let compiler help us on switches (Eric Blake),<br />
      qemu: sound: Handle all possible sound cards in switch statement (Peter Krempa),<br />
      conf: RNG: Always fill in default random source path for default backend (Peter Krempa),<br />
      spec: arm and aarch64 have kvm support with F20+ (Cole Robinson),<br />
      spec: Use power64 macro (Cole Robinson),<br />
      test: qemu: Add tests for multiple virtio-rng devices (Peter Krempa),<br />
      virtio-rng: allow multiple RNG devices (Peter Krempa),<br />
      bhyve: cdrom support (Roman Bogorodskiy),<br />
      virsh: add option for selecting domdisplay type (Martin Kletzander),<br />
      virsh: add error message when no graphical display is found (Martin Kletzander),<br />
      hostdev: Introduce virDomainHostdevSubsysSCSIiSCSI (John Ferlan),<br />
      Add virConnectPtr for qemuBuildSCSIHostdevDrvStr (John Ferlan),<br />
      hostdev: Introduce virDomainHostdevSubsysSCSIHost (John Ferlan),<br />
      hostdev: Introduce virDomainHostdevSubsysSCSI (John Ferlan),<br />
      hostdev: Introduce virDomainHostdevSubsysPCI (John Ferlan),<br />
      hostdev: Introduce virDomainHostdevSubsysUSB (John Ferlan),<br />
      qemu: snapshot: Use storage driver to pre-create snapshot file (Peter Krempa),<br />
      storage: Implement virStorageFileCreate for local and gluster files (Peter Krempa),<br />
      qemu: Implement DAC driver chown callback to co-operate with storage drv (Peter Krempa),<br />
      security: DAC: Plumb usage of chown callback (Peter Krempa),<br />
      security: DAC: Introduce callback to perform image chown (Peter Krempa),<br />
      security: DAC: Remove superfluous link resolution (Peter Krempa),<br />
      storage: Add witness for checking storage volume use in security driver (Peter Krempa),<br />
      storage: Implement storage driver helper to chown disk images (Peter Krempa),<br />
      numatune: finish the split from domain_conf and remove all dependencies (Martin Kletzander),<br />
      maint: simplify some syntax check exemptions (Eric Blake),<br />
      spec: Enable sanlock on qemu_kvm_arches for RHEL (Jiri Denemark),<br />
      Added myself in AUTHORS.in (Cédric Bosdonnat),<br />
      Introduce virTristateSwitch enum (Ján Tomko),<br />
      Introduce virTristateBool enum type (Ján Tomko),<br />
      LXC: show used memory as 0 when domain is not active (Chen Hanxiao),<br />
      lxc domain from xml: convert lxc.cap.drop (Cédric Bosdonnat),<br />
      lxc: allow to keep or drop capabilities (Cédric Bosdonnat),<br />
      LXC: create a bind mount for sysfs when enable userns but disable netns (Chen Hanxiao),<br />
      storage: logical: drop useless if (Roman Bogorodskiy),<br />
      getAdapterName: Lookup stable scsi_host (John Ferlan),<br />
      scsi_host: Introduce virFindSCSIHostByPCI (John Ferlan),<br />
      Add unique_id to nodedev output (John Ferlan),<br />
      virutil: Introduce virReadSCSIUniqueId (John Ferlan),<br />
      scsi_backend: Use existing LINUX_SYSFS_SCSI_HOST_PREFIX definition (John Ferlan),<br />
      storage: Introduce parentaddr into virStoragePoolSourceAdapter (Osier Yang),<br />
      virStoragePoolSourceAdapter: Refine the SCSI_HOST adapter name (Osier Yang),<br />
      getAdapterName: check for SCSI_HOST (John Ferlan),<br />
      node_device: HAL: Ignore return value of virStrToLong_ui (Peter Krempa),<br />
      util: Check return value from virStrToLong* functions (Peter Krempa),<br />
      qemu: snapshot: Reject revertion from clearly bad states (Peter Krempa),<br />
      qemu: snapshot: Convert if-else switch to switch statement (Peter Krempa),<br />
      bhyve: reconnect to domains after libvirtd restart (Roman Bogorodskiy),<br />
      examples: Introduce domtop (Michal Privoznik),<br />
      Kill last strto{l,ll,d} scouts (Michal Privoznik),<br />
      lxc conf2xml: convert lxc.network.name for veth networks (Cédric Bosdonnat),<br />
      lxc network configuration allows setting target container NIC name (Cédric Bosdonnat),<br />
      spec: Consolidate with_qemu* definitions (Jiri Denemark),<br />
      storage: Convert 'building' into a bool (John Ferlan),<br />
      Fix build by dropping redefined typedefs (Roman Bogorodskiy),<br />
      test: metadata: Improve test coverage (Peter Krempa),<br />
      Log an error when we fail to set the COW attribute (Ján Tomko),<br />
      storage: wipe: Move helper code into storage backend (Peter Krempa),<br />
      schema: put interleave at correct level (Eric Blake),<br />
      schema: add interleave inside numatune (Martin Kletzander),<br />
      qemu: leave restricting cpuset.mems after initialization (Martin Kletzander),<br />
      qemu: split out cpuset.mems setting (Martin Kletzander),<br />
      qemu: pass numa node binding preferences to qemu (Martin Kletzander),<br />
      qemu: enable disjoint numa cpu ranges (Martin Kletzander),<br />
      qemu: newer -numa parameter capability probing (Martin Kletzander),<br />
      qemu: memory-backend-ram capability probing (Martin Kletzander),<br />
      qemu: allow qmp probing for cmdline options without params (Martin Kletzander),<br />
      numatune: add support for per-node memory bindings in private APIs (Martin Kletzander),<br />
      conf, schema: add support for memnode elements (Martin Kletzander),<br />
      numatune: Encapsulate numatune configuration in order to unify results (Martin Kletzander),<br />
      numatune: unify numatune struct and enum names (Martin Kletzander),<br />
      numatune: create new module for numatune (Martin Kletzander),<br />
      conf, schema: add 'id' field for cells (Martin Kletzander),<br />
      conf: purely a code movement (Martin Kletzander),<br />
      qemu: remove useless error check (Martin Kletzander),<br />
      qemu: purely a code movement (Martin Kletzander),<br />
      support for QEMU vhost-user (Michele Paolino),<br />
      util: forbid freeing const pointers (Eric Blake),<br />
      add nocow test case (Chunyan Liu),<br />
      storagevol: add nocow to vol xml (Chunyan Liu),<br />
      storage: fs: Don't fail volume update if backing store isn't accessible (Peter Krempa),<br />
      storage: fs: Properly parse backing store info (Peter Krempa),<br />
      storage: fs: Process backing store data in virStorageBackendProbeTarget (Peter Krempa),<br />
      storage: backend: fs: Touch up coding style (Peter Krempa),<br />
      storage: Track backing store of a volume in the target struct (Peter Krempa),<br />
      storage: backend: Fix formatting of function arguments (Peter Krempa),<br />
      Rework lxc apparmor profile (Cédric Bosdonnat),<br />
      Implement interface stats for BSD (Roman Bogorodskiy),<br />
      util: virstatslinux: make more generic (Roman Bogorodskiy),<br />
      libxl: support hotplug of &lt;interface&gt; (Chunyan Liu),<br />
      libxl: add HOSTDEV type in libxlDomainDetachDeviceConfig (Chunyan Liu),<br />
      spec: Update polkit dependencies for CVE-2013-4311 (Jiri Denemark),<br />
      capabilities: use bool instead of int (Eric Blake),<br />
      openvswitch: Delete port if it exists while adding a new one (Chunhe Li),<br />
      virSecurityLabelDefParseXML: Rework (Michal Privoznik),<br />
      aa-helper: adjust previous patch (Cédric Bosdonnat),<br />
      Don't output libvirt-UUID.files for LXC apparmor profiles (Cédric Bosdonnat),<br />
      libxl: Correct cast to virDomainDiskDiscard enum. (Ian Campbell),<br />
      LXC: add support for --config in setmem command (Chen Hanxiao),<br />
      virSecurityDeviceLabelDef: substitute 'norelabel' with 'relabel' (Michal Privoznik),<br />
      virSecurityLabelDef: substitute 'norelabel' with 'relabel' (Michal Privoznik),<br />
      storage: Split out volume upload/download as separate backend function (Peter Krempa),<br />
      libxl: add discard support to libxl_device_disk (Olaf Hering),<br />
      conf: Improve metadata type verification (Peter Krempa),<br />
      qemu: snapshot: Refactor image labelling of new snapshot files (Peter Krempa),<br />
      qemu: Refactor qemuDomainPrepareDiskChainElement (Peter Krempa),<br />
      qemu: snapshot: Improve approach to deal with snapshot metadata (Peter Krempa),<br />
      qemu: block: Properly track disk source while pivoting to new image (Peter Krempa),<br />
      qemu: blockcopy: Use the mirror disk source to label the files (Peter Krempa),<br />
      util: storage: Return complete parent info from virStorageFileChainLookup (Peter Krempa),<br />
      util: storage: Make virStorageFileChainLookup more network storage aware (Peter Krempa),<br />
      security: AppArmor: Implement per-image seclabel set (Peter Krempa),<br />
      security: AppArmor: Implement per-image seclabel restore (Peter Krempa),<br />
      security: DAC: Implement per-image seclabel set (Peter Krempa),<br />
      security: DAC: Implement per-image seclabel restore (Peter Krempa),<br />
      security: selinux: Implement per-image seclabel set (Peter Krempa),<br />
      security: selinux: Implement per-image seclabel restore (Peter Krempa),<br />
      security: Introduce APIs to label single images (Peter Krempa),<br />
      locking: Add APIs to lock individual image files (Peter Krempa),<br />
      qemu: cgroup: Setup only the top level disk image for read-write access (Peter Krempa),<br />
      qemu: cgroup: Add functions to set cgroup image stuff on individual imgs (Peter Krempa),<br />
      util: XML: Avoid forward function declaration (Peter Krempa),<br />
      libxl: rename goto label (Jim Fehlig),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      properly indent virSecurityLabelDefsParseXML() parameters (Martin Kletzander),<br />
      Fix the indentation in libvirt.spec.in (Ján Tomko),<br />
      util: cgroup: Add helper to convert device mode to string (Peter Krempa),<br />
      util: storage: Copy parent's disk metadata to backing chain elements (Peter Krempa),<br />
      util: storage: Add function to transfer config parts to new chain element (Peter Krempa),<br />
      util: storagefile: Add deep copy for struct virStorageSource (Peter Krempa),<br />
      storage: Move readonly and shared flags to disk source from disk def (Peter Krempa),<br />
      conf: Don't output seclabels for backingStore elements (Peter Krempa),<br />
      storage: file: Tolerate NULL src when uninitializing the backend (Peter Krempa),<br />
      qemu: Add helper to initialize storage file backend with correct uid/gid (Peter Krempa),<br />
      qemu: Don't propagate whole disk definition into qemuDomainGetImageIds (Peter Krempa),<br />
      qemu: Add support for networked disks for block pull/block rebase (Peter Krempa),<br />
      qemu: Add support for networked disks for block commit (Peter Krempa),<br />
      lib: Introduce flag VIR_DOMAIN_BLOCK_REBASE_RELATIVE (Peter Krempa),<br />
      lib: Introduce flag VIR_DOMAIN_BLOCK_COMMIT_RELATIVE (Peter Krempa),<br />
      qemu: refactor qemuDomainGetBlockInfo to work with remote storage (Peter Krempa),<br />
      storage: gluster: Optimize header reader functions (Peter Krempa),<br />
      util: storage: Allow specifying format for virStorageFileGetMetadataFromBuf (Peter Krempa),<br />
      util: storage: Inline use of virStorageFileGetMetadataFromFDInternal (Peter Krempa),<br />
      audit: Audit smartcard devices (Peter Krempa),<br />
      audit: Add auditing for serial/parallel/channel/console character devs (Peter Krempa),<br />
      virt-lxc-convert: make free return values in bytes (Cédric Bosdonnat),<br />
      qemu: dump: Report better error when dumping VM with passthrough devices (Peter Krempa),<br />
      LXC: remove duplicate controller check code (Chen Hanxiao),<br />
      wireshark: Honor API change coming with 1.12 release (Michal Privoznik),<br />
      wireshark: Include more of libvirt internals (Michal Privoznik),<br />
      qemu: monitor: Add support for backing name specification for block-stream (Peter Krempa),<br />
      qemu: monitor: Add argument for specifying backing name for block commit (Peter Krempa),<br />
      qemu: caps: Add capability for change-backing-file command (Peter Krempa),<br />
      audit: disk: Refactor disk auditing to avoid auditing remote storage (Peter Krempa),<br />
      conf: audit: Split out common steps to audit domain devices (Peter Krempa),<br />
      conf: audit: rng: Reorder new and old RNG device definitions (Peter Krempa),<br />
      util: storage: Add helper to determine whether storage is local (Peter Krempa),<br />
      Utilize virDomainDiskAuth for storage pools (John Ferlan),<br />
      Utilize virDomainDiskAuth for domain disk (John Ferlan),<br />
      qemuargv2xmltest: Resurrect RBD and iSCSI auth (John Ferlan),<br />
      virstorage: Introduce virStorageAuthDef (John Ferlan),<br />
      blockjob: turn on qemu capability bit for active commit (Eric Blake),<br />
      blockjob: allow omitted arguments to QMP block-commit (Eric Blake),<br />
      qemu: Implement virConnectGetDomainCapabilities (Michal Privoznik),<br />
      qemu_capabilities: Introduce virQEMUCapsGetDefaultMachine (Michal Privoznik),<br />
      qemu_capabilities: Introduce virQEMUCapsIsMachineSupported (Michal Privoznik),<br />
      qemu_capabilities: Introduce virQEMUCapsCacheLookupByArch (Michal Privoznik),<br />
      tests: Move qemu caps XML parsing into shared unit (Michal Privoznik),<br />
      virsh: expose virConnectGetDomainCapabilities (Michal Privoznik),<br />
      Introduce domain_capabilities (Michal Privoznik),<br />
      Remove double OOM error reporting (Ján Tomko),<br />
      Remove double OOM error reporting from JSON monitor (Ján Tomko),<br />
      Add OOM error reporting to a few fucntions (Ján Tomko),<br />
      Set errno on OOM in lxcProcReadMeminfo (Ján Tomko),<br />
      Use virBufferCheckError everywhere we report OOM error (Ján Tomko),<br />
      Report errors in virCapabilitiesFormatXML (Ján Tomko),<br />
      Introduce virBufferCheckError (Ján Tomko),<br />
      Use virStringReplace instead of openvz_replace (Ján Tomko),<br />
      Remove useless condition in networkRadvdConfContents (Ján Tomko),<br />
      usb: Remove redundant comment (Ján Tomko),<br />
      More indentation fixes (Ján Tomko),<br />
      Fix indentation in bridge driver (Ján Tomko),<br />
      virsh: Allow attach-disk to specify disk target bus (Yanbing Du),<br />
      qemu: Add cmd_per_lun, max_sectors to virtio-scsi (Mike Perez),<br />
      Add invariant TSC cpu flag (Ján Tomko),<br />
      util: unify extra asterisk in viralloc.h (Martin Kletzander)<br />
      </li><li> Cleanups:<br />
      tests: Remove stale scsihostdata dir (Michal Privoznik),<br />
      xenapiConnectGetCapabilities: Remove unused 'cleanup' label (Michal Privoznik)<br />
      </li></ul>
        <h3>1.2.6: Jul 2 2014</h3>
        <ul><li> Features:<br />
      libxl: add migration support and fixes (Jim Fehlig),<br />
      various improvements and fixes for NUMA (Michal Privoznik)<br />
      </li><li> Documentation:<br />
      security: manager: Document behavior of disk label manipulation funcs (Peter Krempa),<br />
      fix some typos in formatdomain.html (Jincheng Miao),<br />
      virsh: man: Correctly spell QEMU (Peter Krempa),<br />
      virsh: man: Fix examples and docs for virsh version (Peter Krempa),<br />
      Added example script on how to convert LXC container config (Cédric Bosdonnat),<br />
      blockjob: document recent job addition (Eric Blake),<br />
      virsh: Add details about specified migration host (Chen Fan),<br />
      blockcommit: document semantics of committing active layer (Eric Blake),<br />
      fix a typo in hacking.html.in (Wangrui (K)),<br />
      formatcaps: Rework and add stubs to document (Michal Privoznik)<br />
      </li><li> Portability:<br />
      build: link libvirt_conf with libxml (Martin Kletzander),<br />
      vbox: fix linker error (Jim Fehlig),<br />
      libxl: don't break the build on Xen&gt;=4.5 because of libxl_vcpu_setaffinity() (Dario Faggioli),<br />
      Add PKG_CONFIG_PATH to run.in script. (Daniel P. Berrange),<br />
      Change 'interface' to 'iface' in virNetworkDHCPLease (Daniel P. Berrange),<br />
      Fix shadowed variable with older gcc (Ján Tomko),<br />
      Add pkg-config files to allow deps to build against source tree (Daniel P. Berrange),<br />
      Add pkg-config files for libvirt-qemu &amp; libvirt-lxc (Daniel P. Berrange),<br />
      blockjob: avoid compiler uncertainty in info sizing (Eric Blake),<br />
      build: prefer -fstack-protector-strong to -all (Ján Tomko),<br />
      build: remove ssp-buffer-size (Ján Tomko),<br />
      build: remove duplicit warning suppression (Ján Tomko),<br />
      virnetdev: Use ifname in virNetDevGetLinkInfo (Michal Privoznik),<br />
      Fix virbitmaptest on 32-bit (Ján Tomko),<br />
      translations: Don't leave default template fields in .po files (Martin Kletzander),<br />
      tests: Build virstoragetest only when storage driver is compiled too (Peter Krempa),<br />
      Fix build on freebsd (Pavel Hrdina)<br />
      </li><li> Bug Fixes:<br />
      qemu: copy: Accept 'format' parameter when copying to a non-existing img (Peter Krempa),<br />
      storage: gluster: Fix header reader function (Peter Krempa),<br />
      conf: storage: Add volume feature formatter for gluster pools (Peter Krempa),<br />
      vboxsnapshotxmltest: Don't write to a file in abs_srcdir (Michal Privoznik),<br />
      securityselinuxlabeltest: Don't create dummy file in the srcdir (Michal Privoznik),<br />
      Report one error less when getting net dev speed (Ján Tomko),<br />
      Only detect PCI Express devices as root in udev nodedev driver (Ján Tomko),<br />
      libxl: add PV console if not explicitly specified (Jim Fehlig),<br />
      qemu: snapshot: Save persistent domain config when taking external snapshot (Peter Krempa),<br />
      bhyve: fix build by fixing typo in variable name (Roman Bogorodskiy),<br />
      docs: publish correct enum values (Eric Blake),<br />
      qemu: fix guestfwd chardev option back how it was (Martin Kletzander),<br />
      Fix typo s/SASL_CONF_DIR/SASL_CONF_PATH/ in QEMU VNC code (Daniel P. Berrange),<br />
      qemu: blockcopy: Don't remove existing disk mirror info (Peter Krempa),<br />
      bridge: leases: Fix potential crash caused by use after free (Peter Krempa),<br />
      Free DHCP leases file in networkGetDHCPLeasesHelper (Ján Tomko),<br />
      Rework remoteSerializeDHCPLease (Ján Tomko),<br />
      Free file header in virStorageFileGetMetadataRecurse (Ján Tomko),<br />
      graphics: remember graphics not auto allocated ports (Giuseppe Scrivano),<br />
      LXC: trivially support flag VIR_DRV_FEATURE_TYPED_PARAM_STRING (Chen Hanxiao),<br />
      cmdFreepages: initialize @tmp (Michal Privoznik),<br />
      Fix closedir usage in virNumaGetPages (Roman Bogorodskiy),<br />
      Don't include @LIBS@ in libvirt.pc.in file (Daniel P. Berrange),<br />
      virnuma: Actually build huge page code (Michal Privoznik),<br />
      Do not call closedir with NULL argument (Ján Tomko),<br />
      Fix invalid write in virNumaGetDistances (Ján Tomko),<br />
      Properly check the return value of CCWAddressAsString (Ján Tomko),<br />
      virsh: fix broken code in freepages (Eric Blake),<br />
      Fix xmconfigtest (Jim Fehlig),<br />
      vbox_snapshot_conf: fix wrong use of 'xmlSaveFormatFileEnc' (Pavel Hrdina),<br />
      tests: fix vbox snapshot xmls (Pavel Hrdina),<br />
      vbox: fix a segfault when taking a snapshot (Yohan BELLEGUIC),<br />
      vbox: snapshot: Avoid memleaks in functions dealing with disk arrays (Peter Krempa),<br />
      vbox: snapshot: Avoid memleak in virVBoxSnapshotConfAllChildren (Peter Krempa),<br />
      uuid: Fix coverity warning of unchecked return value (Peter Krempa),<br />
      network: bridge: Avoid freeing uninitialized pointer on cleanup path (Peter Krempa),<br />
      net: leaseshelper: Refactor copying of old entries to avoid double free (Peter Krempa),<br />
      net: leaseshelper: Ignore corrupted lease file and rewrite it (Peter Krempa),<br />
      net: leaseshelper: Don't crash if DNSMASQ doesn't provide lease expiry (Peter Krempa),<br />
      blockjob: don't remove older-style mirror XML (Eric Blake),<br />
      blockcommit: require base below top (Eric Blake),<br />
      leaseshelper: fix another crash (Pavel Hrdina),<br />
      bhyve: do not cleanup unallocated networks on fail (Roman Bogorodskiy),<br />
      bhyve: fix crash in bhyveBuildNetArgStr (Roman Bogorodskiy),<br />
      storage: report VIR_ERR_NO_STORAGE_VOL when the file doesn't exist (Giuseppe Scrivano),<br />
      blockcommit: fix regression with explicit top argument (Eric Blake),<br />
      virsh: forbid negative vcpu argument to vcpupin (Jincheng Miao),<br />
      Fix crash when saving a domain with type none dac label (Ján Tomko),<br />
      vbox_snapshot_conf: Resolve Coverity warnings (John Ferlan),<br />
      vbox_temp: Resolve Coverity warnings (John Ferlan),<br />
      libxl: Resolve Coverity warnings (John Ferlan),<br />
      leaseshelper: fix crash (Pavel Hrdina),<br />
      qemu: Properly label FDs when restoring domain with static label (Shivaprasad G Bhat),<br />
      nodeinfo: avoid uninitialized variable on error (Eric Blake),<br />
      storage: fix memory leak with encrypted images (Eric Blake),<br />
      vbox: fix compilation error (Roman Bogorodskiy),<br />
      SELinux: don't fail silently when no label is present (Ján Tomko),<br />
      parallels: Avoid possible leak of "cpu" from parallelsBuildCapabilities (Peter Krempa),<br />
      Fix storage format probing (Ján Tomko),<br />
      network: bridge: Avoid memory leak from networkBuildDhcpDaemonCommandLine (Peter Krempa),<br />
      qemu: monitor: Fix type of holdtime argument in qemuMonitorJSONSendKey (Peter Krempa),<br />
      libxl: Avoid possible use of uninitialized mem in libxlDomainStart (Daniel P. Berrange),<br />
      qemu: Remove character device backend only after frontend is gone (Jiri Denemark),<br />
      qemu: Remove disk backend only after frontend is gone (Jiri Denemark),<br />
      qemu: Remove interface backend only after frontend is gone (Jiri Denemark),<br />
      Don't use AI_ADDRCONFIG when binding to wildcard addresses (Ján Tomko),<br />
      qemu: Unref cfg when detaching hostdev interface (Jiri Denemark),<br />
      virsh: Check whether found volume is member of the specified storage pool (Peter Krempa)<br />
      </li><li> Improvements:<br />
      Introduce virFileReadAllQuiet (Ján Tomko),<br />
      Track privileged state in udev nodedev driver (Ján Tomko),<br />
      build: fix 'make syntax-check' after commit c6cf5df3 (Jim Fehlig),<br />
      LXC: throw an error if we failed to get Idmap elements (Chen Hanxiao),<br />
      cpu: Add new Broadwell CPU model (Jiri Denemark),<br />
      net: merge virNetworkGetDHCPLeases and virNetworkGetDHCPLeasesForMAC (Peter Krempa),<br />
      Add test for type none model dac seclabel (Ján Tomko),<br />
      test: add user_xattr check for securityselinuxlabeltest (Jincheng Miao),<br />
      libxl: detect support for save and restore (Jim Fehlig),<br />
      security: nop: Avoid very long lines (Peter Krempa),<br />
      security: Fix header formatting of a few functions (Peter Krempa),<br />
      security: manager: Unify function header format (Peter Krempa),<br />
      security: manager: Avoid forward decl of virSecurityManagerDispose (Peter Krempa),<br />
      security: Rename virSecurityManagerRestoreImageLabel to *Disk* (Peter Krempa),<br />
      util: s/virStorageSourceClearBackingStore/virStorageSourceBackingStoreClear (Peter Krempa),<br />
      Fix a typo in a localized string (Daniel Veillard),<br />
      virConnectCompareCPU: Introduce FAIL_INCOMPATIBLE flag (Jiri Denemark),<br />
      cpuCompare*: Add support for reporting failure on incompatible CPUs (Jiri Denemark),<br />
      cpu: Cleanup coding style in generic CPU driver (Jiri Denemark),<br />
      virsh: Remove bogus stat on log file (Jiri Denemark),<br />
      enhance hostdev mode 'capabilities' process (Jincheng Miao),<br />
      storage: Don't store parent directory of an image explicitly (Peter Krempa),<br />
      storage: Don't canonicalize paths unnecessarily (Peter Krempa),<br />
      tests: virstoragetest: Remove unneeded relative test plumbing (Peter Krempa),<br />
      tests: virstoragetest: Don't test relative start of backing chains (Peter Krempa),<br />
      util: storage: Remove now redundant backingRelative from virStorageSource (Peter Krempa),<br />
      tests: virstoragetest: Remove now unused pathAbs (Peter Krempa),<br />
      storage: Store relative path only for relatively backed storage (Peter Krempa),<br />
      tests: virstoragetest: Remove "expBackingStore" field (Peter Krempa),<br />
      util: storage: Add helper to resolve relative path difference (Peter Krempa),<br />
      LXC: check whether we get MemSwap[Total|Usage] (Chen Hanxiao),<br />
      qemu: enum cleanups in "src/qemu/*" (Julio Faracco),<br />
      libxl: fix version annotation of migration functions (Jim Fehlig),<br />
      virtportallocator: new function "virPortAllocatorSetUsed" (Giuseppe Scrivano),<br />
      net-dhcp-leases: Add virsh support (Nehal J Wani),<br />
      net-dhcp-leases: Private implementation inside network (Nehal J Wani),<br />
      net-dhcp-leases: Implement the remote protocol (Nehal J Wani),<br />
      net-dhcp-leases: Implement the public APIs (Nehal J Wani),<br />
      virNumaGetPages: Don't fail on huge page-less systems (Michal Privoznik),<br />
      virNumaGetPageInfo: Take huge pages into account (Michal Privoznik),<br />
      storage: gluster: Avoid name shadow on older compilers (Peter Krempa),<br />
      storage: gluster: Add backend to return unique storage file path (Peter Krempa),<br />
      util: storagefile: Introduce universal function to canonicalize paths (Peter Krempa),<br />
      util: string: Add helper to free non-NULL terminated string arrays (Peter Krempa),<br />
      libxl: prefer qdisk for &lt;driver name='file'&gt; (Jim Fehlig),<br />
      qemu: parse -device virtio-balloon (Laine Stump),<br />
      Report correct error in virNetDevTapCreate (Ján Tomko),<br />
      util: numa: Stub out hugepage code on non-Linux platforms (Peter Krempa),<br />
      util: numa: Catch readdir errors in virNumaGetPages (Peter Krempa),<br />
      tests: Fix syntax-check after cdd11151791bc9e61538988438980f41c0185681 (Peter Krempa),<br />
      test: Disable storage test when FS backend isn't compiled in (Peter Krempa),<br />
      Split out CCW address allocation (Ján Tomko),<br />
      libxl: Use cooperative resume for migration (Jason Andryuk),<br />
      cpu_arm: Support all ARM processors we know about (Michal Privoznik),<br />
      virNodeParseSocket: Take ARM into account (Michal Privoznik),<br />
      nodeinfotest: Print error if cpuinfo file can't be opened (Michal Privoznik),<br />
      virNodeParseNode: Propagate host architecture (Michal Privoznik),<br />
      nodeinfo: Introduce @arch to linuxNodeInfoCPUPopulate (Michal Privoznik),<br />
      interface: clean up virInterfaceDefDevFormat (Laine Stump),<br />
      interface: clean up virInterfaceDefParseXML (Laine Stump),<br />
      interface: move parsing of bridge attributes into appropriate function (Laine Stump),<br />
      interface: report link state for bonds and vlans too (Laine Stump),<br />
      security: Rename virSecurityManagerSetImageLabel to *Disk* (Peter Krempa),<br />
      security: Sanitize type of @migrated in virSecurityManagerRestoreAllLabel (Peter Krempa),<br />
      util: Don't require full disk definition when getting imagelabels (Peter Krempa),<br />
      util: storagefile: Introduce helper to free storage source perms (Peter Krempa),<br />
      util: seclabel: Add deep copy function for device labels (Peter Krempa),<br />
      storage: encryption: Add deep copy function for storage encryption (Peter Krempa),<br />
      libxl: limit support for specifying an interface script (Jim Fehlig),<br />
      libxl: support interface type=network (Jim Fehlig),<br />
      interface: allow reordering of elements in xml (Laine Stump),<br />
      nodeinfo: Implement nodeGetFreePages (Michal Privoznik),<br />
      virsh: Expose virNodeGetFreePages (Michal Privoznik),<br />
      Introduce virNodeGetFreePages (Michal Privoznik),<br />
      virCaps: expose pages info (Michal Privoznik),<br />
      virnuma: Introduce pages helpers (Michal Privoznik),<br />
      nodeinfo: Rename nodeGetFreeMemory to nodeGetMemory (Michal Privoznik),<br />
      virnuma: Introduce virNumaNodeIsAvailable (Michal Privoznik),<br />
      virsh: expose new active commit controls (Eric Blake),<br />
      blockjob: use stable disk string in job event (Eric Blake),<br />
      xen: handle root= in xen-xm configuration files. (Ian Campbell),<br />
      virt-aa-helper: allow access to /dev/vhost-net if needed (Serge Hallyn),<br />
      util: json: Add helpers for manipulating json arrays (Peter Krempa),<br />
      util: json: Unify function header formatting (Peter Krempa),<br />
      Increase the size of REMOTE_MIGRATE_COOKIE_MAX to REMOTE_STRING_MAX (Shivaprasad G Bhat),<br />
      nodedev: Introduce &lt;pci-express/&gt; to PCI devices (Michal Privoznik),<br />
      virpci: Introduce virPCIDeviceIsPCIExpress and friends (Michal Privoznik),<br />
      storage: better tests of lookup (Eric Blake),<br />
      storage: renumber lookup tests (Eric Blake),<br />
      storage: add alias for less typing (Eric Blake),<br />
      qemu: snapshot: Don't mark all block disks for metadata reuse (Peter Krempa),<br />
      bhyve: silent destroy command errors on cleanup (Roman Bogorodskiy),<br />
      bhyve: implement PCI address allocation (Roman Bogorodskiy),<br />
      virNetDevGetLinkInfo: Don't report link speed if NIC's not up (Michal Privoznik),<br />
      tests: virstoragetest: Fix output when hitting errors (Peter Krempa),<br />
      blockcommit: update error messages related to block jobs (Eric Blake),<br />
      virsh: improve blockcopy UI (Eric Blake),<br />
      virNodeDevCapPCIDevParseXML: Initialize numa_node variable (Michal Privoznik),<br />
      virsh: Reject negative numbers in vshCommandOptULongLong (Peter Krempa),<br />
      virsh: Reject negative numbers in vshCommandOptUL (Peter Krempa),<br />
      virsh: Reject negative numbers in vshCommandOptUInt (Peter Krempa),<br />
      security: Don't skip labelling for network disks (Peter Krempa),<br />
      storage: volume: Rework lookup of volume objects (Peter Krempa),<br />
      storage: Clean up unlocking of storage pool objects (Peter Krempa),<br />
      storage: pool: Fix handling of errors on pool lookup failure (Peter Krempa),<br />
      virsh: include bhyve in virsh -V output (Roman Bogorodskiy),<br />
      maint: exempt graphic binaries from syntax check (Eric Blake),<br />
      vmware: make version parsing more robust (Jean-Baptiste Rouault),<br />
      node_device: Expose link state &amp; speed (Michal Privoznik),<br />
      interface_backend_udev: Implement link speed &amp; state (Michal Privoznik),<br />
      virnetdev: Introduce virNetDevGetLinkInfo (Michal Privoznik),<br />
      virInterface: Expose link state &amp; speed (Michal Privoznik),<br />
      vbox_tmpl.c: Add function for undefining snapshot (Yohan BELLEGUIC),<br />
      vbox_tmpl.c: Patch for redefining snapshots (Yohan BELLEGUIC),<br />
      Add vbox_snapshot_conf struct (Yohan BELLEGUIC),<br />
      vbox_tmpl.c: Better XML description for snapshots (Manuel VIVES),<br />
      qemu: ignore -nodefconfig and -nodefaults when parsing commandline (Laine Stump),<br />
      test: display qemuParseCommandline warnings when VIR_TEST_DEBUG &gt; 0 (Laine Stump),<br />
      m4: bhyve: Fix check for the required bhyve programs (Peter Krempa),<br />
      vmx: Relax virtualHW.version check (Matthias Bolte),<br />
      conf: alter disk mirror xml output (Eric Blake),<br />
      conf: store mirroring information in virStorageSource (Eric Blake),<br />
      conf: store disk source as pointer, for easier manipulation (Eric Blake),<br />
      conf: consolidate disk def allocation (Eric Blake),<br />
      conf: store snapshot source as pointer, for easier manipulation (Eric Blake),<br />
      nodedev: Export NUMA node locality for PCI devices (Michal Privoznik),<br />
      Implement pretty flag for vcpuinfo and nodecpumap (Ján Tomko),<br />
      Introduce virBitmapDataToString (Ján Tomko),<br />
      Always report an error if virBitmapFormat fails (Ján Tomko),<br />
      Format NULL bitmap as an empty string (Ján Tomko),<br />
      virsh: Separate API calls and result printing in cmdVcpuinfo (Ján Tomko),<br />
      virsh: Invert logic in cmdVcpuinfo (Ján Tomko),<br />
      Parallels: Include CPU info in the capabilities XML (Alexander Burluka),<br />
      Parallels: add connectBaselineCPU() (Alexander Burluka),<br />
      Parallels: add domainGetVcpus() (Alexander Burluka),<br />
      maint: prohibit empty first lines (Martin Kletzander),<br />
      Remove unnecessary empty first lines (Martin Kletzander),<br />
      Simplify conditions in virStorageBackendProbeTarget (Ján Tomko),<br />
      Don't reuse 'ret' variable in virStorageBackendProbeTarget (Ján Tomko),<br />
      vircaps2xmltest: Introduce basic testing (Michal Privoznik),<br />
      libxl: introduce libxlDomainDefCheckABIStability (Jim Fehlig),<br />
      maint: detect VPATH builds when checking for gnulib update (Eric Blake),<br />
      maint: optimize locale.h syntax check (Eric Blake),<br />
      virnuma: Check for numa_bitmask_isbitset presence (Michal Privoznik),<br />
      cfg.mk: Introduce rule for setlocale() (Michal Privoznik),<br />
      virnuma: Implement virNumaGetDistances stub for non-NUMA (Michal Privoznik),<br />
      virCaps: Expose distance between host NUMA nodes (Michal Privoznik),<br />
      virnuma: Introduce virNumaGetDistances (Michal Privoznik),<br />
      tests: monitor: json: Fix error message when returning json in json (Peter Krempa),<br />
      libxl: Move virDomainXMLOptionNew into libxlCreateXMLConf (Daniel P. Berrange),<br />
      libxl: Don't pass libxlDriverPrivatePtr into libxlBuildDomainConfig (Daniel P. Berrange),<br />
      libxl: Don't pass virDomainObjPtr to libxlBuildDomainConfig (Daniel P. Berrange),<br />
      qemu: Return in from qemuDomainRemove*Device (Jiri Denemark),<br />
      tests: storagetest: Unify and reformat storage chain format string (Peter Krempa),<br />
      qemu: json: Add format strings for optional command arguments (Peter Krempa),<br />
      util: string: Return element count from virStringSplit (Peter Krempa),<br />
      storage: Traverse backing chains of network disks (Peter Krempa),<br />
      storage: Change to new backing store parser (Peter Krempa),<br />
      storage: Add infrastructure to parse remote network backing names (Peter Krempa),<br />
      storage: Switch metadata crawler to use storage driver file access check (Peter Krempa),<br />
      storage: Switch metadata crawler to use storage driver to read headers (Peter Krempa),<br />
      storage: Switch metadata crawler to use storage driver to get unique path (Peter Krempa),<br />
      storage: backend: Add possibility to suppress errors from backend lookup (Peter Krempa),<br />
      test: storage: Initialize storage source to correct type (Peter Krempa),<br />
      storage: Determine the local storage type right away (Peter Krempa),<br />
      storage: Move virStorageFileGetMetadata to the storage driver (Peter Krempa),<br />
      storage: Add API to check accessibility of storage volumes (Peter Krempa),<br />
      storage: backend: Add unique id retrieval API (Peter Krempa),<br />
      xenapi_utils: Adapt to enum cleanups (Michal Privoznik),<br />
      virnuma.c: Fix some comments (Michal Privoznik),<br />
      conf: more enum cleanups in "src/conf/domain_conf.h" (Julio Faracco),<br />
      conf: enum cleanups in "src/conf/domain_conf.h" (Julio Faracco),<br />
      cpu: use typedefs for enums in "src/cpu/cpu_map.h" (Julio Faracco),<br />
      virsh-nodedev: Avoid spurious errors (Michal Privoznik),<br />
      qemu: Process DEVICE_DELETED event in a separate thread (Jiri Denemark),<br />
      qemu: Finish device removal in the original thread (Jiri Denemark),<br />
      Add helper program to create custom leases (Nehal J Wani)<br />
      </li><li> Cleanups:<br />
      Remove redundant docs from libvirt.h (Jiri Denemark),<br />
      conf: whitespace tweak (Chen Fan)<br />
      </li></ul>
        <h3>1.2.5: Jun 2 2014</h3>
        <ul><li> Security:<br />
      LSN-2014-0003: Don't expand entities when parsing XML (Daniel P. Berrange)<br />
      </li><li> Features:<br />
      Introduce virDomain{Get,Set}Time APIs (Michal Privoznik),<br />
      Introduce virDomainFSFreeze() and virDomainFSThaw() public API (Tomoki Sekiyama)<br />
      </li><li> Documentation:<br />
      bhyve driver documentation improvements (Roman Bogorodskiy),<br />
      virsh: fix typos in virsh man page (Eric Blake),<br />
      maint: fix typo in previous patch (Eric Blake),<br />
      fix documentation of virDomainSet(Get)Metadata (Dan Kenigsberg),<br />
      Fix an extra ' in a translated string (Daniel Veillard),<br />
      add a serial device with a seclabel example (Ján Tomko),<br />
      maint: fix typos related to disk name resolution (Eric Blake),<br />
      maint: fix typos related to 'frozen' (Eric Blake),<br />
      mention vagrant-libvirt in apps.html (James Shubin),<br />
      update documentation of &lt;interface type='hostdev'&gt; (Chunyan Liu),<br />
      update README-hacking (Chen Hanxiao),<br />
      virerror: Fix an error message typo (Cole Robinson),<br />
      fix a typo in formatdomain (Chen Hanxiao),<br />
      typos: fix s/it/is/ where applicable (Martin Kletzander),<br />
      datatypes: Fix comment of secret uuid (Li Yang)<br />
      </li><li> Portability:<br />
      build: avoid compiler warning on 32-bit platform (Eric Blake),<br />
      build: fix build with libselinux 2.3 (Cédric Bosdonnat),<br />
      qemu: Fix specifying char devs for PPC (Olivia Yin),<br />
      change machine name ppce500v2 to ppce500 (Olivia Yin),<br />
      tests: avoid dlsym mocking on mingw (Eric Blake),<br />
      avoid 'sync' as variable name (Pavel Hrdina),<br />
      Fix build wihout macvtap or virtualport (Ján Tomko)<br />
      </li><li> Bug Fixes:<br />
      util: fix DST end date in virtimetest timezones (Laine Stump),<br />
      qemu: snapshot: Improve detection of mixed snapshots (Peter Krempa),<br />
      qemu: snapshot: Reject internal active snapshot without memory state (Peter Krempa),<br />
      util: storage: Fix crash of libvirtd on network backed guest block-pull (Peter Krempa),<br />
      util: fix virTimeLocalOffsetFromUTC DST processing (Laine Stump),<br />
      qemu: managedsave: Don't spam logs with warnings about corrupted image (Peter Krempa),<br />
      utils: storage: Canonicalize paths only for local filesystems (Peter Krempa),<br />
      qemu: reject rather than hang on blockcommit of active layer (Eric Blake),<br />
      Clean up chardev sockets on QEMU shutdown (Ján Tomko),<br />
      qemu: fix &lt;clock offset='variable' basis='localtime'/&gt; (Laine Stump),<br />
      qemu: fix RTC_CHANGE event for &lt;clock offset='variable' basis='utc'/&gt; (Laine Stump),<br />
      qemu: Properly abort migration to a file (Jiri Denemark),<br />
      qemu: Send migrate_cancel when aborting migration (Jiri Denemark),<br />
      Fix error message when TUNNELLED flag is used in non-p2p migration (Jiri Denemark),<br />
      conf: fix backing store parse off-by-one (Eric Blake),<br />
      Fix crash in DAC driver with no seclabels (Ján Tomko),<br />
      util: fix memory leak in failure path of virCgroupKillRecursiveInternal (Chen Hanxiao),<br />
      qemu: Avoid leak in qemuDomainCheckRemoveOptionalDisk (Jiri Denemark),<br />
      qemu: Ignore temporary job errors when checking migration status (Jiri Denemark),<br />
      qemu: snapshot: Terminate job when memory compression program isn't found (Peter Krempa),<br />
      sanlock: avoid leak in acquire() (Martin Kletzander),<br />
      virsh: domain: Fix output of the VNC display number for domdisplay (Peter Krempa),<br />
      sanlock: don't fail with unregistered domains (Martin Kletzander),<br />
      storage: Resolve issues in failure path (John Ferlan),<br />
      spec: Don't install nonexistent test_libvirt_lockd.aug (Jiri Denemark),<br />
      spec: sanlock is x86_64 only on RHEL (Jiri Denemark),<br />
      Fix vlan ID detection in udev interface driver (Ján Tomko)<br />
      </li><li> Improvements:<br />
      maint: cleanup detection of const'ness of selinux ctx (Jim Fehlig),<br />
      storage: fs: Drop-in replace use of virStorageFileGetMetadataFromBuf (Peter Krempa),<br />
      storage: Return backing format from virStorageFileGetMetadataFromFD (Peter Krempa),<br />
      util: new function virTimeLocalOffsetFromUTC (Laine Stump),<br />
      storage: Add storage file API to read file headers (Peter Krempa),<br />
      storage: Add support for access to files using provided uid/gid (Peter Krempa),<br />
      storage: Add NONE protocol type for network disks (Peter Krempa),<br />
      conf: Fix domain disk path iterator to work with networked storage (Peter Krempa),<br />
      storage: Rework debugging of storage file access through storage driver (Peter Krempa),<br />
      storage: Store gluster volume name separately (Peter Krempa),<br />
      qemu: Make qemuDomainPrepareDiskChainElement aware of remote storage (Peter Krempa),<br />
      qemu: process: Refresh backing chain info when reconnecting to qemu (Peter Krempa),<br />
      Don't log an internal error when the guest hasn't updated balloon stats (Ján Tomko),<br />
      qemuSetupCgroupForVcpu: s/virProcessInfoSetAffinity/virProcessSetAffinity/ (Michal Privoznik),<br />
      bhyve: fix virObjectUnlock() usage (Roman Bogorodskiy),<br />
      virdbus: Show method name in error message (Cole Robinson),<br />
      virdbus: Remove redundant error macro (Cole Robinson),<br />
      qemu: snapshot: Fix return value of external checkpoint with no disks (Peter Krempa),<br />
      qemu: snapshot: Forbid empty snapshots (Peter Krempa),<br />
      qemu: snapshot: Forbid partial internal snapshots (Peter Krempa),<br />
      qemu: snapshot: Use typecasted switch in qemuDomainSnapshotPrepare() (Peter Krempa),<br />
      bhyve: domain events support (Roman Bogorodskiy),<br />
      migration: add support for migrateURI configuration (Chen Fan),<br />
      util: refactor virNetlinkCommand to fix several bugs / style problems (Laine Stump),<br />
      build: nuke more uses of 'sync' (Eric Blake),<br />
      Return error when updating cdrom device (Pavel Hrdina),<br />
      Revert "maint: prefer enum over int for virstoragefile structs" (Eric Blake),<br />
      parallels: create VMs in the default place (Dmitry Guryanov),<br />
      parallels: add disks correctly (Dmitry Guryanov),<br />
      parallels: set file format in virDomainDef (Dmitry Guryanov),<br />
      parallels: add VIR_STORAGE_FILE_PLOOP format (Dmitry Guryanov),<br />
      conf: fix seclabels for chardevs (Ján Tomko),<br />
      Rename virDomainDiskSourceDefFormatSeclabel (Ján Tomko),<br />
      security_dac: honor relabel='no' in chardev config (Jim Fehlig),<br />
      security_dac: avoid relabeling hostdevs when relabel='no' (Jim Fehlig),<br />
      security_dac: honor relabel='no' in disk config (Jim Fehlig),<br />
      security_dac: avoid relabeling when relabel='no' (Jim Fehlig),<br />
      security_dac: rework callback parameter passing (Jim Fehlig),<br />
      security_dac: cleanup use of enum types (Jim Fehlig),<br />
      security_dac: annotate some functions with ATTRIBUTE_NONNULL (Jim Fehlig),<br />
      maint: prefer enum over int for virstoragefile structs (Eric Blake),<br />
      maint: shorten 'TypeType' function names (Eric Blake),<br />
      maint: use enum typedef for virstorageencryption.h (Eric Blake),<br />
      vbox: fix stale comment about vdi storage type (Eric Blake),<br />
      qemu: Implement virDomain{Get,Set}Time (Michal Privoznik),<br />
      virsh: Expose virDomain{Get,Set}Time (Michal Privoznik),<br />
      security_dac: Fix indentation (Jim Fehlig),<br />
      security_dac: Remove unnecessary curly braces (Jim Fehlig),<br />
      security_dac: Remove unnecessary ATTRIBUTE_UNUSED (Jim Fehlig),<br />
      virsh: reject undefine --wipe-storage without also naming storage (Li Yang),<br />
      conf: use typedefs for enums in "src/conf/snapshot_conf.h" (Julio Faracco),<br />
      conf: use typedefs for enums in "src/conf/storage_conf.h" (Julio Faracco),<br />
      conf: use typedefs for enums in "src/conf/nwfilter_conf.h" (Julio Faracco),<br />
      qemu: Make qemuProcess{Start,Stop}CPUs easier to follow (Jiri Denemark),<br />
      qemuDomainObjBeginNestedJob: Return -2 for temporary failures (Jiri Denemark),<br />
      qemu: Make qemuDomainObjBeginNestedJob static (Jiri Denemark),<br />
      qemu: extract common PCI handling functions (Roman Bogorodskiy),<br />
      qemu: extract PCI handling structs (Roman Bogorodskiy),<br />
      qemu: Adjust size for qcow2/qed if not on sector boundary (John Ferlan),<br />
      sanlock: code movement in virLockManagerSanlockAcquire (Martin Kletzander),<br />
      apibuild: Disallow 'returns' return description (Michal Privoznik),<br />
      qemu: Support mountpoints option of guest-fsfreeze-freeze (Tomoki Sekiyama),<br />
      virsh: Expose new virDomainFSFreeze and virDomainFSThaw API (Tomoki Sekiyama),<br />
      qemu: Implement virDomainFSFreeze and virDomainFSThaw (Tomoki Sekiyama),<br />
      conf: use typedefs for enums in node_device_conf, nwfilter_params (Julio Faracco),<br />
      libxl: fix support for &lt;interface type="hostdev"&gt; syntax (Chunyan Liu),<br />
      maint: use $(SED) instead of sed for syntax-check (Roman Bogorodskiy),<br />
      bhyve: implement connectGetSysinfo (Roman Bogorodskiy),<br />
      qemu: Implement a stub cpuArchDriver.compare() handler for arm and aarch64 (Oleg Strikov),<br />
      ESX: add virStorageVolGetInfo in iSCSI backend. (Dawid Zamirski),<br />
      parallels: add a set of trivial functions (Dmitry Guryanov),<br />
      parallels: don't add domain to the list twice (Dmitry Guryanov),<br />
      parallels: don't enable VNC when we define a new domain (Dmitry Guryanov),<br />
      parallels: fix virDomainDef.features comparison (Dmitry Guryanov),<br />
      Add support for timestamping QEMU logs (Ján Tomko),<br />
      qemu: track quiesced status in qemuDomainSnapshotFSFreeze (Tomoki Sekiyama),<br />
      remote: Implement virDomainFSFreeze and virDomainFSThaw (Tomoki Sekiyama),<br />
      udev: consider the device a CDROM when ID_CDROM=1 (Giuseppe Scrivano),<br />
      virdbus: Make virDBusCall static (Cole Robinson),<br />
      qemu: specify domain in host-side PCI addresses when needed/supported (Laine Stump),<br />
      qemu: add host-pci-multidomain capability (Laine Stump),<br />
      storageVolCreateXMLFrom: Allow multiple accesses to origvol (Michal Privoznik),<br />
      conf: use typedefs for enums in "src/conf/{network,interface}_conf.h" (Julio Faracco),<br />
      conf: use typedefs for enums in "src/conf/cpu_conf.h" (Julio Faracco),<br />
      util: use typedefs for enums in "src/util/" directory (Julio Faracco),<br />
      virsh: Replace list element to defined variable (Li Yang),<br />
      libxl: support PARAVIRT reboot flag (Jim Fehlig),<br />
      libxl: support PARAVIRT and ACPI shutdown flags (Jim Fehlig),<br />
      Introduce a new flag for controlling shutdown/reboot (Jim Fehlig),<br />
      conf: drop extra storage probe (Eric Blake),<br />
      bhyve: report cpuTime in bhyveDomainGetInfo (Roman Bogorodskiy),<br />
      bhyve: implement connectDomainXMLToNative (Roman Bogorodskiy),<br />
      bhyve: improve bhyve_command.c testability (Roman Bogorodskiy)<br />
      </li><li> Cleanup:<br />
      virSecurityDACRestoreSecurityHostdevLabel: Unmark @def as unused (Michal Privoznik)<br />
      </li></ul>
        <h3>1.2.4: May 4 2014</h3>
        <ul><li> Documentation:<br />
      Device{Attach,Detach}: Document S4 limitations (Michal Privoznik),<br />
      Add a new example to illustrate domain migration (Sahid Orentino Ferdjaoui),<br />
      update docs for setting the QEMU BIOS path (Chen Hanxiao),<br />
      document nmdm type console (Roman Bogorodskiy),<br />
      Fix typos in src/* (Nehal J Wani),<br />
      document that vfio is default for hostdev networks too (Laine Stump),<br />
      cpu: Add documentation for CPU driver APIs (Jiri Denemark),<br />
      virsh: Fix comment of vshCmdInfo (Li Yang)<br />
      </li><li> Portability:<br />
      Explicitly link virfirewalltest and virsystemdtest against dbus (Guido Günther),<br />
      qemuxml2argvtest: Don't use privileged mode upfront (Guido Günther),<br />
      tests: skip virfirewalltest on non-Linux systems (Roman Bogorodskiy),<br />
      tests: don't fail with newer gnutls (Martin Kletzander),<br />
      fix build with older gcc (Ján Tomko),<br />
      storage: reject negative indices (Eric Blake),<br />
      networkxml2firewalltest: fix build failure on freebsd (Pavel Hrdina),<br />
      virfirewall: fix build on freebsd (Pavel Hrdina),<br />
      Disable libvirtd by default when building on Win32 (Daniel P. Berrange),<br />
      Don't use SO_REUSEADDR on Win32 platforms (Daniel P. Berrange),<br />
      Conditionalize include of dlfcn.h in virmock.h (Daniel P. Berrange),<br />
      build: avoid 'index' as variable name (Eric Blake),<br />
      build: Don't use code with dbus_message_unref when built without dbus (Martin Kletzander),<br />
      tests: Fix systemd test with --without-driver-modules (Jiri Denemark),<br />
      Fix build on mingw32 (Ján Tomko),<br />
      build: avoid compiler warning on shadowed name (Jean-Baptiste Rouault),<br />
      tests: link against libxml2 (Guido Günther),<br />
      tests: build viridentitytest only WITH_ATTR. (Jincheng Miao),<br />
      maint: Correctly detect wether "gluster" cli tool is accessible (Peter Krempa),<br />
      libvirt-guests: avoid bashism (Guido Günther),<br />
      Use the force flag for mkfs -t xfs (Ján Tomko)<br />
      </li><li> Bug Fixes:<br />
      Restore skipping of setting capacity (John Ferlan),<br />
      qemu: fix crash when removing &lt;filterref&gt; from interface with update-device (Laine Stump),<br />
      storage: Clear all data allocated about backing store before reparsing (Peter Krempa),<br />
      nwfilter: Tear down temp. filters when tearing all filters (Stefan Berger),<br />
      Set mknod permission in device ACL for LXC USB devices (Daniel P. Berrange),<br />
      conf: avoid null deref during storage probe (Eric Blake),<br />
      qemu: properly quit migration with abort_on_error (Martin Kletzander),<br />
      qemu: don't call virFileExists() for network type disks (Martin Kletzander),<br />
      storage_backend_rbd: Correct argument order to rbd_create3 (Steven McDonald),<br />
      xen: ensure /usr/sbin/xend exists before checking status (Jim Fehlig),<br />
      Remove bogus ATTRIBUTE_NONNULL from virFirewallAddRuleFull (Daniel P. Berrange),<br />
      Make autostart of virtlockd actually work (Daniel P. Berrange),<br />
      Fix leak on OOM in virNWFilterVarValueCreateSimpleCopyValue (Daniel P. Berrange),<br />
      qemu: Avoid overflow when setting migration speed on inactive domains (Jiri Denemark),<br />
      qemu: don't check for backing chains for formats w/o snapshot support (Martin Kletzander),<br />
      Fix pci bus naming for PPC (Daniel P. Berrange),<br />
      Document behavior of setvcpus during guest boot (Ján Tomko),<br />
      Save domain status after cpu hotplug (Ján Tomko),<br />
      Fix error for out of range vcpu in qemuDomainPinVcpuFlags (Ján Tomko),<br />
      Properly free vcpupin info for unplugged CPUs (Ján Tomko),<br />
      Only set QEMU_CAPS_NO_HPET on x86 (Ján Tomko),<br />
      Fix Memory Leak in virStorageFileGetMetadataRecurse() (Nehal J Wani),<br />
      qemu: Unlock the NWFilter update lock by leaving via the cleanup label (Stefan Berger),<br />
      storage: netfs: Handle backend errors (John Ferlan),<br />
      conf: fix omission of &lt;driver&gt; in domain dumpxml (Eric Blake),<br />
      Fix virsystemdtest without SYSTEMD_DAEMON (Ján Tomko),<br />
      qemu: Avoid overflow when setting migration speed (Jiri Denemark),<br />
      bhyve: fix domain management (Wojciech Macek),<br />
      Check maximum startcpu value correctly (Ján Tomko),<br />
      storage: Don't update pool available/allocation if buildVol fails (John Ferlan),<br />
      LXC: Fix return code evaulation in lxcCheckNetNsSupport() (Richard Weinberger),<br />
      Fix incorrect values in redirdev ABI check error (Ján Tomko),<br />
      virNetDev{Replace,Restore}MacAddress: Fix memory leak (Wangrui K),<br />
      bhyveConnectGetCapabilities: Fix double caps unref (Michal Privoznik),<br />
      Simplify bhyveDriverGetCapabilities() (Michal Privoznik),<br />
      bhyve_capabilities: Add Semihalf to Copyright (Michal Privoznik),<br />
      tests: Don't crash when creating the config object fails (Guido Günther),<br />
      conf: avoid memleak on NULL path (Eric Blake),<br />
      lxc conf2xml: don't let current vcpus at 0: define won't like it (Cédric Bosdonnat),<br />
      QoS: make tc filters match all traffic (Antoni S. Puimedon),<br />
      NFS storage pool: Fix libvirtd crash due to refactor edit (John Ferlan),<br />
      Define CPUINFO_FILE_LEN and fix maxlen of cpuinfo file for all uses (Olivia Yin),<br />
      Fix Memory Leak in daemon/libvirtd.c (Nehal J Wani),<br />
      qemu: make sure agent returns error when required data are missing (Martin Kletzander),<br />
      Fix coverity-reported leak in virSecurityManagerGenLabel (Ján Tomko),<br />
      phyp: fix logic error on volume creation (Eric Blake),<br />
      qemu: cleanup error checking on agent replies (Martin Kletzander)<br />
      </li><li> Improvements
      util: new stricter unsigned int parsing (Eric Blake),<br />
      util: fix uint parsing on 64-bit platforms (Eric Blake),<br />
      Misc error reporting bugs in QEMU cli builder (Daniel P. Berrange),<br />
      nwfilter: Validate rule after parsing (Stefan Berger),<br />
      Add support for QEMU migration to use SASL authentication (Sahid Orentino Ferdjaoui),<br />
      enforce sane readdir usage (Eric Blake),<br />
      network: use virDirRead in networkMigrateStateFiles (Laine Stump),<br />
      storage: use virDirRead API (Eric Blake),<br />
      drivers: use virDirRead API (Eric Blake),<br />
      util: use virDirRead API (Eric Blake),<br />
      conf: use virDirRead API (Eric Blake),<br />
      nodeinfo: use virDirRead API (Natanael Copa),<br />
      util: introduce virDirRead wrapper for readdir (Natanael Copa),<br />
      tests: remove hostdevmgr directory on cleanup (Martin Kletzander),<br />
      Use virFileFindResource to locate virtlockd daemon (Daniel P. Berrange),<br />
      Use virFileFindResource to locate libvirtd daemon (Daniel P. Berrange),<br />
      Recheck disk backing chains after snapshot (Jiri Denemark),<br />
      network: centralize check for active network during interface attach (Laine Stump),<br />
      network: set macvtap/hostdev networks active if their state file exists (Laine Stump),<br />
      network: change location of network state xml files (Laine Stump),<br />
      network: create statedir during driver initialization (Laine Stump),<br />
      network: fix virNetworkObjAssignDef and persistence (Laine Stump),<br />
      build: -avoid-version on libvirt_driver_nwfilter (Dwight Engen),<br />
      libxl: Support PV consoles (Ian Campbell),<br />
      build: add nwfilterxml2firewalldata to dist (Dwight Engen),<br />
      Add a test suite for nwfilter ebiptables tech driver (Daniel P. Berrange),<br />
      Remove last trace of direct firewall command exection (Daniel P. Berrange),<br />
      Convert ebiptablesDriverProbeStateMatch to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebiptablesApplyNewRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebtablesApplyDropAllRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebtablesApplyDHCPOnlyRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebtablesApplyBasicRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebiptablesTearNewRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebtablesRemoveBasicRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebiptablesTearOldRules to virFirewall (Daniel P. Berrange),<br />
      Convert nwfilter ebiptablesAllTeardown to virFirewall (Daniel P. Berrange),<br />
      Convert ebtables code over to use firewall APIs (Daniel P. Berrange),<br />
      Add test for converting network XML to iptables rules (Daniel P. Berrange),<br />
      Replace virNetworkObjPtr with virNetworkDefPtr in network platform APIs (Daniel P. Berrange),<br />
      Convert bridge driver over to use new firewall APIs (Daniel P. Berrange),<br />
      Introduce an object for managing firewall rulesets (Daniel P. Berrange),<br />
      Preserve error when tearing down nwfilter rules (Daniel P. Berrange),<br />
      Remove two-stage construction of commands in nwfilter (Daniel P. Berrange),<br />
      Merge nwfilter createRuleInstance driver into applyNewRules (Daniel P. Berrange),<br />
      Push virNWFilterRuleInstPtr out of (eb|ip)tablesCreateRuleInstance (Daniel P. Berrange),<br />
      Add helper methods for determining what protocol layer is used (Daniel P. Berrange),<br />
      Remove nwfilter tech driver 'displayRuleInstance' callback (Daniel P. Berrange),<br />
      Remove nwfilter tech driver 'removeRules' callback (Daniel P. Berrange),<br />
      Remove pointless storage of var names in virNWFilterHashTable (Daniel P. Berrange),<br />
      Remove virDomainNetType parameter from nwfilter drivers (Daniel P. Berrange),<br />
      Move virNWFilterTechDriver struct out of nwfilter_conf.h (Daniel P. Berrange),<br />
      Use virFileFindResource to locate CPU map XML (Daniel P. Berrange),<br />
      Use virFileFindResource to locate driver plugins (Daniel P. Berrange),<br />
      Use virFileFindResource to locate lock manager plugins (Daniel P. Berrange),<br />
      Use virFileFindResource to locate iohelper for fdstream (Nehal J Wani),<br />
      Use virFileFindResource to locate parthelper for storage backend (Nehal J Wani),<br />
      Use virFileFindResource to locate libvirt_lxc for capabilities (Nehal J Wani),<br />
      Use virFileFindResource to locate iohelper for virFileWrapperFdNew (Nehal J Wani),<br />
      Activate build dir overrides in libvirtd, virtlockd, virsh &amp; tests (Daniel P. Berrange),<br />
      Add helpers for resolving path to resources in build tree (Daniel P. Berrange),<br />
      Add test suite for viralloc APIs (Daniel P. Berrange),<br />
      Add support for addressing backing stores by index (Jiri Denemark),<br />
      virStorageFileChainLookup: Return virStorageSourcePtr (Jiri Denemark),<br />
      qemuDomainBlockCommit: Track virStorageSourcePtr for base (Jiri Denemark),<br />
      qemuDomainBlockCommit: Don't track top_canon path separately (Jiri Denemark),<br />
      tests: Test backing store XML formatting and parsing (Jiri Denemark),<br />
      tests: More output options for xml2xml tests (Jiri Denemark),<br />
      conf: Format and parse backing chains in domain XML (Jiri Denemark),<br />
      conf: Output disk backing store details in domain XML (Jiri Denemark),<br />
      util: storage: Invert the way recursive metadata retrieval works (Peter Krempa),<br />
      util: virstoragefile: Don't mangle data stored about directories (Peter Krempa),<br />
      storage: Move disk-&gt;backingChain to the recursive disk-&gt;src.backingStore (Peter Krempa),<br />
      util: virstoragefile: Rename backingMeta to backingStore (Peter Krempa),<br />
      util: virstorage: Kill struct virStorageFileMetadata (Peter Krempa),<br />
      maint: Switch over from struct virStorageFileMetadata to virStorageSource (Peter Krempa),<br />
      util: storagefile: Add fields from virStorageMetadata to virStorageSource (Peter Krempa),<br />
      util: storagefile: Add function to free a virStorageSourcePtr (Peter Krempa),<br />
      virstoragefile: Kill "backingStore" field from virStorageFileMetadata (Peter Krempa),<br />
      util: virstoragefile: Don't use "backingStore" directly (Peter Krempa),<br />
      util: storagefile: Rename "canonPath" to "path" in virStorageFileMetadata (Peter Krempa),<br />
      util: storage: Rename "path" to "relPath" in virStorageFileMetadata (Peter Krempa),<br />
      storage: util: Clean up arguments of virStorageFileGetMetadataInternal (Peter Krempa),<br />
      util: storage: Move checking of the actual backing image to the worker (Peter Krempa),<br />
      util: storage: Remove obsolete argument virStorageFileGetMetadataInternal (Peter Krempa),<br />
      util: storagefile: Always store raw backing name in the metadata (Peter Krempa),<br />
      qemu: unexport qemuDiskChainCheckBroken (Peter Krempa),<br />
      bhyve: bhyveDomainDefineXML fixes (Roman Bogorodskiy),<br />
      PPC64 prefers to set pci-ohci controller as default USB controller (Li Zhang),<br />
      Make virDomainVcpuPinDel return void (Ján Tomko),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      bhyve: domainCreateXML (Wojciech Macek),<br />
      Remove QEMU_CAPS_MACHINE_USB_OPT from ComputeCmdFlags (Ján Tomko),<br />
      conf: split &lt;disk&gt; schema into more pieces (Eric Blake),<br />
      conf: set up for per-grammar overrides in schemas (Eric Blake),<br />
      conf: restrict external snapshots to backing store formats (Eric Blake),<br />
      conf: move storage formats to common RNG file (Eric Blake),<br />
      conf: better &lt;disk&gt; interleaving in schema (Eric Blake),<br />
      conf: create common storage RNG grammar file (Eric Blake),<br />
      conf: delete internal directory field (Eric Blake),<br />
      conf: tweak chain lookup internals (Eric Blake),<br />
      conf: drop redundant parameter to chain lookup (Eric Blake),<br />
      conf: report error on chain lookup failure (Eric Blake),<br />
      util: new virFileRelLinkPointsTo function (Eric Blake),<br />
      conf: test backing chain lookup (Eric Blake),<br />
      Introduce --without-pm-utils to get rid of pm-is-supported dependency (Cédric Bosdonnat),<br />
      conf: delete useless backingStoreFormat field (Eric Blake),<br />
      conf: return backing information separately from metadata (Eric Blake),<br />
      conf: delete useless backingStoreIsFile field (Eric Blake),<br />
      conf: expose probe for non-local storage (Eric Blake),<br />
      conf: provide details on network backing store (Eric Blake),<br />
      conf: make virstoragetest debug easier (Eric Blake),<br />
      cpu: Properly check input parameters (Jiri Denemark),<br />
      Clean up virCgroupGetPercpuStats (Ján Tomko),<br />
      Rename id, max_id to need_cpus, total_cpus (Ján Tomko),<br />
      Extend virCgroupGetPercpuStats to fill in vcputime too (Ján Tomko),<br />
      Fix return value of virCgroupGetPercpuStats (Ján Tomko),<br />
      Don't require domain obj in qemuDomainGetPercpuStats (Ján Tomko),<br />
      conf: test for more fields (Eric Blake),<br />
      conf: start testing contents of the new backing chain fields (Eric Blake),<br />
      conf: track more fields in backing chain metadata (Eric Blake),<br />
      conf: rename some test fields (Eric Blake),<br />
      conf: earlier allocation during backing chain crawl (Eric Blake),<br />
      conf: track user vs. canonical name through full chain lookup (Eric Blake),<br />
      qemu: Unexport qemuBuildNetworkDriveURI() (Peter Krempa),<br />
      qemu: Refactor qemuGetDriveSourceString to take virStorageSourcePtr (Peter Krempa),<br />
      storage: Refactor location of metadata for storage drive access to files (Peter Krempa),<br />
      storage: Refactor storage file initialization to use virStorageSourcePtr (Peter Krempa),<br />
      conf: Refactor helpers to retrieve actual storage type (Peter Krempa),<br />
      tests: use virBhyveCapsBuild in bhyvexml2argv test (Roman Bogorodskiy),<br />
      conf: another refactor of virstoragetest (Eric Blake),<br />
      conf: interleave virstoragetest structs (Eric Blake),<br />
      conf: test for more scenarios (Eric Blake),<br />
      conf: fix detection of infinite backing loop (Eric Blake),<br />
      vmware: set the driver version (Jean-Baptiste Rouault),<br />
      tests: add bhyve xml2xml test (Roman Bogorodskiy),<br />
      bhyve: add domain metadata support (Roman Bogorodskiy),<br />
      bhyve: fix ATTRIBUTE_NONNULL usage (Roman Bogorodskiy),<br />
      Use a static initializer for static mutexes (Daniel P. Berrange),<br />
      Add syntax check to validate capitalization of abbreviations (Daniel P. Berrange),<br />
      Replace Pci with PCI throughout (Daniel P. Berrange),<br />
      Replace Usb with USB throughout (Daniel P. Berrange),<br />
      Replace Scsi with SCSI throughout (Daniel P. Berrange),<br />
      Switch systemd test to use generic dbus mock (Daniel P. Berrange),<br />
      Create a re-usable DBus LD_PRELOAD mock library (Daniel P. Berrange),<br />
      Introduce a new set of helper macros for mocking symbols (Daniel P. Berrange),<br />
      bhyve: connectCompareCPU support (Wojciech Macek),<br />
      bhyve: create capabilities submodule (Wojciech Macek),<br />
      bhyve: support for connectBaselineCPU (Wojciech Macek),<br />
      interface: dump inactive xml when interface isn't active (Laine Stump),<br />
      hash: add common utility functions (Eric Blake),<br />
      bhyve: add xml2argv tests for console (Roman Bogorodskiy),<br />
      bhyve: add console support through nmdm device (Roman Bogorodskiy),<br />
      bhyve: domain autostart support (David Shane Holden),<br />
      conf: track when storage type is still undetermined (Eric Blake),<br />
      tests: refactor virstoragetest for less stack space (Eric Blake),<br />
      tests: use C99 initialization for storage test (Eric Blake),<br />
      libxl: Set disk format for empty cdrom device (Stefan Bader),<br />
      libxl: Use id from virDomainObj inside the driver (Stefan Bader),<br />
      Add redirdevs to ABI stability check (Ján Tomko),<br />
      virsh: Make 'exit' action same as 'quit' (Li Yang),<br />
      Include PCI address in the error in virDomainNetFindIdx (Ján Tomko),<br />
      Move error reporting into virDomainNetFindIdx (Ján Tomko),<br />
      tests: simplify storage test cleanup (Eric Blake),<br />
      storage: Report error from VolOpen by default (Cole Robinson),<br />
      conf: modify tracking of encrypted images (Eric Blake),<br />
      conf: drop redundant parameters during probe (Eric Blake),<br />
      conf: track sizes directly in source struct (Eric Blake),<br />
      conf: use common struct in storage volumes (Eric Blake),<br />
      conf: move volume structs to util/ (Eric Blake),<br />
      conf: tweak volume target struct details (Eric Blake),<br />
      conf: manage disk source by struct instead of pieces (Eric Blake),<br />
      virsh: man: delete the unexpected character in snapshot-list (Shanzhi Yu),<br />
      maint: fix spelling errors in disk pools (Eric Blake),<br />
      conf: let snapshots share disk source struct (Eric Blake),<br />
      conf: move common disk source functions (Eric Blake),<br />
      util: don't support loopback and nbd when setuid (Eric Blake),<br />
      util: move detection of shared filesystems (Eric Blake),<br />
      conf: move storage source type to util/ (Eric Blake),<br />
      conf: move storage secret type to util/ (Eric Blake),<br />
      conf: move source pool type to util/ (Eric Blake),<br />
      conf: move storage encryption type to util/ (Eric Blake),<br />
      conf: move network disk protocol type to util/ (Eric Blake),<br />
      conf: move host disk type to util/ (Eric Blake),<br />
      conf: split network host structs to util/ (Eric Blake),<br />
      conf: split security label structs to util/ (Eric Blake),<br />
      maint: ensure src/ directory includes are clean (Eric Blake),<br />
      storage: gluster: Implement storage pool lookup (Peter Krempa),<br />
      storage: netfs: Support lookup of glusterfs pool sources (Peter Krempa),<br />
      storage: netfs: Split up and tidy up NFS storage pool source function (Peter Krempa)<br />
      </li><li> Cleanups:<br />
      tests: drop dead code from argv2xml and xml2xml (Eric Blake),<br />
      qemu: remove unneeded forward declaration (Martin Kletzander)<br />
      </li></ul>
        <h3>1.2.3: Apr 1 2014</h3>
        <ul><li>Features:<br />
      add new virDomainCoreDumpWithFormat API (Qiao Nuohan),<br />
      conf: Introduce virDomainDeviceGetInfo API (Jiri Denemark),<br />
      more features and fixes on bhyve driver (Roman Bogorodskiy),<br />
      lot of cleanups and improvement on the Xen driver (Chunyan Liu, Jim Fehlig)<br />
      </li><li>Documentation:<br />
      virsh: man: Fix spelling of parameters for --memspec in snapshot-create-as (Shanzhi Yu),<br />
      util: fix a typo in virprocess.c and d (Hongwei Bi),<br />
      cgroups: fix typo about LXC cgroups (Jean-Baptiste Rouault),<br />
      daemon: Enhance documentation for changing NOFILE limit (Jiri Denemark),<br />
      domiftune: Reword bandwidth clearing paragraph (Michal Privoznik),<br />
      conf: consistent comments about disk enum usage (Eric Blake),<br />
      qemu.conf: Mention virtlockd in @lock_manager description (Michal Privoznik),<br />
      add VMmanager to web apps (Martin Kletzander),<br />
      storage: Explicitly state that it's possible to have non-unique key (Peter Krempa),<br />
      typo fix (Roman Bogorodskiy)<br />
      </li><li>Portability:<br />
      Prohibit Windows special chars in filenames (Matthias Bolte),<br />
      tests: Fix SCSI test data filenames for Windows (Matthias Bolte),<br />
      apparmor: Fix build after split of disk source metadata (Peter Krempa),<br />
      Fix build on mingw32 (Ján Tomko),<br />
      build: Fix build with old automake (Jiri Denemark),<br />
      Fix build with qemu driver disabled (Roman Bogorodskiy),<br />
      Fix type mismatch of virNetDev*NetConfig on non-Linux (Ján Tomko),<br />
      virIdentityGetSystem: don't fail if SELinux is disabled (Michael Chapman)<br />
      </li><li>Bug Fixes:<br />
      build: fix syntax-check for storage_backend (Martin Kletzander),<br />
      gluster: Fix "key" attribute for gluster volumes (Peter Krempa),<br />
      Fix Memory Leak in testMessageArrayRef() (Nehal J Wani),<br />
      virsh: fix 'help event' (Eric Blake),<br />
      bhyve: don't leak tap devices on failures (Roman Bogorodskiy),<br />
      storage: gluster: Fix crash when initialization of storage backend fails (Peter Krempa),<br />
      Fix virNodeDeviceListCaps always returns empty (Jincheng Miao),<br />
      Create hostdevmgr in UserRuntimeDirectory for session libvirt (Ján Tomko),<br />
      Remove double free in virHostdevManagerDispose (Ján Tomko),<br />
      Fix apparmor profile to make vfio pci passthrough work (Cédric Bosdonnat),<br />
      Fixed regression in apparmor profiles for qemu brought by 43c030f (Cédric Bosdonnat),<br />
      Fix Memory Leak in virQEMUCapsInitGuestFromBinary() (Nehal J Wani),<br />
      Fix memory leak in testGetCaps() (Nehal J Wani),<br />
      network: fix problems with SRV records (Laine Stump),<br />
      Free groups in case of a partial match (Ján Tomko),<br />
      qemuDomainAttachDeviceFlags: Parse device xml as inactive (Michal Privoznik),<br />
      Coverity: Resolve a RESOURCE_LEAK (John Ferlan),<br />
      Coverity: Resolve a FORWARD_NULL (John Ferlan),<br />
      Coverity: Resolve a CHECKED_RETURN message (John Ferlan),<br />
      bhyve: don't fail on busy tap devices (Roman Bogorodskiy),<br />
      libxl: Create log directory earlier (Stefan Bader),<br />
      sanlock: Forbid VIR_DOMAIN_LOCK_FAILURE_RESTART (Jiri Denemark),<br />
      sanlock: Forbid VIR_DOMAIN_LOCK_FAILURE_IGNORE (Jiri Denemark),<br />
      vmware: fix parse of disk source (Eric Blake),<br />
      qemuDomainGetImageIds: Skip &lt;seclabel/&gt; without label (Michal Privoznik),<br />
      cgroup: Fix start VMs coincidently failed (Wang Yufei),<br />
      Remove bogus call to dbus_set_error_from_message (Daniel P. Berrange),<br />
      Remove bogus unref in virDBusMessageRead (Daniel P. Berrange),<br />
      Check boot order on device attach (Jiri Denemark),<br />
      qemu: Return meaningful error when qemu dies early (Jiri Denemark),<br />
      Ignore missing files on pool refresh (Ján Tomko),<br />
      Ignore char devices in storage pools by default (Ján Tomko),<br />
      is_selinux_enabled() returns -1 on error, account for this. (Scott Sullivan),<br />
      Fix unitialized data in virSocketAddrMask (Daniel P. Berrange),<br />
      Fix virQEMUCapsLoadCache leaks (Ján Tomko),<br />
      virNetClientSetTLSSession: Restore original signal mask (Michal Privoznik),<br />
      nwfilter: Fix double free of pointer (Stefan Berger),<br />
      build: Make sure src/util/virprobe.h is distributed (Jiri Denemark),<br />
      qemuhotplugtest: Fix mem-leaking testcases (Nehal J Wani),<br />
      build: Fix make distcheck (Martin Kletzander),<br />
      virNetServerNewPostExecRestart: Initialize @max_anonymous_clients (Michal Privoznik),<br />
      Fix memory leak in virDomainChrSourceDefClear() (Nehal J Wani),<br />
      Fix memory leak in virDomainSnapshotDiskDefClear() (Nehal J Wani),<br />
      bhyve: allow to destroy only active domains (Roman Bogorodskiy),<br />
      Fix leak on OOM when creating nwfilter rule instances (Daniel P. Berrange),<br />
      Avoid warning message from libxl driver on non-Xen kernels (Daniel P. Berrange),<br />
      Fix mistakes in checking return values (Daniel P. Berrange),<br />
      Fix issue found by coverity and cleanup (Pavel Hrdina),<br />
      XMLToNative: Parse XML as INACTIVE (Cole Robinson),<br />
      qemu: XMLToNative: Don't open vhostfd (Cole Robinson),<br />
      qemu: XMLToNative: Don't show -S (Cole Robinson),<br />
      qemu: cleanup tap devices on FreeBSD (Roman Bogorodskiy),<br />
      openvzRegister: Check for error return (John Ferlan),<br />
      nwfilter: Fix rule priority problem (Stefan Berger),<br />
      hotplug:Fix log mistake in qemuMonitorAddNetdev (Wang Rui),<br />
      libxl: Check for control_d string to decide about dom0 (Stefan Bader),<br />
      vircrypto: fix Invalid write in virCryptoHashString() (Nehal J Wani),<br />
      Load CPU map from builddir when run uninstalled (Jiri Denemark),<br />
      nwfilter: Add missing goto err_exit in error path (Stefan Berger),<br />
      Fix sec label setup when attaching to QEMU processes (Daniel P. Berrange),<br />
      storage: Fix bugs in VIR_APPEND_ELEMENT series (John Ferlan),<br />
      Remove broken error reporting in QEMU mac filtering (Daniel P. Berrange),<br />
      BZ1072677: Avoid freeing of 0 file descriptor (Stefan Berger),<br />
      Add a mutex to serialize updates to firewall (Daniel P. Berrange),<br />
      Fix locking in virsh console (Roman Bogorodskiy),<br />
      qemu: Reject unsupported tuning in session mode (Martin Kletzander),<br />
      virt-login-shell: silence coverity warning (Eric Blake),<br />
      Fix missing char dev lock path case in configure (Roman Bogorodskiy),<br />
      storage: Error out when attempting to vol-upload into a remote pool (Peter Krempa),<br />
      build: fix cppi warning (Eric Blake),<br />
      nwfilter: Increase buffer size for libpcap (Stefan Berger)<br />
      </li><li>Improvements:<br />
      storage: Rename VolOpenCheckMode to VolOpen (Cole Robinson),<br />
      storage: move block format lookup to shared UpdateVolInfo (Cole Robinson),<br />
      storage: Rename UpdateVolInfoFlags to UpdateVolInfo (Cole Robinson),<br />
      util: storagefile: Don't pursue backing chain of NULL image (Peter Krempa),<br />
      storage: pool: Fix XML indentation in pool source lookup (Peter Krempa),<br />
      ESX: Add support for virtualHW version 10 (Dawid Zamirski),<br />
      Modify help information of virsh list command (Li Yang),<br />
      bhyve: add domainLookupByID (Wojciech Macek),<br />
      bhyve: add xml2args unittest (Roman Bogorodskiy),<br />
      Move virBhyveTapGetRealDeviceName to virnetdevtap (Roman Bogorodskiy),<br />
      Shift the for loop over matched vars by one (Ján Tomko),<br />
      Use VIR_STRNDUP instead of modifying the matched string (Ján Tomko),<br />
      Simplify the loop in virCommandRunRegex (Ján Tomko),<br />
      Remove useless 'maxReg' variable (Ján Tomko),<br />
      qemu: add unit tests for the capabilities xml (Francesco Romani),<br />
      qemu: extract guest capabilities initialization (Francesco Romani),<br />
      qemu: export disk snapshot support in capabilities (Francesco Romani),<br />
      Show the real cpu shares value in live XML (Ján Tomko),<br />
      Treat zero cpu shares as a valid value (Ján Tomko),<br />
      qemu: remove redundant virQEMUDriverGetConfig (Tomoki Sekiyama),<br />
      Add a rule for indenting labels (Ján Tomko),<br />
      Indent top-level labels by one space in tools/ (Ján Tomko),<br />
      Indent top-level labels by one space in tests/ (Ján Tomko),<br />
      Indent top-level labels by one space in the rest of src/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/xen/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/vbox/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/util/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/test/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/storage/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/rpc/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/remote/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/qemu/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/parallels/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/nwfilter/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/network/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/lxc/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/locking/ (Ján Tomko),<br />
      Indent top-level labels by one space in libvirt.c (Ján Tomko),<br />
      Indent top-level labels by one space in src/libxl/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/esx/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/cpu/ (Ján Tomko),<br />
      Indent top-level labels by one space in src/conf/ (Ján Tomko),<br />
      Indent top-level labels by one space in examples/ (Ján Tomko),<br />
      Indent top-level labels by one space in daemon/ (Ján Tomko),<br />
      util: Sanitize ATTRIBUTE_NONNULL use in viriscsi.h (Peter Krempa),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      allow "virsh dump --memory-only" specify dump format (Qiao Nuohan),<br />
      qemu: add support for virDomainCoreDumpWithFormat API (Qiao Nuohan),<br />
      qemu: add qemuMonitorGetDumpGuestMemoryCapability (Qiao Nuohan),<br />
      conf: prepare to track multiple host source files per &lt;disk&gt; (Eric Blake),<br />
      conf: use disk source accessors in xenxs/ (Eric Blake),<br />
      conf: use disk source accessors in xen/ (Eric Blake),<br />
      conf: use disk source accessors in vmx/ (Eric Blake),<br />
      conf: use disk source accessors in vmware/ (Eric Blake),<br />
      conf: use disk source accessors in vbox/ (Eric Blake),<br />
      conf: use disk source accessors in uml/ (Eric Blake),<br />
      conf: use disk source accessors in security/ (Eric Blake),<br />
      conf: use disk source accessors in qemu/ (Eric Blake),<br />
      conf: use disk source accessors in phyp/ (Eric Blake),<br />
      conf: use disk source accessors in parallels/ (Eric Blake),<br />
      conf: use disk source accessors in lxc/ (Eric Blake),<br />
      conf: use disk source accessors in locking/ (Eric Blake),<br />
      conf: use disk source accessors in libxl/ (Eric Blake),<br />
      conf: use disk source accessors in esx/ (Eric Blake),<br />
      conf: use disk source accessors in bhyve/ (Eric Blake),<br />
      conf: use disk source accessors in conf/ (Eric Blake),<br />
      conf: accessors for common source information (Eric Blake),<br />
      bhyve: add domainCreateWithFlags support (Roman Bogorodskiy),<br />
      bhyve: MAC address configuration (Wojciech Macek),<br />
      libxl_driver.c: cleanup code (Chunyan Liu),<br />
      Introduce virFDStreamOpenPTY (Roman Bogorodskiy),<br />
      Add stubs for virDBusCreateReply{,V} (Ján Tomko),<br />
      libvirt support to force convergence of live guest migration (Chegu Vinod),<br />
      Allow caller to handle DBus error messages (Daniel P. Berrange),<br />
      Introduce alternate way to encode/decode arrays in DBus messages (Daniel P. Berrange),<br />
      Add DBus helper methods for creating reply messages (Daniel P. Berrange),<br />
      Refactor dbus helper methods for method calls (Daniel P. Berrange),<br />
      virlog: Modify virLogParseDefaultPriority's comment of return value (Zhou Yimin),<br />
      Fix typo in configure.ac (Ján Tomko),<br />
      Define ISCSIADM unconditionally (Ján Tomko),<br />
      Pass action to virDomainDefCompatibleDevice (Jiri Denemark),<br />
      Fix usage of virDomainDefCompatibleDevice (Jiri Denemark),<br />
      tests: Set abs_*dir in a consistent way (Jiri Denemark),<br />
      qemu: allow filtering events by regex (Eric Blake),<br />
      qemu: enable monitor event filtering by name (Eric Blake),<br />
      qemu: enable monitor event reporting (Eric Blake),<br />
      qemu: wire up RPC for qemu monitor events (Eric Blake),<br />
      qemu: create object for qemu monitor events (Eric Blake),<br />
      qemu: virsh wrapper for qemu events (Eric Blake),<br />
      qemu: new API for tracking arbitrary monitor events (Eric Blake),<br />
      Fix indentation in iscsi storage backend (Ján Tomko),<br />
      Add test for virISCSIScanTargets (Ján Tomko),<br />
      Add test for virISCSIGetSession (Ján Tomko),<br />
      Move functions using iscsiadm to viriscsi.c (Ján Tomko),<br />
      Remove storage pool from the arguments of a few functions (Ján Tomko),<br />
      Don't create iscsiadm command line in ISCSIPool{Start,Stop} (Ján Tomko),<br />
      Switch virCommandRunRegex to use virStringSplit (Ján Tomko),<br />
      Move virStorageBackendRun to vircommand (Ján Tomko),<br />
      Sort includes in storage_backend_iscsi.c (Ján Tomko),<br />
      Require K&amp;R styled curly braces around function bodies (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in remaining files (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/vbox/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/network/bridge_driver.c (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/lxc/lxc_driver.c (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/uml/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/test/test_driver.c (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/nwfilter/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/openvz/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/storage/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/qemu/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/conf/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/rpc/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/util/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in src/xen*/ (Martin Kletzander),<br />
      Use K&amp;R style for curly braces in tests/ (Martin Kletzander),<br />
      bhyve: host API support (Wojciech Macek),<br />
      libxl: move domain event handler to libxl_domain (Jim Fehlig),<br />
      libxl: include a pointer to the driver in libxlDomainObjPrivate (Jim Fehlig),<br />
      libxl: move libxlVmStart to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlFreeMem to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlDomainSetVcpuAffinities to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlDoNodeGetInfo to libxl_conf (Jim Fehlig),<br />
      libxl: move libxlDomainAutoCoreDump to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlDomEventsRegister to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlVmCleanup{,Job} to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlSaveImageOpen to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlDomainManagedSavePath to libxl_domain (Jim Fehlig),<br />
      libxl: move libxlDomainEventQueue to libxl_domain (Jim Fehlig),<br />
      Add ability to register callback for virCommand dry run (Daniel P. Berrange),<br />
      Change CMD_STOPONERR(1) to use true (Daniel P. Berrange),<br />
      Change 'int isTempChain' to bool in nwfilter (Daniel P. Berrange),<br />
      Remove pointless return values in nwfilter methods (Daniel P. Berrange),<br />
      Remove 'int stopOnError' parameters in nwfilter methods (Daniel P. Berrange),<br />
      Remove pointless brackets around boolean (Daniel P. Berrange),<br />
      Change 'int incoming' to 'bool incoming' in nwfilter code (Daniel P. Berrange),<br />
      virhostdev.h: remove ATTRIBUTE_NONNULL from oldStateDir (Chunyan Liu),<br />
      libxl: fix framebuffer port setting for HVM domains (Jim Fehlig),<br />
      maint: avoid unbalanced {} across vbox #ifdef (Eric Blake),<br />
      Remove global log buffer feature entirely (Daniel P. Berrange),<br />
      Switch to filtering based on log source name instead of filename (Daniel P. Berrange),<br />
      Add virLogSource variables to all source files (Daniel P. Berrange),<br />
      Turn virLogSource into a struct instead of an enum (Daniel P. Berrange),<br />
      Move dtrace probe macros into separate header file (Daniel P. Berrange),<br />
      Refactor code that skips logging of error messages (Daniel P. Berrange),<br />
      Reduce performance overhead of the global log buffer (Daniel P. Berrange),<br />
      qemuDomainSetInterfaceParameters: Allow bandwidth clear out (Michal Privoznik),<br />
      cfg.mk: Fix whitespaces (Martin Kletzander),<br />
      Remove double space in file name comment check (Ján Tomko),<br />
      Explicitly cast some switch parameters to enum (Martin Kletzander),<br />
      Require spaces around equality comparisons (Martin Kletzander),<br />
      Remove duplicate network model characters (Martin Kletzander),<br />
      tests: cleanup object-locking test (Martin Kletzander),<br />
      qemu: agent availability cleanup (Martin Kletzander),<br />
      virsh: Prohibit virConnectOpen* functions in virsh (Martin Kletzander),<br />
      virsh: Add keepalive in new vshConnect function (Martin Kletzander),<br />
      virt-aa-helper: handle 9pfs (Felix Geyer),<br />
      Give virNWFilterVarCombIterNext saner semantics (Daniel P. Berrange),<br />
      bhyve: fix hostbridge device command generation (Roman Bogorodskiy),<br />
      bhyve: add support for virtio block devices (Roman Bogorodskiy),<br />
      Enforce attribute check of the virRegister functions (Pavel Hrdina),<br />
      daemon: Introduce max_anonymous_clients (Michal Privoznik),<br />
      virNetServer: Introduce unauth clients counter (Michal Privoznik),<br />
      datatypes: Fix comments (Michael Chapman),<br />
      bhyve: implement nodeGetInfo() (Roman Bogorodskiy),<br />
      Add parameter to wait for lock in file locking APIs (Nehal J Wani),<br />
      spec: move some dirs into appropriate subpackages (Michael Chapman),<br />
      build: detect/prohibit hardcoded XML indent in syntax-check (Laine Stump),<br />
      conf: eliminate hardcoded indentation in all remaining xml (Laine Stump),<br />
      qemu: elminate hardcoded indent in capabilities cache XML (Laine Stump),<br />
      util: eliminate hardcoded indent in virConnectSysInfo formatting (Laine Stump),<br />
      qemu: eliminate hardcoded indent from migration cookie xml (Laine Stump),<br />
      virsh: eliminate hardcoded indentation in xml generated for commands (Laine Stump),<br />
      conf: eliminate hardcoded indent in volume/pool xml (Laine Stump),<br />
      conf: eliminate hardcoded indentation in node device xml (Laine Stump),<br />
      conf: eliminate hardcoded indentation in capabilities xml (Laine Stump),<br />
      conf: eliminate hardcoded indentation in nwfilter xml (Laine Stump),<br />
      conf: eliminate outmoded/odd indent method from interface xml (Laine Stump),<br />
      conf: eliminate hardcoded indent from network xml (Laine Stump),<br />
      conf: eliminate hardcoded indent from domain snapshot xml (Laine Stump),<br />
      conf: eliminate hardcoded indent from domain xml (Laine Stump),<br />
      nwfilter: Add ARP src/dst IP mask for ebtables ARP (Stefan Berger),<br />
      hostdev: add virObject field to virHostdevManager struct (Jim Fehlig),<br />
      Make ABI stability issue easier to debug (Jiri Denemark),<br />
      qemu: Forbid "sgio" support for SCSI generic host device (Osier Yang),<br />
      add pci passthrough to libxl driver (Chunyan Liu),<br />
      add hostdev pci backend type for xen (Chunyan Liu),<br />
      change lxc_hostdev.c to use virhostdev common library APIs (Chunyan Liu),<br />
      add unit test for new virhostdev common library (Chunyan Liu),<br />
      Add parameter checks/annotations to hostdev APIs (Chunyan Liu),<br />
      add 3 wrapper functions for prepare/reattach/update domain hostdevs (Chunyan Liu),<br />
      improve virHostdevUpdate* parameters to make it more widely used (Chunyan Liu),<br />
      Capitalize USB, PCI and SCSI in hostdev variables (Daniel P. Berrange),<br />
      Remove redundant duplicated 'Hostdev' string method names (Daniel P. Berrange),<br />
      Capitalize USB, PCI and SCSI in hostdev methods (Chunyan Liu),<br />
      Fixed const-ness of parameters in netdev/hostdev code (Daniel P. Berrange),<br />
      improve parameter name to let it more meaningful (Chunyan Liu),<br />
      move virHostdevNodeDevice* to virhostdev.c (Chunyan Liu),<br />
      extract general code of NodeDeviceReset (Chunyan Liu),<br />
      extract general code of NodeDeviceReAttach (Chunyan Liu),<br />
      extract general code of NodeDeviceDetach (Chunyan Liu),<br />
      move virHostdevReAttachHostScsiDevices to virhostdev.c (Chunyan Liu),<br />
      pass driver name as parameter to virHostdevReAttachScciHostdevs (Chunyan Liu),<br />
      extract general code from qemuDomainReAttachHostScsiDevices (Chunyan Liu),<br />
      move virHostdevReAttachUsbHostdevs to virhostdev.c (Chunyan Liu),<br />
      pass driver name as paramter to virHostdevReAttachUsbHostdevs (Chunyan Liu),<br />
      extract general code from qemuDomainReAttachHostUsbDevices (Chunyan Liu),<br />
      move virHostdevPrepareHostSCSIDevices to virhostdev.c (Chunyan Liu),<br />
      pass driver name as parameter to virHostdevPrepareSCSIDevices (Chunyan Liu),<br />
      extract general code from qemuPrepareHostSCSIDevices (Chunyan Liu),<br />
      move virHostdevPrepareHostUSBDevices to virhostdev.c (Chunyan Liu),<br />
      pass driver name to virHostdevPrepareUSBDevices (Chunyan Liu),<br />
      rename qemu*USBDevices to virHostdev*USBDevices (Chunyan Liu),<br />
      extract general code from qemuPrepareHostUSBDevices (Chunyan Liu),<br />
      move virHostdevUpdate* functions to virhostdev.c (Chunyan Liu),<br />
      pass driver_name as parameter of virHostdevUpdate*Hostdevs functions (Chunyan Liu),<br />
      extract general code from qemuUpdateActiveScsiHostdevs (Chunyan Liu),<br />
      extract general code from qemuUpdateActiveUsbHostdevs (Chunyan Liu),<br />
      extract general code from qemuUpdateActivePciHostdevs (Chunyan Liu),<br />
      move virHostdevPrepare(ReAttach)PCIDevices to virhostdev.c (Chunyan Liu),<br />
      rename qemuReAttachPciDevice to virHostdevReAttachPciDevice (Daniel P. Berrange),<br />
      Conditionally wait for kvm_assigned_device cleanup (Chunyan Liu),<br />
      pass driver name as a parameter to virHostdevReAttachPCIDevices (Chunyan Liu),<br />
      extract general code from qemuDomainReAttachHostdevDevices (Chunyan Liu),<br />
      pass driver name as a parameter to virHostdevPrepareHostdevPCIDevices (Chunyan Liu),<br />
      rename qemuGet*PciHostDeviceList to virHostdevGet*PciHostDeviceList (Chunyan Liu),<br />
      rename qemu*NetConfigRestore/Replace to virHostdevNetConfigRestore/Replace (Chunyan Liu),<br />
      extract general code from qemuPrepareHostdevPCIDevices (Chunyan Liu),<br />
      qemu_hostdev: move netconfig file location to virhostdev stateDir (Chunyan Liu),<br />
      qemu_hostdev: move ColdBoot as a flag (Chunyan Liu),<br />
      qemu_hostdev: move cfg-&gt;relaxedACS as a flag (Chunyan Liu),<br />
      lxc: use general virhostdev lists instead of its own (Chunyan Liu),<br />
      qemu: use general virhostdev lists instead of its own (Chunyan Liu),<br />
      qemu: remove functions used internally only from qemu_hostdev.h (Chunyan Liu),<br />
      qemu: reuse hostdev interfaces to avoid duplicate (Chunyan Liu),<br />
      update qemuPrepareHostUSBDevices parameters to keep consistency (Chunyan Liu),<br />
      virhostdev: use virObject to virHostdevManager to keep reference (Chunyan Liu),<br />
      Introduce vircommandpriv.h for functions used by tests (Ján Tomko),<br />
      Use size_t for ndevice in pool source definition (Ján Tomko),<br />
      Introduce virStoragePoolSourceDeviceClear (Ján Tomko),<br />
      Change virStorageBackendISCSISession 'probe' arg to bool (Ján Tomko),<br />
      qemu: don't munge user input during block commit (Eric Blake),<br />
      iptables: don't log command probe failures (Eric Blake),<br />
      libxl: support sexpr in native to XML conversion (Jim Fehlig),<br />
      Remove unused ebtablesRemoveForwardPolicyReject method (Daniel P. Berrange),<br />
      Remove worthless ebtRules data structure (Daniel P. Berrange),<br />
      Remove data structure holding list of ebtables rules (Daniel P. Berrange),<br />
      Remove unused variables from ebtablesContext (Daniel P. Berrange),<br />
      Make ebtablesForwardPolicyReject static (Daniel P. Berrange),<br />
      Remove decl of method which doesn't exist in virebtables.h (Daniel P. Berrange),<br />
      Remove many decls from bridge driver platform header (Daniel P. Berrange),<br />
      Cache result of QEMU capabilities extraction (Daniel P. Berrange),<br />
      Change QEMU capabilities cache to check ctime instead of mtime (Daniel P. Berrange),<br />
      Add helper APIs to track if libvirtd or loadable modules have changed (Daniel P. Berrange),<br />
      virSecurityDACSetSecurityImageLabel: Unmark @def as unused (Michal Privoznik),<br />
      tests: Distribute securityselinuxhelperdata (Jiri Denemark),<br />
      Convert lock driver plugins to use new crypto APIs (Daniel P. Berrange),<br />
      Add helper APIs for generating cryptographic hashes (Daniel P. Berrange),<br />
      Change file names in comments to match the files they are in (Ján Tomko),<br />
      Wildcard ignore tests/*test instead of listing every one (Daniel P. Berrange),<br />
      src/xenxs: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/xen: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/util: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/test: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/storage: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/rpc: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/qemu: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/phyp: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/parallels: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/openvz: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/nwfilter: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      src/lxc/: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      conf: Utilize more of VIR_(APPEND|INSERT|DELETE)_ELEMENT (Michal Privoznik),<br />
      virsh: Sort options alphabetically (Martin Kletzander),<br />
      tests: Fix SELinux tests in VPATH build (Jiri Denemark),<br />
      virscsi: Introduce virSCSIDeviceUsedByInfoFree (John Ferlan),<br />
      tests: Test virIdentityGetSystem (Michael Chapman),<br />
      tests: SELinux tests do not need to be skipped (Michael Chapman),<br />
      tests: Flesh out securityselinuxhelper (Michael Chapman),<br />
      spec: Let translations be properly updated (Jiri Denemark),<br />
      datatypes: update comments of Dispose functions (Michael Chapman),<br />
      qemu: monitor: Provide more information in generic block job error (Peter Krempa),<br />
      storage: Don't lie about path used to look up in error message (Peter Krempa),<br />
      storage: Avoid mangling paths of non-local filesystems when looking up (Peter Krempa),<br />
      storage: Use cleanup label instead of out (Peter Krempa),<br />
      virsh: volume: Fix lookup of volumes to provide better error messages (Peter Krempa),<br />
      add virhostdev files to maintain global state of host devices (Chunyan Liu),<br />
      add 'driver' info to used_by (Chunyan Liu),<br />
      apparmor: handle "none" type (Cédric Bosdonnat),<br />
      add support for apparmor in lxc-enter-namespace (Cédric Bosdonnat),<br />
      apparmor: add debug traces when changing profile. (Cédric Bosdonnat),<br />
      Make sure apparmor is started before libvirtd (Cédric Bosdonnat),<br />
      LXC driver: generate apparmor profiles for guests (Cédric Bosdonnat),<br />
      qemu: monitor: Fix error message and comment when getting cpu info (Peter Krempa),<br />
      qemu: snapshot: Use better check when reverting external snapshots (Peter Krempa),<br />
      qemuBuildNicDevStr: Adapt to new advisory on multiqueue (Michal Privoznik),<br />
      Check if systemd is running before creating machines (Ján Tomko),<br />
      Split out most of virDBusIsServiceEnabled (Ján Tomko),<br />
      Don't always skip virportallocatortest (Ján Tomko),<br />
      tests: Create privileged driver config in qemuxml2argvtest (Martin Kletzander),<br />
      build: Include sys/wait.h in commandtest.c (Ján Tomko),<br />
      nwfilter: Display the pcap errror message (Stefan Berger),<br />
      nwfilter: Cap the poll timeout in the DHCP Snooping code (Stefan Berger),<br />
      virsh: report exit status of failed lxc-enter-namespace (Eric Blake),<br />
      virt-login-shell: saner exit value (Eric Blake),<br />
      virt-login-shell: use single instead of double fork (Eric Blake),<br />
      virFork: simplify semantics (Eric Blake),<br />
      util: make it easier to grab only regular command exit (Eric Blake),<br />
      util: make it easier to grab only regular process exit (Eric Blake),<br />
      util: preserve exit status from mount namespace callback (Eric Blake),<br />
      util: make it easier to reflect child exit status (Eric Blake),<br />
      virFork: give specific status on failure prior to exec (Eric Blake),<br />
      nwfilter: make ignoring non-zero status easier to follow (Eric Blake),<br />
      qemu: Implement a stub cpuArchDriver.baseline() handler for arm (Oleg Strikov),<br />
      Fix indentation in virsystemdmock (Ján Tomko),<br />
      Replace space with a tab in the Makefile (Ján Tomko),<br />
      Add a test for virUSBDeviceList functions (Ján Tomko),<br />
      Add tests for virUSBDeviceFind functions (Ján Tomko),<br />
      Generate a unique journald log for QEMU capabilities failure (Daniel P. Berrange),<br />
      Bump version to 1.2.3 for new dev cycle (Michal Privoznik)<br />
      </li><li> Cleanups:<br />
      util: remove useless comment for virCgroupMoveTask in vircgroup.c (Hongwei Bi),<br />
      Don't leave empty first line in C source files (Martin Kletzander)<br />
      </li></ul>
        <h3>1.2.2: Mar 2 2014</h3>
        <ul><li>Features:<br />
      bhyve: add a basic driver (Roman Bogorodskiy),<br />
      add LXC from native conversion tool (Cédric Bosdonnat),<br />
      vbox: add support for v4.2.20+ and v4.3.4+ (Jean-Baptiste Rouault),<br />
      Introduce Libvirt Wireshark dissector (Yuto KAWAMURA)<br />
      </li><li>Security:<br />
      CVE-2013-6456: Avoid unsafe use of /proc/$PID/root in LXC hotunplug code (Daniel P. Berrange),<br />
      CVE-2013-6456: Avoid unsafe use of /proc/$PID/root in LXC chardev hostdev hotplug (Daniel P. Berrange),<br />
      CVE-2013-6456: Avoid unsafe use of /proc/$PID/root in LXC block hostdev hotplug (Daniel P. Berrange),<br />
      CVE-2013-6456: Avoid unsafe use of /proc/$PID/root in LXC USB hotplug (Daniel P. Berrange),<br />
      CVE-2013-6456: Avoid unsafe use of /proc/$PID/root in LXC disk hotplug (Daniel P. Berrange),<br />
      CVE-2013-6456: Avoid unsafe use of /proc/$PID/root in LXC shutdown/reboot code (Eric Blake)<br />
      </li><li>Documentation:<br />
      bhyve: add basic documentation (Roman Bogorodskiy),<br />
      Add docs about use of systemd journal for logging (Daniel P. Berrange),<br />
      Auto-generate the table of contents in logging doc (Daniel P. Berrange),<br />
      Fix heading level in logging docs (Daniel P. Berrange),<br />
      Document the keyboard as a valid input type (Ján Tomko),<br />
      bandwidth: Adjust documentation (John Ferlan),<br />
      remove &lt;auth&gt; from secret XML format (Ján Tomko),<br />
      LXC: added some doc on domxml-from-native with mention of limitations (Cédric Bosdonnat),<br />
      libxl: fix libxlDoDomainSave documentation (Jim Fehlig),<br />
      grammar fixes in formatdomain (Chen Hanxiao),<br />
      maint: fix grammar in conf file (Eric Blake),<br />
      Fix minor typo in governance doc (Justin Clift),<br />
      Write up the project governance process (Daniel P. Berrange),<br />
      man: shm-merge-across-nodes is optional (Ján Tomko),<br />
      docs/page.xls: remove unnecessary namespace attribute (Pavel Hrdina),<br />
      add a permalink to html headers (Dan Kenigsberg),<br />
      storage: Add document for possible problem on volume detection (Osier Yang),<br />
      Add "note" for node-memory-tune (Osier Yang),<br />
      Improve the document for nodesuspend (Osier Yang),<br />
      refer to the correct event ID for DomainEventIOErrorReasonCallback (Claudio Bley),<br />
      Add sample output of Wireshark dissector (Yuto KAWAMURA),<br />
      Add missing space in &lt;clock&gt; documentation (Christophe Fergeau)<br />
      </li><li>Portability:<br />
      build: skip virportallocatortest on cygwin (Eric Blake),<br />
      build: ignore cygwin toolchain droppings (Eric Blake),<br />
      build: avoid ld_preload tests on mingw (Eric Blake),<br />
      build: fix cgroups on non-Linux (Eric Blake),<br />
      build: fix build on 32-bit hosts (Eric Blake),<br />
      maint: update to latest gnulib, for older autoconf (Eric Blake),<br />
      Fix build of portallocator on mingw (Ján Tomko),<br />
      lxc: Don't shadow global symbol "link" (Peter Krempa),<br />
      storage: Fix build with older compilers afeter gluster snapshot series (Peter Krempa),<br />
      spec: add missing dep of libvirt-daemon-config-network (Thierry Parmentelat),<br />
      spec: require libvirt-daemon-driver-interface only when built (Thierry Parmentelat),<br />
      Fixed build with clang. (Cédric Bosdonnat),<br />
      Rename 'index' in virCapabilitiesGetCpusForNode (Ján Tomko),<br />
      qemuxml2argvmock: Mock time() on non-linux platforms too (Michal Privoznik),<br />
      build: Fix 'make rpm' in VPATH with wireshark (Martin Kletzander),<br />
      Remove windows thread implementation in favour of pthreads (Daniel P. Berrange),<br />
      Fix pthread_sigmask check for mingw32 without winpthreads (Daniel P. Berrange),<br />
      Skip check-augeas-lockd when QEMU is disabled (Daniel P. Berrange),<br />
      maint: add configure checks for BSD CPU affinity (Roman Bogorodskiy),<br />
      BSD: implement virProcess{Get,Set}Affinity (Roman Bogorodskiy),<br />
      tests: Fix PCI test data filenames for Windows (Matthias Bolte),<br />
      wireshark: Fix VPATH build (Jiri Denemark),<br />
      Honour prefix in wireshark install dir (Daniel P. Berrange),<br />
      Use AC_PATH_PROG to search for dmidecode (Roman Bogorodskiy)<br />
      </li><li>Bug fixes:<br />
      bhyve: defined domains should be persistent (Roman Bogorodskiy),<br />
      Fix journald PRIORITY values (Daniel P. Berrange),<br />
      spec: Fix braces around macros (Peter Krempa),<br />
      spec: Use correct versions of libgfapi in RHEL builds (Peter Krempa),<br />
      network: unplug bandwidth and call networkRunHook only when appropriate (Laine Stump),<br />
      network: don't even call networkRunHook if there is no network (Laine Stump),<br />
      Fix memory leak in virSCSIDeviceListDel() (Nehal J Wani),<br />
      libxl: queue domain event earlier in shutdown handler (Jim Fehlig),<br />
      virsh: mark CPU usage field names as translatable (Ján Tomko),<br />
      virsh: initialize str to NULL to solve a build issue (Chen Hanxiao),<br />
      virsh: Don't leak buffer if GetFDs fails in cmdCreate (Ján Tomko),<br />
      libvirt-guests: Wait for libvirtd to initialize (Michal Privoznik),<br />
      virSystemdCreateMachine: Set dependencies for slices (Michal Privoznik),<br />
      Ignore additional fields in iscsiadm output (Ján Tomko),<br />
      libxl: always use libxlVmCleanupJob in shutdown thread (Jim Fehlig),<br />
      qemu: adjust maxmem/maxvcpu computation (Eric Blake),<br />
      Fix multiple bugs in LXC domainMemoryStats driver (Daniel P. Berrange),<br />
      Fix misspelled cpuacct.usage_percpu in cgroup mock. (Thorsten Behrens),<br />
      virsh: fix memleak when starting a guest with invalid fd (Jincheng Miao),<br />
      networkRunHook: Run hook only if possible (Michal Privoznik),<br />
      bridge_driver.h: Fix build --without-network (Michal Privoznik),<br />
      Fix conflicting types of virInitctlSetRunLevel (Ján Tomko),<br />
      Fix reset of cgroup when detaching USB device from LXC guests (Daniel P. Berrange),<br />
      Fix path used for USB device attach with LXC (Daniel P. Berrange),<br />
      Don't block use of USB with containers (Daniel P. Berrange),<br />
      storage: gluster: Don't leak private data when storage file init fails (Peter Krempa),<br />
      storage: handle NULL return from virGetStorageVol (Michael Chapman),<br />
      Fix leaks in vircapstest (Ján Tomko),<br />
      AppArmor: Fix the place where the template should be installed (Cédric Bosdonnat),<br />
      Libvirt lose sheepdogs volumes on pool refresh or restart. When restarting sheepdog pool, all volumes are missing. This patch add automatically all volume from the added pool. (Joel SIMOES),<br />
      maint: fix line numbers in check-aclrules reports (Yuri Myasoedov),<br />
      qemu: Use correct permissions when determining the image chain (Peter Krempa),<br />
      virpci: Resolve coverity issues (John Ferlan),<br />
      qemu: keep pre-migration domain state after failed migration (Martin Kletzander),<br />
      qemu: Fix crash in virDomainMemoryStats with old qemu (Jiri Denemark),<br />
      network: disallow &lt;bandwidth&gt;/&lt;mac&gt; for bridged/macvtap/hostdev networks (Laine Stump),<br />
      Honor blacklist for modprobe command (John Ferlan),<br />
      qemu: be sure we're using the updated value of backend during hotplug (Laine Stump),<br />
      Resolve Coverity dead_error_begin (John Ferlan),<br />
      qemu: Fix the error message for scsi host device's shareable checking (Osier Yang),<br />
      xen: fix parsing xend http response (Jim Fehlig),<br />
      storage: Fix the memory leak (Osier Yang),<br />
      Fix buffer size in linuxNodeGetCPUstats (Bing Bu Cao),<br />
      util: Correct the NUMA node range checking (Osier Yang),<br />
      qemu: Avoid crash in qemuDiskGetActualType (Peter Krempa),<br />
      linuxNodeGetCPUStats: Correctly handle cpu prefix (Bing Bu Cao),<br />
      qemu: snapshot: Forbid snapshots when backing is a scsi passthrough disk (Peter Krempa),<br />
      qemu: snapshot: Avoid libvirtd crash when qemu crashes while snapshotting (Peter Krempa),<br />
      lxc: Fix coverity (Martin Kletzander),<br />
      qemu: Don't detach devices if passthrough doesn't work (Jincheng Miao),<br />
      pci: Fix failure paths in detach (Jiri Denemark),<br />
      virSecuritySELinuxSetFileconHelper: Don't fail on read-only NFS (Michal Privoznik),<br />
      Fix possible memory leak in virsh-domain-monitor.c in cmdDomblklist (Pavel Hrdina)<br />
      </li><li>Improvements:<br />
      virsh: add --all flag to 'event' command (Eric Blake),<br />
      virsh: support remaining domain events (Eric Blake),<br />
      bhyve: support domain undefine (Roman Bogorodskiy),<br />
      Add comments describing the different log sources (Daniel P. Berrange),<br />
      Include error domain and code in log messages from errors (Daniel P. Berrange),<br />
      Send virLogMetadata fields onto the journal (Daniel P. Berrange),<br />
      qemu: Enable 'host-passthrough' cpu mode for arm (Oleg Strikov),<br />
      domblkstat: Produce error message that at least sounds like English (Michal Privoznik),<br />
      virDomainBlockStats(Flags): Produce saner error message on empty disk path (Michal Privoznik),<br />
      tests: avoid littering /tmp (Eric Blake),<br />
      sanlock: Truncate domain names longer than SANLK_NAME_LEN (Jiri Denemark),<br />
      maint: Fix minor typo (unkown) (Yuri Chornoivan),<br />
      libxl: Recognise ARM architectures (Ian Campbell),<br />
      virsh: Honour -q in domblklist, vcpupin and emulatorpin (Michal Privoznik),<br />
      spec: make systemd_daemon usage configurable (Eric Blake),<br />
      spec: require device-mapper-devel for storage-disk (Eric Blake),<br />
      spec: explicitly avoid bhyve on Linux (Eric Blake),<br />
      build: use --with-systemd-daemon as configure option (Eric Blake),<br />
      virNetDevVethCreate: Serialize callers (Michal Privoznik),<br />
      network: include plugged interface XML in "plugged" network hook (Laine Stump),<br />
      conf: output actual netdev status in &lt;interface&gt; XML (Laine Stump),<br />
      conf: new function virDomainActualNetDefContentsFormat (Laine Stump),<br />
      conf: re-situate &lt;bandwidth&gt; element in &lt;interface&gt; (Laine Stump),<br />
      conf: make virDomainNetDefFormat a public function (Laine Stump),<br />
      conf: handle null pointer in virNetDevVlanFormat (Laine Stump),<br />
      conf: clarify what is returned for actual bandwidth and vlan (Laine Stump),<br />
      rbd: Set timeout options for librados (Wido den Hollander),<br />
      rbd: Include return statuses from librados/librbd in logging (Wido den Hollander),<br />
      virsh: kill over-engineered asprintf failure recovery (Eric Blake),<br />
      virsh: use more compact VIR_ENUM_IMPL (Eric Blake),<br />
      libxl: handle on_crash coredump actions (Jim Fehlig),<br />
      libxl: add dump dir to libxlDriverConfig object (Jim Fehlig),<br />
      libxl: honor domain lifecycle event configuration (Jim Fehlig),<br />
      Ensure systemd cgroup ownership is delegated to container with userns (Richard Weinberger),<br />
      bhyve: implement node information reporting (Roman Bogorodskiy),<br />
      Add virStringReplace method for substring replacement (Daniel P. Berrange),<br />
      Add virStringSearch method for regex matching (Manuel VIVES),<br />
      virNetServerRun: Notify systemd that we're accepting clients (Michal Privoznik),<br />
      Add a stub for virCgroupGetDomainTotalCpuStats (Ján Tomko),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      virsh: add net-event command (Eric Blake),<br />
      virsh: add event command, for lifecycle events (Eric Blake),<br />
      virsh: common code for waiting for an event (Eric Blake),<br />
      virsh: common code for parsing --seconds (Eric Blake),<br />
      libxl: queue shutdown event on domain shutdown (Jim Fehlig),<br />
      Rename virDomainGetRootFilesystem to virDomainGetFilesystemForTarget (Daniel P. Berrange),<br />
      Introduce new OOM testing support (Daniel P. Berrange),<br />
      Add unit test for virCgroupGetPercpuStats. (Thorsten Behrens),<br />
      Add unit test for virCgroupGetMemoryUsage. (Thorsten Behrens),<br />
      Add unit test for virCgroupGetBlkioIo*Serviced (Thorsten Behrens),<br />
      Widening API change - accept empty path for virDomainBlockStats (Thorsten Behrens),<br />
      Implement lxcDomainBlockStats* for lxc driver (Thorsten Behrens),<br />
      Implement domainGetCPUStats for lxc driver. (Thorsten Behrens),<br />
      Make qemuGetDomainTotalCPUStats a virCgroup function. (Thorsten Behrens),<br />
      Implement domainMemoryStats API slot for LXC driver. (Thorsten Behrens),<br />
      Add util virCgroupGetBlkioIo*Serviced methods. (Thorsten Behrens),<br />
      lxc: Add destroy support for suspended domains (Richard Weinberger),<br />
      libxl: use job functions in libxlDomainSetSchedulerParametersFlags (Jim Fehlig),<br />
      libxl: use job functions in libxlDomainSetAutostart (Jim Fehlig),<br />
      libxl: use job functions in device attach and detach functions (Jim Fehlig),<br />
      libxl: use job functions in vcpu set and pin functions (Jim Fehlig),<br />
      libxl: use job functions in libxlDomainCoreDump (Jim Fehlig),<br />
      libxl: use job functions in domain save operations (Jim Fehlig),<br />
      libxl: use job functions when cleaning up a domain (Jim Fehlig),<br />
      libxl: use job functions in libxlDomain{Suspend,Resume} (Jim Fehlig),<br />
      libxl: use job functions in libxlDomainSetMemoryFlags (Jim Fehlig),<br />
      libxl: use job functions in libxlVmStart (Jim Fehlig),<br />
      libxl: Add job support to libxl driver (Jim Fehlig),<br />
      libxl: remove libxlVmReap function (Jim Fehlig),<br />
      libxl: always set vm id to -1 on shutdown (Jim Fehlig),<br />
      qemu: Use virtio network device for aarch64/virt (Oleg Strikov),<br />
      Add a default USB keyboard and USB mouse for PPC64 (Li Zhang),<br />
      xen: format xen config for USB keyboard (Li Zhang),<br />
      qemu: format qemu command line for USB keyboard (Li Zhang),<br />
      qemu: Add USB keyboard capability (Li Zhang),<br />
      conf: Remove the implicit PS2 devices for non-X86 platforms (Li Zhang),<br />
      conf: Add keyboard input device type (Li Zhang),<br />
      conf: Add one interface to add default input devices (Li Zhang),<br />
      network: Taint networks that are using hook script (Michal Privoznik),<br />
      network: Introduce network hooks (Michal Privoznik),<br />
      network_conf: Expose virNetworkDefFormatInternal (Michal Privoznik),<br />
      Add helper for running code in separate namespaces (Daniel P. Berrange),<br />
      Add virFileMakeParentPath helper function (Daniel P. Berrange),<br />
      Move check for cgroup devices ACL upfront in LXC hotplug (Daniel P. Berrange),<br />
      Disks are always block devices, never character devices (Daniel P. Berrange),<br />
      Record hotplugged USB device in LXC live guest config (Daniel P. Berrange),<br />
      qemu: Implement VIR_DOMAIN_TAINT_HOOK (Michal Privoznik),<br />
      virDomainTaintFlags: Introduce VIR_DOMAIN_TAINT_HOOK (Michal Privoznik),<br />
      Add tests for secret XML parsing (Ján Tomko),<br />
      Forgot to add lxcconf2xmldata to dist. (Cédric Bosdonnat),<br />
      Support IPv6 in port allocator (Ján Tomko),<br />
      Split out bind() from virPortAllocatorAcquire (Ján Tomko),<br />
      qemu: snapshot: Add support for external active snapshots on gluster (Peter Krempa),<br />
      qemu: snapshot: Use new APIs to detect presence of existing storage files (Peter Krempa),<br />
      qemu: Switch snapshot deletion to the new API functions (Peter Krempa),<br />
      storage: Add storage file backends for gluster (Peter Krempa),<br />
      storage: add file functions for local and block files (Peter Krempa),<br />
      storage: Add file storage APIs in the default storage driver (Peter Krempa),<br />
      conf: Move qemuSnapshotDiskGetActualType to virDomainSnapshotDiskGetActualType (Peter Krempa),<br />
      conf: Move qemuDiskGetActualType to virDomainDiskGetActualType (Peter Krempa),<br />
      spec: add missing dep of libvirt-daemon-config-nwfilter (Eric Blake),<br />
      lxc from native: removed now remaining useless line (Cédric Bosdonnat),<br />
      Fix stream related spelling mistakes (Philipp Hahn),<br />
      LXC from native: convert blkio throttle config (Cédric Bosdonnat),<br />
      LXC from native: map vlan network type (Cédric Bosdonnat),<br />
      LXC from native: map block filesystems (Cédric Bosdonnat),<br />
      LXC from native: map lxc.arch to /domain/os/type@arch (Cédric Bosdonnat),<br />
      LXC from native: add lxc.cgroup.blkio.* mapping (Cédric Bosdonnat),<br />
      LXC from native: map lxc.cgroup.cpuset.* (Cédric Bosdonnat),<br />
      LXC from native: map lxc.cgroup.cpu.* (Cédric Bosdonnat),<br />
      LXC from native: migrate memory tuning (Cédric Bosdonnat),<br />
      LXC from native: convert lxc.id_map into &lt;idmap&gt; (Cédric Bosdonnat),<br />
      LXC from native: convert macvlan network configuration (Cédric Bosdonnat),<br />
      LXC from native: convert lxc.tty to console devices (Cédric Bosdonnat),<br />
      LXC from native: convert phys network types to net hostdev devices (Cédric Bosdonnat),<br />
      LXC from native: migrate veth network configuration (Cédric Bosdonnat),<br />
      LXC from native: implement no network conversion (Cédric Bosdonnat),<br />
      LXC from native: migrate fstab and lxc.mount.entry (Cédric Bosdonnat),<br />
      LXC from native: import rootfs (Cédric Bosdonnat),<br />
      LXC driver: started implementing connectDomainXMLFromNative (Cédric Bosdonnat),<br />
      Improve virConf parse to handle LXC config format (Cédric Bosdonnat),<br />
      event: pass reason for PM events (Eric Blake),<br />
      event: convert remaining domain events to new style (Eric Blake),<br />
      event: client RPC protocol tweaks for domain lifecycle events (Eric Blake),<br />
      event: prepare client to track domain callbackID (Eric Blake),<br />
      event: server RPC protocol tweaks for domain lifecycle events (Eric Blake),<br />
      event: dynamically manage server-side RPC domain events (Eric Blake),<br />
      qemu: Implement a stub cpuArchDriver.baseline() handler for aarch64 (Oleg Strikov),<br />
      libxl: register for domain events immediately after creation (Jim Fehlig),<br />
      libxl: rename libxlCreateDomEvents to libxlDomEventsRegister (Jim Fehlig),<br />
      vircapstest: Introduce virCapabilitiesGetCpusForNodemask test (Pradipta Kr. Banerjee),<br />
      Handle non-sequential NUMA node numbers (Pradipta Kr. Banerjee),<br />
      storage: gluster: Set volume metadata in a separate function (Peter Krempa),<br />
      qemu: introduce spiceport chardev backend (Martin Kletzander),<br />
      qemu: remove pointless condition (Martin Kletzander),<br />
      qemu: rework '-serial none' (Martin Kletzander),<br />
      conf: introduce spiceport chardev backend (Martin Kletzander),<br />
      rbd: Use rbd_create3 to create RBD format 2 images by default (Wido den Hollander),<br />
      build: correctly check for SOICGIFVLAN GET_VLAN_VID_CMD command (Laine Stump),<br />
      virNetworkLoadState: Disallow mangled 'floor' element (Michal Privoznik),<br />
      networkStartNetwork: Be more verbose (Michal Privoznik),<br />
      qemu: hyperv: Add support for timer enlightenments (Peter Krempa),<br />
      conf: Enforce supported options for certain timers (Peter Krempa),<br />
      schema: Fix guest timer specification schema according to the docs (Peter Krempa),<br />
      apparmor: Improve profiles (Felix Geyer),<br />
      Add glusterfs to VIR_CONNECT_LIST_STORAGE_POOLS_FILTERS_POOL_TYPE (Christophe Fergeau),<br />
      libxl: remove unneeded locking of driver when restoring (Jim Fehlig),<br />
      libxl: improve subprocess handling (Jim Fehlig),<br />
      libxl: handle domain shutdown events in a thread (Jim Fehlig),<br />
      libxl: remove list of timer registrations from libxlDomainObjPrivate (Jim Fehlig),<br />
      libxl: fix leaking libxlDomainObjPrivate (Jim Fehlig),<br />
      qemu_driver: Introduce &lt;filesystem/&gt; support in device attach/detach (Matthieu Coudron),<br />
      virDomainHostdev{Insert,Delete}: Replace VIR_REALLOC_N by VIR_{APPEND,DELETE}_ELEMENT (Matthieu Coudron),<br />
      qemuxml2argvtest: Set timezone (Michal Privoznik),<br />
      virsh: only report filled values in nodecpustats (Ján Tomko),<br />
      BSD: implement nodeGetCPUStats (Roman Bogorodskiy),<br />
      qemu: blockjob: Print correct file name in error message (Peter Krempa),<br />
      maint: Change the text of the NULLSTR() macro to "&lt;null&gt;" (Peter Krempa),<br />
      qemuxml2argvtest: Test localtime clock basis (Michal Privoznik),<br />
      qemuBuildClockArgStr: Allow localtime clock basis (Michal Privoznik),<br />
      Generate a valid imagelabel even for type 'none' (Ján Tomko),<br />
      event: move event filtering to daemon (regression fix) (Eric Blake),<br />
      rpm: create libvirt-wireshark sub-package (Eric Blake),<br />
      tests: Add test for new virkmod functions (John Ferlan),<br />
      utils: Introduce functions for kernel module manipulation (John Ferlan),<br />
      network: change default of forwardPlainNames to 'yes' (Laine Stump),<br />
      network: only prevent forwarding of DNS requests for unqualified names (Laine Stump),<br />
      virnetdevbandwidthtest: Link with libxml2 (Michal Privoznik),<br />
      spice: don't force user to specify spicevmc channel (Martin Kletzander),<br />
      virnetdevbandwidthtest: Introduce some more tests (Michal Privoznik),<br />
      virnetdevbandwidthtest: fix hard coded /sbin/tc (Cédric Bosdonnat),<br />
      Push nwfilter update locking up to top level (Daniel P. Berrange),<br />
      Add a read/write lock implementation (Daniel P. Berrange),<br />
      tests: Modify the scsi util tests (Osier Yang),<br />
      util: Accept test data path for scsi device's sg_path (Osier Yang),<br />
      tests: Add tests for scsi utils (Osier Yang),<br />
      util: Add one argument for several scsi utils (Osier Yang),<br />
      qemu: Don't fail if the SCSI host device is shareable between domains (Osier Yang),<br />
      virnetdevbandwidthtest: Introduce testVirNetDevBandwidthSet (Michal Privoznik),<br />
      virCommand: Introduce virCommandSetDryRun (Michal Privoznik),<br />
      snapshot: Add support for specifying snapshot disk backing type (Peter Krempa),<br />
      tests: Add more tests for virConnectBaselineCPU (Jiri Denemark),<br />
      cpu: Try to use source CPU model in virConnectBaselineCPU (Jiri Denemark),<br />
      cpu: Fix VIR_CONNECT_BASELINE_CPU_EXPAND_FEATURES (Jiri Denemark),<br />
      tests: Better support for VIR_CONNECT_BASELINE_CPU_EXPAND_FEATURES (Jiri Denemark),<br />
      Reword error message for oversized cpu time fields (Ján Tomko),<br />
      Simplify linuxNodeGetCPUStats (Ján Tomko),<br />
      Add hw random number generator (/dev/hwrng) to cgroup ACL (Pradipta Kr. Banerjee),<br />
      tests: Introduce virnetdevbandwidthtest (Michal Privoznik),<br />
      Add test for linuxNodeGetCPUStats (Ján Tomko),<br />
      Move test-local declarations to nodeinfopriv.h (Ján Tomko),<br />
      qemu: Enable 'host-passthrough' cpu mode for aarch64 (Oleg Strikov),<br />
      Block info query: Add check for transient domain (John Ferlan),<br />
      maint: update to latest gnulib, for mingw improvements (Eric Blake),<br />
      util: Add "shareable" field for virSCSIDevice struct (Osier Yang),<br />
      storage: Fix autostart of pool with "fc_host" type adapter (Osier Yang),<br />
      api: require write permission for guest agent interaction (Eric Blake),<br />
      virtlockd: make re-exec more robust (Michael Chapman),<br />
      build: add $(prefix) to SYSTEMD_UNIT_DIR (Laine Stump),<br />
      spice: expose the QEMU disable file transfer option (Francesco Romani),<br />
      spice: detect if qemu can disable file transfer (Francesco Romani),<br />
      lxc: allow to setup throttle blkio cgroup through virsh (Gao feng),<br />
      Add test for transient disk support in VMX files (Wout Mertens),<br />
      Make syntax check notice assignments w/o surrounding spaces. (Thorsten Behrens),<br />
      maint: align whitespaces with project conventions. (Thorsten Behrens),<br />
      virpcitest: Test virPCIDeviceDetach failure (Jiri Denemark),<br />
      virpcimock: Add PCI driver which always fails (Jiri Denemark),<br />
      virpcitest: More tests for device detach and reattach (Jiri Denemark),<br />
      virpcimock: Mock /sys/bus/pci/drivers_probe (Jiri Denemark),<br />
      pci: Publish some internal code for virpcitest (Jiri Denemark),<br />
      virpcitest: Show PCI device tested by each test (Jiri Denemark),<br />
      pci: Make reattach work for unbound devices (Jiri Denemark),<br />
      qemu: allow to setup throttle blkio cgroup through virsh (Gao feng),<br />
      virsh: add setting throttle blkio cgroup option to blkiotune (Gao feng),<br />
      blkio: Setting throttle blkio cgroup for domain (Gao feng),<br />
      domain: introduce xml elements for throttle blkio cgroup (Gao feng),<br />
      maint: replace remaining virLib*Error with better names (Eric Blake),<br />
      maint: simplify driver registration at startup (Eric Blake),<br />
      maint: clean up error reporting in migration (Eric Blake),<br />
      maint: don't lose error on canceled migration (Eric Blake),<br />
      maint: avoid nested use of virConnect{Ref,Close} (Eric Blake),<br />
      maint: don't leave garbage on early API exit (Eric Blake),<br />
      qemu: Change the default unix monitor timeout (Martin Kletzander),<br />
      storage: Sheepdog: Separate creating of the volume from building (Peter Krempa),<br />
      storage: RBD: Separate creating of the volume from building (Peter Krempa),<br />
      storage: Support deletion of volumes on gluster pools (Peter Krempa),<br />
      conf: Always use VIR_ERR_CONFIG_UNSUPPORTED on enumFromString() failures (Christophe Fergeau)<br />
      </li><li>Cleanups:<br />
      build-sys: Removed unused variable from configure.ac (Christophe Fergeau),<br />
      qemu: remove memset params array to zero in qemuDomainGetPercpuStats (Gao feng),<br />
      util: Fix the indention (Osier Yang),<br />
      virsh: Fix the string breaking style (Osier Yang)<br />
      </li></ul>
        <h3>1.2.1: Jan 16 2014</h3>
        <ul><li>Security:<br />
      CVE-2014-0028 event: filter global events by domain:getattr ACL (Eric Blake),<br />
      CVE-2014-1447-2 Really don't crash if a connection closes early (Jiri Denemark),<br />
      CVE-2014-1447-1 Don't crash if a connection closes early (Jiri Denemark),<br />
      CVE-2013-6458-4 qemu: Fix job usage in virDomainGetBlockIoTune (Jiri Denemark),<br />
      CVE-2013-6458-3 qemu: Fix job usage in qemuDomainBlockJobImpl (Jiri Denemark),<br />
      CVE-2013-6458-2 qemu: Avoid using stale data in virDomainGetBlockInfo (Jiri Denemark),<br />
      CVE-2013-6458-1 qemu: Do not access stale data in virDomainBlockStats (Jiri Denemark),<br />
      CVE-2013-6457 libxl: avoid crashing if calling `virsh numatune' on inactive domain (Dario Faggioli),<br />
      CVE-2013-6436: fix crash in lxcDomainGetMemoryParameters (Martin Kletzander)<br />
      </li><li>Documentation:<br />
      mention maintenance branches (Eric Blake),<br />
      Fix docs for PMWakeup/PMSuspend callback types (Claudio Bley),<br />
      storage: fs: Fix comment for virStorageBackendFileSystemDelete (Peter Krempa),<br />
      Clarify documentation on possible return values in case of errors (Claudio Bley),<br />
      Add Documentation fields to systemd service files (Guido Günther),<br />
      add LXC multi console command docs and a example (Chen Hanxiao),<br />
      maint: fix comment typos in qemu numa code (Eric Blake),<br />
      return paragraph must be last (Eric Blake),<br />
      fix layout of code snippets (Eric Blake),<br />
      improve event-related documentation (Eric Blake),<br />
      virsh: man: Mention that volumes need to be in storage pool for undefine (Peter Krempa),<br />
      fix address type for disks (Martin Kletzander),<br />
      qemu: fix typo PCi =&gt; PCI (Martin Kletzander),<br />
      tools: Fix virsh connect man page (Jiri Denemark),<br />
      fix a typo in libvirt.h (Chen Hanxiao),<br />
      fix recent typo (Eric Blake),<br />
      Enhance memoryBacking/locked documentation (Jiri Denemark),<br />
      fix double articles bug (Wang Yufei),<br />
      Explicitly declaring that nodedev-destroy only works for vHBA (Osier Yang),<br />
      fix some typos (Eric Blake),<br />
      fix typo in previous patch (Eric Blake),<br />
      fix typos in libvirt.h.in (Chen Hanxiao)<br />
      </li><li>Portability:<br />
      build: fix build on mingw with winpthreads (Eric Blake),<br />
      BSD: implement nodeGetMemoryStats (Roman Bogorodskiy),<br />
      build: fix bootstrap with older autoconf (Eric Blake),<br />
      AArch64: Porting of armv7l conditons to run qemu for aarch64. (Pranavkumar Sawargaonkar),<br />
      vmware: os x support is broken (Denis Kondratenko),<br />
      tests: fix syntax in previous patch (Eric Blake),<br />
      aarch64: Fix sysinfo test. (Richard W.M. Jones),<br />
      aarch64: Disable -fstack-protector. (Richard W.M. Jones),<br />
      virnettlscontexttest fails with GNUTLS 3.0.28 (Cédric Bosdonnat),<br />
      Fix build when default python is python3 (Lénaïc Huard),<br />
      specfile: fix make rpm when with_driver_modules is 1 (Laine Stump),<br />
      object: require maximal alignment in base class (Eric Blake),<br />
      configure: Resolve compile issue in configure.ac (Adam Walters)<br />
      </li><li>Bug Fixes:<br />
      qemu: Avoid operations on NULL monitor if VM fails early (Peter Krempa),<br />
      Fix coverity complain in commandtest.c (Pavel Hrdina),<br />
      Fix memory leak in securityselinuxlabeltest.c (Pavel Hrdina),<br />
      Fix possible memory leak in util/virxml.c (Pavel Hrdina),<br />
      Fix possible memory leak in phyp_driver.c (Pavel Hrdina),<br />
      Fix memory leak in openvz_conf.c (Pavel Hrdina),<br />
      Fix memory leak in testDomainCreateXMLMixed() (Nehal J Wani),<br />
      schema: fix idmap validation (Eric Blake),<br />
      event: don't queue NULL event on OOM (Eric Blake),<br />
      virt-login-shell: fix regressions in behavior (Eric Blake),<br />
      storage: fix crash when listing volumes or undefining a pool (Martin Kletzander),<br />
      qemuBuildNicDevStr: Set vectors= on Multiqueue (Michal Privoznik),<br />
      libxl: Fix devid init in libxlMakeNicList (Stefan Bader),<br />
      LXC: create monitor socket under selinux context of domain (Gao feng),<br />
      virsh: Use inactive definition when removing disk from config (Peter Krempa),<br />
      virsh: Don't use legacy API if --current is used on device hot(un)plug (Peter Krempa),<br />
      virConnect(Un)registerCloseCallback: Unlock @conn prior to error dispatch (Michal Privoznik),<br />
      Allow to install apparmor profiles (Guido Günther),<br />
      Fix bridge configuration when OUTPUT policy is DROP on the host (Lénaïc Huard),<br />
      lxc_controller: Don't leak @name (Michal Privoznik),<br />
      qemu: Fix job usage in qemuDomainBlockCopy (Jiri Denemark),<br />
      Fix segmentation fault when accessing default qemu machine type (Yudai Yamagish),<br />
      event: make deregister return value match docs (Eric Blake),<br />
      qemuProcessStop: Don't overwrite any errors (Michal Privoznik),<br />
      Fix argument order of qemuMigrationPerformJob(). (Minoru Usui),<br />
      libxl: Fix initialization of nictype in libxl_device_nic (Jim Fehlig),<br />
      qemu: range check numa memory placement mode (Peter Krempa),<br />
      Fix explicit usage of default video PCI slots (Ján Tomko),<br />
      maint: avoid nested public calls (Eric Blake),<br />
      event: don't overwrite registration error message (Eric Blake),<br />
      tests: sysinfotest: Actual/expected were swapped in error message. (Richard W.M. Jones),<br />
      domain: don't try to interpret &lt;driver&gt; as virtio config for hostdev interfaces (Laine Stump),<br />
      virkeycode: Allow ANSI_A (Michal Privoznik),<br />
      interface: Take interface status into account when starting and destroying (Michal Privoznik),<br />
      event-test: Unregister close callback (Michal Privoznik),<br />
      qemu: re-add hostdev interfaces to hostdev array on libvirtd restart (Laine Stump),<br />
      qemu: avoid duplicate security label restore on hostdev attach failure (Laine Stump),<br />
      qemu: properly set MaxMemLock when hotplugging with VFIO (Laine Stump),<br />
      PanicCheckABIStability: Need to check for existence (John Ferlan),<br />
      libxl: fix segfault when domain create fail (Bamvor Jian Zhang),<br />
      Fix crash in lxcDomainSetMemoryParameters (Martin Kletzander),<br />
      storage: fix bogus target in gluster volume xml (Eric Blake),<br />
      Fix crash in virsystemdtest with dbus 1.7.6 (Cédric Bosdonnat),<br />
      Fix race leading to crash when setting up dbus watches (Daniel P. Berrange),<br />
      libxl: libxl_get_max_cpus returning a libxl error from 4.4 onward (Dario Faggioli),<br />
      virsh: domain: Fix undefine with storage of 'volume' disks (Peter Krempa),<br />
      qemu: ask for -enable-fips when FIPS is required (Eric Blake),<br />
      configure: make --with-test-suite work (Martin Kletzander),<br />
      Fix memory leak in virObjectEventCallbackListRemoveID() (Nehal J Wani),<br />
      qemu: check for reboot-timeout on monitor (Martin Kletzander),<br />
      lxc: return -1 if failed to kill lxc process (Chen Hanxiao),<br />
      Add another missing % on %{_libdir} macro (Laine Stump),<br />
      Add missing % on %{_libdir} macro in RPM (Daniel P. Berrange),<br />
      storage: fix omitted slash in gluster volume URI (Eric Blake),<br />
      qemu_process: Read errors from child (Michal Privoznik),<br />
      qemu: hotplug: Fix adding USB devices to the driver list (Cole Robinson),<br />
      qemu: hotplug: Fix double free on USB collision (Cole Robinson),<br />
      qemu: hotplug: Only label hostdev after checking device conflicts (Cole Robinson),<br />
      lxcContainerMountFSDevPTS: Unify @ret usage pattern (Chen Hanxiao),<br />
      conf: Fix XML formatting of RNG device info (Peter Krempa),<br />
      qemu: snapshot: Fix incorrect disk type for auto-generated disks (Peter Krempa),<br />
      virThreadPoolFree: Set n(Prio)Workers after the pool is locked (Michal Privoznik),<br />
      qemuAgentDispose: Reset lastError (Wangyufei (James)),<br />
      Fix memory leak in qemuBuildDriveStr() (Nehal J Wani),<br />
      Don't overwrite errors from virConfReadFile (Daniel P. Berrange),<br />
      virThreadPoolFree: Join worker threads (Michal Privoznik),<br />
      qemu: fix live pinning to memory node on NUMA system (Shivaprasad G Bhat),<br />
      storage_driver: Resolve Coverity CHECKED_RETURN warning (John Ferlan),<br />
      bridge_driver: Resolve Coverity CHECKED_RETURN warning (John Ferlan),<br />
      virnetserverclient: Fix conditional change HAVE_SASL to WITH_SASL (John Ferlan),<br />
      virnetserverclient: Remove Coverity DEADCODE warning (John Ferlan),<br />
      nwfilter: Remove Coverity DEADCODE warning (John Ferlan),<br />
      qemu: report error on attempt to live change virtio-net queues (Laine Stump),<br />
      daemon: Run virStateCleanup conditionally (Michal Privoznik),<br />
      qemu: default to vfio for nodedev-detach (Laine Stump),<br />
      Ensure to zero out the virDomainBlockJobInfo arg (Daniel P. Berrange),<br />
      snapshot: conf: Fix NULL dereference when &lt;driver&gt; element is empty (Peter Krempa)<br />
      </li><li>Improvements:<br />
      event: wire up RPC for server-side network event filtering (Eric Blake),<br />
      event: add notion of remoteID for filtering client network events (Eric Blake),<br />
      event: track callbackID on daemon side of RPC (Eric Blake),<br />
      tests: be more explicit on qcow2 versions in virstoragetest (Eric Blake),<br />
      Add Gao feng to the committers list (Gao feng),<br />
      maint: ignore transient files during tests (Eric Blake),<br />
      storage: FS: Tweak some comments and fix typos (Peter Krempa),<br />
      Exercise the ABI stability check code in test suite (Daniel P. Berrange),<br />
      storage: Improve error message when a storage backend is missing (Peter Krempa),<br />
      storage: lvm: Avoid forward decl of virStorageBackendLogicalDeleteVol (Peter Krempa),<br />
      maint: improve VIR_ERR_INVALID_DOMAIN_SNAPSHOT usage (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_NWFILTER usage (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_STREAM usage (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_SECRET usage (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_NODE_DEVICE usage (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_STORAGE_VOL usage (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_STORAGE_POOL usage (Eric Blake),<br />
      test driver: Add authentication to test driver. (Richard W.M. Jones),<br />
      maint: improve VIR_ERR_INVALID_INTERFACE usage (Eric Blake),<br />
      event: clean up client side RPC code (Eric Blake),<br />
      Make sure AC_ARG_WITH is always executed (Guido Günther),<br />
      maint: improve VIR_ERR_INVALID_NETWORK usage (Eric Blake),<br />
      conf: trivial typo fix (Martin Kletzander),<br />
      maint: inline VIR_IS*_DOMAIN macro (Eric Blake),<br />
      maint: improve VIR_ERR_INVALID_DOMAIN usage (Eric Blake),<br />
      event: make network events easier to use without casts (Eric Blake),<br />
      event: don't turn offline domain into global event (Eric Blake),<br />
      event: don't allow mix of old- and new-style registration (Eric Blake),<br />
      event: properly filter count of remaining events (Eric Blake),<br />
      Read PCI class from sysfs class file instead of config space. (Thadeu Lima de Souza Cascardo),<br />
      event: tighten scope of object_event (Eric Blake),<br />
      event: don't let old-style events clobber per-domain events (Eric Blake),<br />
      event: rename confusing variable in test, remote drivers (Eric Blake),<br />
      event: share state driver between test:///default connections (Eric Blake),<br />
      lxc_controller: Fix error message on missing --handshakefd (Michal Privoznik),<br />
      maint: inline VIR_IS_CONNECT macro (Eric Blake),<br />
      maint: Fix messy include of libvirt_internal.h (Peter Krempa),<br />
      maint: improve VIR_ERR_INVALID_CONN usage (Eric Blake),<br />
      maint: improve VIR_ERR_OPERATION_DENIED usage (Eric Blake),<br />
      qemu: Clean up qemuDomainSetNumaParameters (Peter Krempa),<br />
      storage: Use VIR_DELETE_ELEMENT instead of open coding (Peter Krempa),<br />
      event: use newer array management macros (Eric Blake),<br />
      event: use bool in more places (Eric Blake),<br />
      maint: improve VIR_ERR_NO_SUPPORT usage (Eric Blake),<br />
      event: remove unneeded virObjectEventGetEventID (Eric Blake),<br />
      event: fix doc typos, and doc more public methods (Eric Blake),<br />
      maint: reset error on entrance to public API (Eric Blake),<br />
      maint: improve error condition style in public API (Eric Blake),<br />
      maint: split long lines in invalidArg errors (Eric Blake),<br />
      maint: move debug statements first in public API (Eric Blake),<br />
      maint: improve debug of libvirt-{qemu,lxc} apis (Eric Blake),<br />
      maint: consistent formatting in libvirt.c (Eric Blake),<br />
      event: improve public API docs (Eric Blake),<br />
      tests: virnetsockettest: Print the error if getifaddrs fails. (Richard W.M. Jones),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      maint: fix typo in error message (Eric Blake),<br />
      interface: Introduce netcfInterfaceObjIsActive (Michal Privoznik),<br />
      examples: Resurrect domsuspend example (Michal Privoznik),<br />
      libxl: correctly handle affinity reset in virDomainPinVcpu[Flags] (Dario Faggioli),<br />
      libxl: implement virDomainPinVcpuFlags (Dario Faggioli),<br />
      libxl: implement virDomainGetVcpuPinInfo (Dario Faggioli),<br />
      virt-login-shell: clean up usage (Eric Blake),<br />
      storage: Avoid forward declaration of virStorageVolDelete (Peter Krempa),<br />
      storage: Add gluster pool filter and fix virsh pool listing (Peter Krempa),<br />
      snapshot: schema: Split out snapshot disk driver definition (Peter Krempa),<br />
      Remove redefinition of bool type when --enable-test-locking (Daniel P. Berrange),<br />
      Set the 'container_ttys' env variable for LXC consoles (Daniel P. Berrange),<br />
      storage: resize vol against real allocated size (Michal Privoznik),<br />
      Support transient attribute on vmware disks (Wout Mertens),<br />
      LXC: Change incorrect error report in lxcContainerPivotRoot (Gao feng),<br />
      Add debug output when registering event handlers (Daniel P. Berrange),<br />
      Remove the event namespace concept (Daniel P. Berrange),<br />
      Associate a dispatch function with the event objects (Daniel P. Berrange),<br />
      Introduce abstract virNetworkEvent class (Daniel P. Berrange),<br />
      Add 'detail' arg to network lifecycle event internals (Daniel P. Berrange),<br />
      Update event demo program to support network events too (Daniel P. Berrange),<br />
      Move examples/domain-events/event-c to examples/object-events (Daniel P. Berrange),<br />
      qemu: add support for -device pvpanic (Hu Tao),<br />
      conf: add support for panic device (Hu Tao),<br />
      conf: introduce generic ISA address (Hu Tao),<br />
      Bump version to 1.2.1 for new dev cycle (Daniel P. Berrange),<br />
      rename virBlkioDeviceWeightPtr to virBlkioDevicePtr (Gao feng),<br />
      rename virBlkioDeviceWeightArrayClear to virBlkioDeviceArrayClear (Gao feng),<br />
      rename virDomainBlkioDeviceWeightParseXML to virDomainBlkioDeviceParseXML (Gao feng),<br />
      storage: show gluster option in virsh --version=long (Eric Blake),<br />
      Added default case with error for object event dispatching (Cédric Bosdonnat),<br />
      Fixed indentation in src/conf/*_event* (Cédric Bosdonnat),<br />
      Added network events to the bridged network driver (Cédric Bosdonnat),<br />
      Add network events to the remote driver (Cédric Bosdonnat),<br />
      Add network events unit tests (Cédric Bosdonnat),<br />
      test driver: implemented network events (Cédric Bosdonnat),<br />
      Added Network events API and virNetworkEventLifecycle. (Cédric Bosdonnat),<br />
      storage_backend_rbd: rename "stat" variable (Michael Chapman),<br />
      If we do not specify a readonly mount, we don't need to re-mount it again. (Chen Hanxiao),<br />
      daemon/remote.c: renamed remoteDispatchDomainEventSend (Cédric Bosdonnat),<br />
      test driver: renamed testDomainEventQueue into testObjectEventQueue (Cédric Bosdonnat),<br />
      Extracted common parts of domain_event.[ch] to object_event.[ch] (Cédric Bosdonnat),<br />
      Split the virObjectEvent and virDomainEvent* to separate them after (Cédric Bosdonnat),<br />
      Renamed virDomainEventTimer to virObjectEventTimer (Cédric Bosdonnat),<br />
      Add object event namespaces for the event IDs (Cédric Bosdonnat),<br />
      Use virObjectEventPtr instead of virDomainEventPtr (Cédric Bosdonnat),<br />
      Create virDomainEventDeviceRemoved and remove the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventBalloonChange to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventTrayChange to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventDiskChange to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventBlockJob to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventGraphics to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventIOError to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventWatchdog to get rid of the huge union (Cédric Bosdonnat),<br />
      Create virDomainEventRTCChange to get rid of the huge union (Cédric Bosdonnat),<br />
      Renamed virDomainEventNewInternal to virDomainEventNew (Cédric Bosdonnat),<br />
      Renamed virDomainEventNew* to virDomainEventLifecycleNew* (Cédric Bosdonnat),<br />
      Create virDomainEventLifecycle to start removing the huge union (Cédric Bosdonnat),<br />
      virObject-ified virDomainEvent (Cédric Bosdonnat),<br />
      Created virObjectEventStateRegisterID (Cédric Bosdonnat),<br />
      Renamed virDomainEventCallbackList* to virObjectEventCallbackList* (Cédric Bosdonnat),<br />
      Renamed virDomainEventState to virObjectEventState (Cédric Bosdonnat),<br />
      Renamed virDomainEventQueue to virObjectEventQueue (Cédric Bosdonnat),<br />
      Renamed virDomainMeta to virObjectMeta (Cédric Bosdonnat),<br />
      Rename virDomainEventCallback to virObjectEventCallback (Cédric Bosdonnat),<br />
      Added domain start/stop/define/undefine event unit tests (Cédric Bosdonnat),<br />
      spec: clean up libvirtd and virtlockd service mgmt (Michael Chapman),<br />
      virtlockd: use common exit path when out-of-memory (Michael Chapman),<br />
      virtlockd: improve initscripts (Michael Chapman),<br />
      virtlockd: improve systemd units (Michael Chapman),<br />
      conf: don't format memtune with unlimited values (Martin Kletzander),<br />
      qemu: Fix minor inconsistency in error message (Martin Kletzander),<br />
      qemu: Report VIR_DOMAIN_MEMORY_PARAM_UNLIMITED properly (Martin Kletzander),<br />
      cgroups: Redefine what "unlimited" means wrt memory limits (Martin Kletzander),<br />
      spec: move driver-specific files to driver subpackages (Jim Fehlig),<br />
      spec: Define hypervisor-specific files together (Jim Fehlig),<br />
      spec: Conditionally specify some hypervisor-specific files (Jim Fehlig),<br />
      spec: Fix files list when building without driver modules (Jim Fehlig),<br />
      spec: Only add libvirt-daemon pre install script if building with qemu (Jim Fehlig),<br />
      spec: Fix unconditional references of nwfilter (Jim Fehlig),<br />
      Cgroup: Replace 'newpath' with 'newPath' (Zhou Yimin),<br />
      Add qxl ram size to ABI stability check (Ján Tomko),<br />
      qemu: Improve error when setting invalid count of vcpus via agent (Peter Krempa),<br />
      qemu: hotplug: Mark 2 private functions as static (Cole Robinson),<br />
      qemu: Fix indentation in qemuTranslateDiskSourcePool (Peter Krempa),<br />
      domainsnapshotxml2xmltest: Add test case for empty driver element (Peter Krempa),<br />
      domainsnapshotxml2xmltest: Add existing files as new tests (Peter Krempa),<br />
      domainsnapshotxml2xml: Move files with conflicting names (Peter Krempa),<br />
      domainsnapshotxml2xmltest: Allow for better testing of snapshots (Peter Krempa),<br />
      domainsnapshotxml2xmltest: Clean up labels and use bool instead of int (Peter Krempa),<br />
      maint: Kill usage of atoi() (Peter Krempa),<br />
      src: Align make output (Michal Privoznik),<br />
      tests: add forgotten boot-strict test files (Laine Stump),<br />
      qemu: add "-boot strict" to commandline whenever possible (Laine Stump),<br />
      qemu: snapshots: Declare supported and unsupported snapshot configs (Peter Krempa),<br />
      qemu: Clear old translated pool source (Peter Krempa),<br />
      qemu: Refactor disk source string formatting (Peter Krempa),<br />
      qemu: Unify formatting of RBD sources (Peter Krempa),<br />
      qemu: Split out NBD command generation (Peter Krempa),<br />
      qemu: Migrate sheepdog source generation into common function (Peter Krempa),<br />
      qemu: Use qemuBuildNetworkDriveURI to handle http/ftp and friends (Peter Krempa),<br />
      qemu: Simplify call pattern of qemuBuildDriveURIString (Peter Krempa),<br />
      qemu: Split out formatting of network disk source URI (Peter Krempa),<br />
      qemu: Refactor qemuTranslateDiskSourcePool (Peter Krempa),<br />
      virsh: improve grammar in error message (Eric Blake),<br />
      qemu: snapshot: Add functions similar to disk source pool translation (Peter Krempa),<br />
      qemu: snapshot: Touch up error message (Peter Krempa),<br />
      conf: Add helper do clear disk source authentication struct (Peter Krempa),<br />
      qemu: snapshot: Detect internal snapshots also for sheepdog and RBD (Peter Krempa),<br />
      conf: Add functions to copy and free network disk source definitions (Peter Krempa),<br />
      snapshot: conf: Use common parsing and formatting functions for source (Peter Krempa),<br />
      conf: Export disk source formatter and parser (Peter Krempa),<br />
      conf: Split out seclabel formating code for disk source (Peter Krempa),<br />
      conf: Clean up virDomainDiskSourceDefFormatInternal (Peter Krempa),<br />
      conf: Support disk source formatting without needing a virDomainDiskDefPtr (Peter Krempa),<br />
      tests: Fix comment for fake storage pool driver (Peter Krempa),<br />
      qemuxml2argv: Add test for disk type='volume' with iSCSI pools (Peter Krempa),<br />
      qemuxml2argv: Add test to verify correct usage of disk type="volume" (Peter Krempa),<br />
      test: Implement fake storage pool driver in qemuxml2argv test (Peter Krempa),<br />
      util: Use new array management macros (Osier Yang)<br />
      </li><li>Cleanups:<br />
      storage: Break long lines and clean up spaces in storage backend header (Peter Krempa),<br />
      event: fix typo in previous patch (Eric Blake),<br />
      Remove stray semicolon after pragma macros (Daniel P. Berrange),<br />
      examples: Remove broken bad example (Peter Krempa)<br />
      </li></ul>
        <h3>1.2.0: Dec 2 2013</h3>
        <ul><li>Features:<br />
      Add support for gluster pool (Eric Blake),<br />
      Separation of python binding (Daniel P. Berrange),<br />
      vbox: add support for 4.3 APIs (Ryota Ozaki)<br />
      </li><li>Documentation:<br />
      fix typos in libvirt.h.in (Chen Hanxiao),<br />
      Link libvirt-sandbox from apps page (Daniel P. Berrange),<br />
      Add docs about audit subsystem logging (Daniel P. Berrange),<br />
      virsh: fix doc typos (Nehal J Wani),<br />
      Fix typos in various docs (Nehal J Wani),<br />
      LXC: add securetty related note in Device nodes (Gao feng),<br />
      Fix three minor typos (Yuri Chornoivan),<br />
      storage: fix typo in previous patch (Eric Blake),<br />
      storage: document gluster pool (Eric Blake),<br />
      virDomainReboot: Document that migration might be unsafe (Michal Privoznik),<br />
      delete extra character (Wangyufei (A)),<br />
      maint: fix comment typos. (Eric Blake),<br />
      improve job info details (Eric Blake),<br />
      fix a typo in formatnwfilter.html.in (Chen Hanxiao),<br />
      Improve cgroups docs to cover systemd integration (Daniel P. Berrange),<br />
      fix typos in libvirt.h.in (Chen Hanxiao),<br />
      fix virDomainRestoreFlags description bug (Wang Yufei),<br />
      grammar fixes (Eric Blake),<br />
      add SystemTap to apps using libvirt (Jonathan Lebon),<br />
      fix a typo in formatnwfilter (Chen Hanxiao),<br />
      caps: Fix function docs for virCapabilitiesAddHostNUMACell (Peter Krempa)<br />
      </li><li>Portability:<br />
      tests: fix virpcitest with read-only srcdir (Eric Blake),<br />
      tests: guarantee abs_srcdir in all C tests (Eric Blake),<br />
      look for numad in /usr/sbin (Jim Fehlig),<br />
      build: Don't fail on '&amp;lt;' or '&amp;gt;' with old xmllint (Martin Kletzander),<br />
      spec: fix libvirt-docs subpackage on RHEL-6 (Michael Chapman),<br />
      Don't depend on syslog.service (Guido Günther),<br />
      qemuMonitorJSONGetCPUx86Data: Don't fail on ancient qemus (Michal Privoznik),<br />
      build: work around super-old readline.h (Ryota Ozaki),<br />
      Fix migration with QEMU 1.6 (Michael Avdienko),<br />
      nodeinfo: fix build on non-Linux (Eric Blake)<br />
      </li><li>Bug Fixes:<br />
      vbox: handle errors of virDomainHostdevDefAlloc correctly (Ryota Ozaki),<br />
      vbox: fix incorrect loop condition in vboxHostDeviceGetXMLDesc (Ryota Ozaki),<br />
      Fix memory leak in virNWFilterDefParseXML() (Nehal J Wani),<br />
      Fix memory leak in virDomainDefParseXML() (Nehal J Wani),<br />
      LXC: Ensure security context is set when mounting images (Daniel P. Berrange),<br />
      network: properly update iptables rules during net-update (Laine Stump),<br />
      Fix bug in identifying sub-mounts (Daniel P. Berrange),<br />
      storage: skip selinux cleanup when fd not available (Eric Blake),<br />
      qemu: preserve netdev MAC address during 'domxml-to-native' (Bing Bu Cao),<br />
      storage: don't read storage volumes in nonblock mode (Eric Blake),<br />
      LXC: don't unmount mounts for shared root (Gao feng),<br />
      LXC: fix the problem that libvirt lxc fail to start on latest kernel (Gao feng),<br />
      sasl: Fix authentication when using PLAIN mechanism (Christophe Fergeau),<br />
      Fix invalid read in virNetSASLSessionClientStep debug log (Christophe Fergeau),<br />
      Tie SASL callbacks lifecycle to virNetSessionSASLContext (Christophe Fergeau),<br />
      remote: Don't leak priv-&gt;tls object on connection failure (Christophe Fergeau),<br />
      spec: Don't save/restore running VMs on libvirt-client update (Jiri Denemark),<br />
      virsh domxml-from-native to treat SCSI as the bus type for pseries by default (Shivaprasad G Bhat),<br />
      Don't start a nested job in qemuMigrationPrepareAny (Ján Tomko),<br />
      spec: Don't save/restore running VMs on libvirt-client update (Cole Robinson),<br />
      spec: Restrict virt-login-shell usage (Jiri Denemark),<br />
      storage: use valid XML for awkward volume names (Eric Blake),<br />
      storage: Returns earlier if source adapter of the scsi pool is a HBA (Osier Yang),<br />
      libvirt-guests: Run only after libvirtd (Cole Robinson),<br />
      Fix off-by-1 in default SELinux MCS range (Daniel P. Berrange),<br />
      vbox: fix segfault on virsh dumpxml with the existence of USB filters (Ryota Ozaki),<br />
      Add missing 'return 0;' in stub lxcStartFuse() method impl. (Daniel P. Berrange),<br />
      Avoid async signal safety problem in glibc's setxid (Daniel P. Berrange),<br />
      Don't release spice port twice when no TLS port is available (Ján Tomko),<br />
      Properly unref a connection with a close callback (Ján Tomko),<br />
      qemu: Call qemuSetupHostdevCGroup later during hotplug (Jiri Denemark),<br />
      qemuMonitorIO: Don't use @mon after it's unrefed (Michal Privoznik),<br />
      qemuProcessReconnectHelper: Don't create joinable thread (Michal Privoznik),<br />
      virDomainEventCallbackListFree: Don't leak @list-&gt;callbacks (Michal Privoznik),<br />
      networkBuildDhcpDaemonCommandLine: Don't leak @configstr and @configfile (Michal Privoznik),<br />
      Disable nwfilter driver when running unprivileged (Ján Tomko),<br />
      libxl: Fix Xen 4.4 libxlVmStart logic (Jason Andryuk),<br />
      qemu: Check for presence of device and properities when getting CPUID (Peter Krempa),<br />
      Fix busy wait loop in LXC container I/O handling (Daniel P. Berrange),<br />
      Don't expose 'none' machine type to capabilities (Daniel P. Berrange),<br />
      Fix mem leak in virQEMUCapsProbeQMPMachineTypes on OOM (Daniel P. Berrange),<br />
      virSecurityLabelDefParseXML: Don't parse label on model='none' (Michal Privoznik),<br />
      virsh-domain: Mark --live and --config mutually exclusive in vcpucount (Peter Krempa),<br />
      qemu: Fix SCSI hotplug on pseries guests (Vitor de Lima),<br />
      pci: properly handle out-of-order SRIOV virtual functions (Laine Stump),<br />
      util: use -w flag when calling iptables (Serge Hallyn),<br />
      storage: Fix a vol-clone bug on ppc64 (Li Zhang),<br />
      qemu: Don't access vm-&gt;priv on unlocked domain (Michal Privoznik),<br />
      qemu: Avoid double free of VM (Michal Privoznik),<br />
      Allow root directory in filesystem source dir schema (Ján Tomko),<br />
      qemuMigrationBeginPhase: Check for 'drive-mirror' for NBD (Michal Privoznik),<br />
      conf: fix incorrect error log in virCPUDefIsEqual (Chen Hanxiao),<br />
      qemuMonitorDispose: Reset lastError (Michal Privoznik),<br />
      qemu: clean up migration ports when migration cancelled (Zeng Junliang),<br />
      network: fix connections count in case of allocate failure (Laine Stump),<br />
      virpcitest: Fix variable arguments using in pci_driver_new (Michal Privoznik),<br />
      virpci: Don't error on unbinded devices (Michal Privoznik)<br />
      </li><li>Improvements:<br />
      Pull lxcContainerGetSubtree out into shared virfile module (Daniel P. Berrange),<br />
      Introduce standard methods for sorting strings with qsort (Daniel P. Berrange),<br />
      conf: Export virStorageVolType enum helper functions (Peter Krempa),<br />
      sasl: Replace 'restep' label with 'continue' (Christophe Fergeau),<br />
      storage: probe qcow2 volumes in gluster pool (Eric Blake),<br />
      storage: improve handling of symlinks in gluster (Eric Blake),<br />
      storage: improve allocation stats reported on gluster files (Eric Blake),<br />
      storage: improve directory support in gluster pool (Eric Blake),<br />
      storage: add network-dir as new storage volume type (Eric Blake),<br />
      storage: implement rudimentary glusterfs pool refresh (Eric Blake),<br />
      storage: initial support for linking with libgfapi (Eric Blake),<br />
      storage: expose volume meta-type in XML (Eric Blake),<br />
      storage: allow interleave in volume XML (Eric Blake),<br />
      maint: next release is 1.2.0 (Eric Blake),<br />
      vbox: import vbox_CAPI_v4_3.h from SDK (Ryota Ozaki),<br />
      vbox: pull vboxHostDeviceGetXMLDesc out from vboxDomainGetXMLDesc (Ryota Ozaki),<br />
      vbox: cleanup vboxAttachUSB (Ryota Ozaki),<br />
      lxc: don't do duplicate work when getting pagesize (Chen Hanxiao),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      python: remove virConnectGetCPUModelNames from globals (Doug Goldstein),<br />
      python: remove virConnectGetCPUModelNames from globals (Doug Goldstein),<br />
      qemu: Auto-generate controller for hotplugged hostdev (Eric Farman),<br />
      qemu: Separate calls based on controller bus type (Eric Farman),<br />
      qemu: Rename controller hotplug functions to not be PCI-specific (Eric Farman),<br />
      qemu: Add support for virt machine type with virtio-mmio devices on armv7 (Clark Laughlin),<br />
      maint: enforce comma style usage (Eric Blake),<br />
      maint: fix comma style issues: remaining code (Eric Blake),<br />
      maint: fix comma style issues: remaining drivers (Eric Blake),<br />
      maint: fix comma style issues: vbox (Eric Blake),<br />
      maint: fix comma style issues: python (Eric Blake),<br />
      maint: fix comma style issues: util (Eric Blake),<br />
      maint: fix comma style issues: tests, tools (Eric Blake),<br />
      maint: fix comma style issues: qemu (Eric Blake),<br />
      maint: fix comma style issues: xen (Eric Blake),<br />
      maint: fix comma style issues: conf (Eric Blake),<br />
      maint: fix comma style issues: nwfilter (Eric Blake),<br />
      Error out on unterminated arrays and objects in JSON parser (Ján Tomko),<br />
      Test if JSON parser fails on invalid input (Ján Tomko),<br />
      maint: ship .pl scripts as executables (Eric Blake),<br />
      Fix virsh net-info output for consistency (Hao Liu),<br />
      Add missing break to switch-case block (Doug Goldstein),<br />
      qemumonitorjsontest: Introduce GetNonExistingCPUData test (Michal Privoznik),<br />
      Macro for testing the version you are compiling with (Doug Goldstein),<br />
      Return -1 in virPortAllocatorAcquire if all ports are used (Ján Tomko),<br />
      Add a name to virPortAllocator (Ján Tomko),<br />
      storage: fix RNG validation of gluster via netfs (Eric Blake),<br />
      virsh-secret: Unify list column alignment (Peter Krempa),<br />
      virsh-interface: Unify list column alignment (Peter Krempa),<br />
      virsh-nwfilter: Unify list command column alignment (Peter Krempa),<br />
      virsh-pool: Unify spacing of listing function (Peter Krempa),<br />
      qemu: Change return type of qemuMonitorGetGuestCPU() (Peter Krempa),<br />
      virsh-volume: Unify strigification of volume type (Peter Krempa),<br />
      virsh-volume: Unify alignment of vol-list output columns (Peter Krempa),<br />
      conf: Refactor virDomainDiskSourceDefParse (Peter Krempa),<br />
      conf: Rename virDomainDiskHostDefFree to virDomainDiskHostDefClear (Peter Krempa),<br />
      conf: Split out code to parse the source of a disk definition (Peter Krempa),<br />
      qemuDomainObjStart: Warn on corrupted image (Michal Privoznik),<br />
      util: use size_t instead of unsigned int for num_virtual_functions (Laine Stump),<br />
      qemu: assign PCI address to primary video card (Vitor de Lima),<br />
      qemu: process: Validate specific CPUID flags of a guest (Peter Krempa),<br />
      qemu: Add support for paravirtual spinlocks in the guest (Peter Krempa),<br />
      conf: Refactor storing and usage of feature flags (Peter Krempa),<br />
      cpu: x86: Add internal CPUID features support and KVM feature bits (Peter Krempa),<br />
      qemu: Add monitor APIs to fetch CPUID data from QEMU (Jiri Denemark),<br />
      cpu_x86: Refactor storage of CPUID data to add support for KVM features (Peter Krempa),<br />
      tests: Distribute virpcitestdata (Michal Privoznik),<br />
      tests: Fix virtpcitest in VPATH (Jiri Denemark),<br />
      conf: Refactor virDomainDiskSourcePoolDefParse (Peter Krempa),<br />
      storage: always probe type with buffer (Eric Blake),<br />
      storage: refactor backing chain division of labor (Eric Blake),<br />
      storage: reduce number of stat calls (Eric Blake),<br />
      storage: avoid short reads while chasing backing chain (Eric Blake),<br />
      storage: use simpler 'char *' (Eric Blake),<br />
      test driver: add support for .connectBaselineCPU (Giuseppe Scrivano),<br />
      virpcitest: Introduce testVirPCIDeviceReset (Michal Privoznik),<br />
      virt-login-shell: also build virAtomic.h (Guido Günther),<br />
      storage: recognize gluster as networked file (Eric Blake),<br />
      qemu: don't use deprecated -no-kvm-pit-reinjection (Ján Tomko),<br />
      Resolve Coverity issue regarding not checking return value (John Ferlan),<br />
      Skip any files which are not mounted on the host (Daniel P. Berrange),<br />
      Add flag to lxcBasicMounts to control use in user namespaces (Daniel P. Berrange),<br />
      Remove duplicate entries in lxcBasicMounts array (Daniel P. Berrange),<br />
      Remove pointless 'srcpath' variable in lxcContainerMountBasicFS (Daniel P. Berrange),<br />
      Remove unused 'opts' field from LXC basic mounts struct (Daniel P. Berrange),<br />
      Add virFileIsMountPoint function (Daniel P. Berrange),<br />
      virpcitest: Introduce check for unbinded devices (Michal Privoznik),<br />
      virpcitest: Introduce testVirPCIDeviceReattach (Michal Privoznik),<br />
      virpcitest: Test virPCIDeviceDetach (Michal Privoznik),<br />
      tests: Introduce virpcitest (Michal Privoznik),<br />
      cpu: x86: Parse the CPU feature map only once (Peter Krempa),<br />
      cpu: Export few x86-specific APIs (Jiri Denemark),<br />
      nodeinfo: Remove libnuma include (Peter Krempa),<br />
      numa: Add wrapper of numa_node_to_cpus and use it (Peter Krempa),<br />
      numa: Replace NUMA_MAX_N_CPUS macro with virNumaGetMaxCPUs() (Peter Krempa),<br />
      nodeinfo: Get rid of nodeGetCellMemory (Peter Krempa),<br />
      numa: Introduce virNumaGetNodeMemory and use it instead of numa_node_size64 (Peter Krempa),<br />
      numa: Introduce virNumaGetMaxNode and use it instead of numa_max_node (Peter Krempa),<br />
      nodeinfo: Avoid forward declarations of static functions (Peter Krempa),<br />
      numa: Introduce virNumaIsAvailable and use it instead of numa_available (Peter Krempa)<br />
      </li><li>Cleanups:<br />
      Remove obsolete 'tests' makefile target (Daniel P. Berrange),<br />
      Mostly revert "python: remove virConnectGetCPUModelNames from globals" (Daniel P. Berrange),<br />
      Remove redundant braces (Ján Tomko),<br />
      virPCIDeviceBindToStub: Remove unused @oldDriverPath and @oldDriverName (Michal Privoznik)<br />
      </li></ul>
        <h3>1.1.4: Nov 4 2013</h3>
        <ul><li>Features:<br />
      Add support for AArch64 architecture (Pranavkumar Sawargaonkar),<br />
      Various improvements on test code and test driver (many people),<br />

Security:<br />
      Don't link virt-login-shell against libvirt.so (CVE-2013-4400) (Daniel P. Berrange),<br />
      Close all non-stdio FDs in virt-login-shell (CVE-2013-4400) (Daniel P. Berrange),<br />
      Only allow 'stderr' log output when running setuid (CVE-2013-4400) (Daniel P. Berrange),<br />
      Fix perms for virConnectDomainXML{To,From}Native (CVE-2013-4401) (Daniel P. Berrange)<br />
      </li><li>Documentation:<br />
      generate links from plain text documentation (Claudio Bley),<br />
      define style of code blocks inside descriptions (Claudio Bley),<br />
      add class "description" to div's containing descriptions (Claudio Bley),<br />
      process code blocks similar to Markdown (Claudio Bley),<br />
      fix typos in formatnwfilter (Chen Hanxiao),<br />
      fix a typo in formatdomain (Chen Hanxiao),<br />
      virsh: fix doc typos (Eric Blake),<br />
      maint: typo fixes (Eric Blake),<br />
      fix some typos about 'informations' (Chen Hanxiao),<br />
      fix a typo in formatdomain (Chen Hanxiao),<br />
      Expand description of host-model CPU mode (Jiri Denemark),<br />
      virsh: fix a typo in virsh-domain (Chen Hanxiao),<br />
      storage: document existing pools (Eric Blake),<br />
      remote-driver: Fix 'leav' typo in comment (Christophe Fergeau),<br />
      change the minimum weight description for blkio (Chen Hanxiao),<br />
      Add some notes about secure usage of libvirt (Daniel P. Berrange),<br />
      lxc: Fix an improper comment in lxc_process.c (Chen Hanxiao),<br />
      nwfilter: fix a typo in nwfilter_gentech_driver.c (Hongwei Bi),<br />
      cgroup: fix a comment typo in vircgroup.c (Chen Hanxiao),<br />
      fix typo in HACKING (Chen Hanxiao),<br />
      aclpolkit: Fix a heading typo (Cole Robinson)<br />
      </li><li>Portability:<br />
      virnetsocket: fix getsockopt on FreeBSD (Ryota Ozaki),<br />
      MacOS: Handle changes to xdrproc_t definition (Doug Goldstein),<br />
      fix api changes in xen restore (Bamvor Jian Zhang),<br />
      MacOS: Re-add support for QEMU backend (Doug Goldstein),<br />
      rpc: Retrieve peer PID via new getsockopt() for Mac (Doug Goldstein),<br />
      build: fix build of virt-login-shell on systems with older gnutls (Jim Fehlig),<br />
      build: fix linking virt-login-shell (Jim Fehlig),<br />
      nodeinfo: fix physical memory size on Mac OS X (Ryota Ozaki),<br />
      Add stub getegid impl for platforms lacking it (Daniel P. Berrange),<br />
      better error checking for LOCAL_PEERCRED (Brian Candler),<br />
      Add support for detecting PPC little endian arches (Daniel P. Berrange),<br />
      xenapi: Fix build after const correctnes changes (Peter Krempa),<br />
      rpc: Fix getsockopt on Snow Leopard and lower (Doug Goldstein),<br />
      build: fix linker error on FreeBSD (Giuseppe Scrivano),<br />
      tests: avoid compile failure on linux kernels older than 2.6.19 (Giuseppe Scrivano),<br />
      nodeinfo: make freebsdNodeGetCPUCount work on Mac OS X (Ryota Ozaki),<br />
      rpc: fix getsockopt for LOCAL_PEERCRED on Mac OS X (Ryota Ozaki),<br />
      build: fix build on 32-bit platforms (Eric Blake),<br />
      build: fix build on RHEL 5 (Eric Blake),<br />
      build: fix build --without-remote (Eric Blake)<br />
      </li><li>Bug fixes:<br />
      Fix race in starting transient VMs (Daniel P. Berrange),<br />
      Use a port from the migration range for NBD as well (Ján Tomko),<br />
      nodedev_hal: fix segfault when virDBusGetSystemBus fails (Ryota Ozaki),<br />
      Fix race condition reconnecting to vms &amp; loading configs (Daniel P. Berrange),<br />
      Don't update dom-&gt;persistent without lock held (Daniel P. Berrange),<br />
      storage: fix incorrect typedef (Eric Blake),<br />
      apparmor: Fix typo in function name in driver struct initialization (Peter Krempa),<br />
      qemu: fix well-formed migration URI formatting (Michael Chapman),<br />
      LXC: don't free tty before using it in lxcContainerSetupDevices (Gao feng),<br />
      python: Fix Create*WithFiles filefd passing (Marian Neagul),<br />
      networkStartDhcpDaemon: Check for dnsmasqCapsRefresh failure (Hongwei Bi),<br />
      virsh: Fix job watching when STDIN is not a tty (Peter Krempa),<br />
      qemu: fix removal of &lt;interface type='hostdev'&gt; (Laine Stump),<br />
      Fix a problem introduced by commit 99889012 (Geoff Hickey),<br />
      qemu: Avoid assigning unavailable migration ports (Wang Yufei),<br />
      viralloc.h: Fix typo in VIR_APPEND_ELEMENT_COPY_QUIT (Michal Privoznik),<br />
      remote: fix regression in event deregistration (Zhou Yimin),<br />
      daemon: don't free domain if it's null (Chen Hanxiao),<br />
      Remove ATTRIBUTE_NONNULL(3) from qemuMonitorJSONDrivePivot (John Ferlan),<br />
      rpc: Correct the wrong payload size checking (Osier Yang),<br />
      Fix typo breaking cgroups for NBD backed filesystems (Daniel P. Berrange),<br />
      Ignore thin pool LVM devices. (Dusty Mabe),<br />
      domain_conf.c: Initialize arrVar and cntVar (Michal Privoznik),<br />
      vbox: handle 'saved' state of VMs (Ryota Ozaki),<br />
      esx: Fix floppy.fileName handling in the vmx file parser (Geoff Hickey),<br />
      Convert uuid to a string before printing it (Ján Tomko),<br />
      Initialize threading &amp; error layer in LXC controller (Daniel P. Berrange),<br />
      Don't ignore all dbus connection errors (Daniel P. Berrange),<br />
      Fix exit status of lxc controller (Daniel P. Berrange),<br />
      Fix flaw in detecting log format (Daniel P. Berrange),<br />
      qemu_migration: Avoid crashing if domain dies too quickly (Michal Privoznik),<br />
      util: fix two virCompareLimitUlong bugs (Bing Bu Cao),<br />
      storage_backend: Fix issue with allocation of 0 length volume (John Ferlan),<br />
      qemu: Init @pcidevs in qemuPrepareHostdevPCIDevices (Michal Privoznik),<br />
      LXC: Fix handling of RAM filesystem size units (Ján Tomko),<br />
      Don't clobber 'ret' variable in testCompareXMLToXMLHelper (Daniel P. Berrange),<br />
      Adjust legacy max payload size to account for header information (Claudio Bley),<br />
      storage: fix file allocation behavior in file cloning (Oskari Saarenmaa),<br />
      virfile: safezero: fix buffer allocation max size (Oskari Saarenmaa),<br />
      test: Fix coverity warnings (Cole Robinson),<br />
      nodedev: Resolve Relax-NG validity error (John Ferlan),<br />
      Free cmd in virNetDevVethCreate (Gao feng),<br />
      Free cmd in virNetDevVethDelete (Gao feng),<br />
      qemu: check actual netdev type rather than config netdev type during init (Laine Stump),<br />
      qemuMonitorTestFree: Join worker thread (Michal Privoznik),<br />
      Avoid deleting NULL veth device name (Daniel P. Berrange),<br />
      qemuMonitorJSONSendKey: Avoid double free (Michal Privoznik),<br />
      qemuMonitorJSONGetVirtType: Fix error message (Michal Privoznik),<br />
      qemu: cgroup: Fix crash if starting nographics guest (Cole Robinson),<br />
      selinux: Only close the selabel_handle once (Ján Tomko),<br />
      Fix handling of IPv6 listen addresses in cmdDomDisplay (Ján Tomko),<br />
      util: recognize SMB/CIFS filesystems as shared (Laine Stump),<br />
      Fix leak of objects when reconnecting to QEMU instances (Daniel P. Berrange)<br />
      </li><li>Improvements:<br />
      libxl: fix dubious cpumask handling in libxlDomainSetVcpuAffinities (Jeremy Fitzhardinge),<br />
      Improve debugging of QEMU start/stop (Daniel P. Berrange),<br />
      Improve debugging of job enter/exit code (Daniel P. Berrange),<br />
      storage: use correct type for array count (Eric Blake),<br />
      maint: avoid further typedef accidents (Eric Blake),<br />
      libvirt.c: indent code of virDomainGetMemoryParameters's documentation (Claudio Bley),<br />
      libvirt.c: add 2 spaces of indentation to example code of virStreamSend (Claudio Bley),<br />
      Add '+' to uid/gid printing for label processing (John Ferlan),<br />
      Push RPM deps down into libvirt-daemon-driver-XXXX sub-RPMs (Daniel P. Berrange),<br />
      capabilities: add baselabel per sec driver/virt type to secmodel (Giuseppe Scrivano),<br />
      security: add new internal function "virSecurityManagerGetBaseLabel" (Giuseppe Scrivano),<br />
      security: use a single function to set DAC user and group (Giuseppe Scrivano),<br />
      virsh: new environment variable VIRSH_HISTSIZE (Pavel Raiskup),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      Skip debug message in lxcContainerSetID if no map is set. (Chen Hanxiao),<br />
      Avoid Coverity DEADCODE warning (John Ferlan),<br />
      virsh: allow alias to expand to opt=value pair (Eric Blake),<br />
      Ignore GNU Global tag files (Martin Kletzander),<br />
      build: Fix prohibit_int_ijk (and iijjkk) on RHEL 5 (Martin Kletzander),<br />
      Get rid of shadowed booleans (Michal Privoznik),<br />
      vircgroupmock: Mock access() to some more files (Michal Privoznik),<br />
      tests: Use lv_abs_top_builddir instead of bare abs_top_builddir (Michal Privoznik),<br />
      qemu: move qemuDomainRemoveNetDevice to avoid forward reference (Laine Stump),<br />
      qemu: simplify calling qemuDomainHostdevNetConfigRestore (Laine Stump),<br />
      Move virt-login-shell into libvirt-login-shell sub-RPM (Daniel P. Berrange),<br />
      Block all use of libvirt.so in setuid programs (Daniel P. Berrange),<br />
      Remove (nearly) all use of getuid()/getgid() (Daniel P. Berrange),<br />
      Don't allow remote driver daemon autostart when running setuid (Daniel P. Berrange),<br />
      Only allow the UNIX transport in remote driver when setuid (Daniel P. Berrange),<br />
      Block all use of getenv with syntax-check (Daniel P. Berrange),<br />
      Remove all direct use of getenv (Daniel P. Berrange),<br />
      Make virCommand env handling robust in setuid env (Daniel P. Berrange),<br />
      Set a sane $PATH for virt-login-shell (Daniel P. Berrange),<br />
      Add helpers for getting env vars in a setuid environment (Daniel P. Berrange),<br />
      qemu: Fix augeas support for migration ports (Michal Privoznik),<br />
      qemu: Make migration port range configurable (Jiri Denemark),<br />
      netcf: Don't complain when cleanup is called before init (Christophe Fergeau),<br />
      virsh: improve usability of '--print-xml' flag for attach-disk command (Chen Hanxiao),<br />
      esx: Remove unnecessary NULL comparisons (3/3) (Geoff Hickey),<br />
      esx: Remove unnecessary NULL comparisons (2/3) (Geoff Hickey),<br />
      esx: Remove unnecessary NULL comparisons (1/3) (Geoff Hickey),<br />
      Add support for enabling SASL for SPICE guests (Daniel P. Berrange),<br />
      qemuDomainCleanupRemove: s/memmove/VIR_DELETE_ELEMENT_INPLACE/ (Michal Privoznik),<br />
      build: use the gnulib version of the .m4 files when present (Giuseppe Scrivano),<br />
      storage: allow interleave in pool XML (Eric Blake),<br />
      Add some logging to LXC disk/fs nbd/loop setup (Daniel P. Berrange),<br />
      Add logging to LXC cgroup devices setup (Daniel P. Berrange),<br />
      Add log statement when NBD device is setup (Daniel P. Berrange),<br />
      AArch64: Add qemu capabilities schemeta for test. (Pranavkumar Sawargaonkar),<br />
      Implement minimal sysinfo for AArch64 platforms. (Pranavkumar Sawargaonkar),<br />
      AArch64: Parse cputopology from /proc/cpuinfo. (Pranavkumar Sawargaonkar),<br />
      AArch64: CPU Support for AArch64 (ARMv8 64bit). (Pranavkumar Sawargaonkar),<br />
      AArch64: Add AArch64 architecture to list of valid arches. (Pranavkumar Sawargaonkar),<br />
      cpu: x86: Clean up error messages in x86VendorLoad() (Peter Krempa),<br />
      cpu: x86: Use whitespace to clarify context and use consistent labels (Peter Krempa),<br />
      cpu: x86: Fix function header formatting and whitespace (Peter Krempa),<br />
      cpu: x86: Fix return types of x86cpuidMatch and x86cpuidMatchMasked (Peter Krempa),<br />
      cpu: x86: Rename data_iterator and DATA_ITERATOR_INIT (Peter Krempa),<br />
      cpu: x86: Rename x86DataAddCpuid as virCPUx86DataAddCPUID (Jiri Denemark),<br />
      cpu: x86: Rename x86MakeCPUData as virCPUx86MakeData (Jiri Denemark),<br />
      cpu: x86: Rename x86DataFree() as virCPUx86DataFree() (Jiri Denemark),<br />
      cpu: x86: Rename struct cpuX86Data as virCPUx86Data (Jiri Denemark),<br />
      cpu: x86: Rename struct cpuX86cpuid as virCPUx86CPUID (Jiri Denemark),<br />
      cpu: Add support for loading and storing CPU data (Jiri Denemark),<br />
      qemu: command: Fix macro indentation (Peter Krempa),<br />
      conf: Mark user provided strings in error messages when parsing XML (Peter Krempa),<br />
      schema: Rename option 'hypervtristate' to 'featurestate' (Peter Krempa),<br />
      fix typo in lxc_driver.c and virsh-nodedev.c (Hongwei Bi),<br />
      build: Add lxc testcase to dist list (Daniel Hansel),<br />
      cgroup: leave blkio cgroup value checking to kernel (Chen Hanxiao),<br />
      cgroup: show error when EINVAL is returned (Chen Hanxiao),<br />
      vbox: merge duplicate state conversions (Ryota Ozaki),<br />
      build: syntax check to avoid 'const fooPtr' (Eric Blake),<br />
      maint: avoid 'const fooPtr' in all remaining places (Eric Blake),<br />
      maint: avoid 'const fooPtr' in qemu (Eric Blake),<br />
      maint: avoid 'const fooPtr' in security (Eric Blake),<br />
      maint: avoid 'const fooPtr' in conf (Eric Blake),<br />
      maint: avoid 'const fooPtr' in domain_conf (Eric Blake),<br />
      maint: fix awkward typing of virDomainChrGetDomainPtrs (Eric Blake),<br />
      maint: avoid 'const fooPtr' in python bindings (Eric Blake),<br />
      maint: avoid 'const fooPtr' in tests (Eric Blake),<br />
      maint: avoid 'const fooPtr' in nwfilter files (Eric Blake),<br />
      maint: avoid 'const fooPtr' in cpu files (Eric Blake),<br />
      maint: avoid 'const fooPtr' in virnet files (Eric Blake),<br />
      maint: avoid 'const fooPtr' in several util files (Eric Blake),<br />
      maint: avoid 'const fooPtr' in hashes (Eric Blake),<br />
      maint: avoid 'const fooPtr' in public API (Eric Blake),<br />
      Improve log filtering in virLXCProcessReadLogOutputData (Daniel P. Berrange),<br />
      Ensure lxcContainerResolveSymlinks reports errors (Daniel P. Berrange),<br />
      Ensure lxcContainerMain reports errors on stderr (Daniel P. Berrange),<br />
      VMX: Serial devices don't have to be attached (Doug Goldstein),<br />
      Revert "VMX: Some serial ports are not actually connected" (Doug Goldstein),<br />
      qemu: snapshot: Add support for compressing external snapshot memory (Peter Krempa),<br />
      qemu: managedsave: Add support for compressing managed save images (Peter Krempa),<br />
      Improve error reporting with LXC controller (Daniel P. Berrange),<br />
      Make LXC controller use a private dbus connection &amp; close it (Daniel P. Berrange),<br />
      Add a method for closing the dbus system bus connection (Daniel P. Berrange),<br />
      Allow use of a private dbus bus connection (Daniel P. Berrange),<br />
      VMware: Do version detection earlier (Doug Goldstein),<br />
      VMware: Simplify array walk for driver type (Doug Goldstein),<br />
      qemu: Include listenAddress in debug prints (Michal Privoznik),<br />
      Move virNetDevVPort enum impl into virnetdevvportprofile.c (Daniel P. Berrange),<br />
      qemu_conf: Introduce "migration_address" (Michal Privoznik),<br />
      qemu: Implement support for VIR_MIGRATE_PARAM_LISTEN_ADDRESS (Michal Privoznik),<br />
      virsocket: Introduce virSocketAddrIsWildcard (Michal Privoznik),<br />
      Migration: Introduce VIR_MIGRATE_PARAM_LISTEN_ADDRESS (Michal Privoznik),<br />
      qemu: Introduce qemuDomainDefCheckABIStability (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONSendKey (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetVirtType (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetCPUInfo (Michal Privoznik),<br />
      qemumonitorjsontest: Extend the test for yet another monitor commands (Michal Privoznik),<br />
      qemu: Prefer VFIO for PCI device passthrough (Peter Krempa),<br />
      qemu: hostdev: Add checks if PCI passthrough is available in the host (Peter Krempa),<br />
      qemu: hostdev: Fix function spacing and header formatting (Peter Krempa),<br />
      qemu: refactor qemuCompressProgramAvailable() (Peter Krempa),<br />
      qemu: Fix coding style in qemuDomainSaveFlags() (Peter Krempa),<br />
      storage: Use bool instead of int (Ján Tomko),<br />
      tests: Add qemu test for multiple timers (Cole Robinson),<br />
      qemu: hostdev: Refactor PCI passhrough handling (Peter Krempa),<br />
      virerror: s/VIR_ERR_STORAGE_VOL_EXISTS/VIR_ERR_STORAGE_VOL_EXISTS/ (Michal Privoznik),<br />
      fix a ambiguous output of the command:'virsh vol-create-as' (Hongwei Bi),<br />
      build: add configure --without-readline (Eric Blake),<br />
      build: move readline check into its own macro (Eric Blake),<br />
      build: kill maintainer mode, always rebuild by default (Eric Blake),<br />
      Remove use of virConnectPtr from all remaining nwfilter code (Daniel P. Berrange),<br />
      Don't pass virConnectPtr in nwfilter 'struct domUpdateCBStruct' (Daniel P. Berrange),<br />
      Remove virConnectPtr arg from virNWFilterDefParse* (Daniel P. Berrange),<br />
      qemu: Use maximum guest memory size when getting NUMA placement advice (Peter Krempa),<br />
      virfile: safezero: fall back to writing block by block if mmap fails (Oskari Saarenmaa),<br />
      test: snapshot: Add REDEFINE support (Cole Robinson),<br />
      qemu: snapshot: Break out redefine preparation to shared function (Cole Robinson),<br />
      test: Implement snapshot create/delete/revert APIs (Cole Robinson),<br />
      test: Allow specifying domainsnapshot XML (Cole Robinson),<br />
      qemu: snapshots: Simplify REDEFINE flag check (Cole Robinson),<br />
      qemucapabilitiesdata: Add qemu-1.6.50 data (Michal Privoznik),<br />
      qemucapabilitiesdata: Add qemu-1.6.0 data (Michal Privoznik),<br />
      qemucapabilitiesdata: Add qemu-1.4.2 data (Michal Privoznik),<br />
      qemucapabilitiesdata: Add qemu-1.3.1 data (Michal Privoznik),<br />
      qemucapabilitiesdata: Add qemu-1.2.2 data (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONSystemPowerdown (Michal Privoznik),<br />
      Use 'vnet' as prefix for veth devices (Daniel P. Berrange),<br />
      Retry veth device creation on failure (Daniel P. Berrange),<br />
      Avoid reporting an error if veth device is already deleted (Daniel P. Berrange),<br />
      Don't set netdev offline in container cleanup (Daniel P. Berrange),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetMigrationCapability (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetTargetArch (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONSetBlockIoThrottle (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetPtyPaths (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetSpiceMigrationStatus (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetMigrationStatus (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetMigrationCacheSize (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetBlockStatsInfo (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetBlockInfo (Michal Privoznik),<br />
      qemumonitorjsontest: Test qemuMonitorJSONGetBalloonInfo (Michal Privoznik),<br />
      qemu_hotplug: Allow QoS update in qemuDomainChangeNet (Michal Privoznik),<br />
      virNetDevBandwidthEqual: Make it more robust (Michal Privoznik),<br />
      test: Implement readonly snapshot APIs (Cole Robinson),<br />
      test: Wire up managed save APIs (Cole Robinson),<br />
      test: Allow specifying object transient state in driver XML (Cole Robinson),<br />
      tests: Introduce qemucapabilitiestest (Michal Privoznik),<br />
      qemuMonitorTest: Make check for monitor command match optional (Michal Privoznik),<br />
      tests: Learn qemuMonitorTestNew optional greeting (Michal Privoznik),<br />
      qemu_capabilities: Introduce virQEMUCapsInitQMPMonitor (Michal Privoznik)<br />
      </li><li>Cleanups:<br />
      xenapi: fix coding style in xenapi_driver.c (Hongwei Bi),<br />
      virsh: undocument --shareable (--mode already covers it) (Eric Blake),<br />
      Remove test case average timing (Daniel P. Berrange),<br />
      Remove existing OOM test impl (Daniel P. Berrange)<br />
      </li></ul>
        <h3>1.1.3: Oct 1 2013</h3>
        <ul><li>Features:<br />
      VMware: Initial VMware Fusion support and various improvements (Doug Goldstein),<br />
      libvirt: add new public API virConnectGetCPUModelNames (Giuseppe Scrivano),<br />
      various libxl driver improvements (Jim Fehlig),<br />
      LXC many container driver improvement (Chen Hanxiao, Gao Feng, Daniel P. Berrange),<br />
      ARM cpu improvements (Cole Robinson)<br />
      </li><li>Security:<br />
      Fix crash in remoteDispatchDomainMemoryStats (CVE-2013-4296) (Daniel P. Berrange),<br />
      Add support for using 3-arg pkcheck syntax for process (CVE-2013-4311) (Daniel P. Berrange),<br />
      virFileNBDDeviceAssociate: Avoid use of uninitialized variable (Michal Privoznik)<br />
      </li><li>Documentation:<br />
      python: Document virNodeGetInfo bug (Michal Privoznik),<br />
      maint: fix comment typos (Eric Blake),<br />
      conf: Fix virNetworkAssignDef's comment. (lawrancejing),<br />
      fix virEventAddHandle return details (Jonathan Lebon),<br />
      fix XML for the RNG device example (Giuseppe Scrivano),<br />
      mention hostname subtlety (Eric Blake),<br />
      Add some notes about security considerations when using LXC (Daniel P. Berrange),<br />
      Repair the search on libvirt.org (Daniel Veillard),<br />
      api-docs: Fix description of virConnectGetType() API function (Michal Novotny),<br />
      Update docs about user namespace for LXC (Daniel P. Berrange),<br />
      docs, comments: minor typo fixes (Oskari Saarenmaa),<br />
      LXC: fix typos in lxc_container.c (Chen Hanxiao),<br />
      fix a typo in virt-login-shell.pod (Alex Jia),<br />
      Fix a typo in network XML docs (Ján Tomko),<br />
      Add OpenStack into references (Martin Kletzander),<br />
      examples: Add script to parse topology from capabilities output (Peter Krempa)<br />
      </li><li>Portability:<br />
      build: fix build --without-lxc (Eric Blake),<br />
      build: tweak vpath builds of net_rpc (Eric Blake),<br />
      fchosttest: Run the test only under linux (Michal Privoznik),<br />
      genprotocol.pl: Fix code on FreeBSD too (Michal Privoznik),<br />
      BSD: Ensure process creation timestamp is init'd (Doug Goldstein),<br />
      BSD: Ensure UNIX socket credentials are valid (Doug Goldstein),<br />
      build: fix testsuite building under cygwin (Eric Blake),<br />
      build: Fix VPATH build error for locking daemon (Viktor Mihajlovski),<br />
      build: fix use of rpc.h on cygwin (Eric Blake),<br />
      build: skip ld_preload tests on non-Linux systems (Eric Blake),<br />
      build: hoist system-specific checks before library checks (Eric Blake),<br />
      virsh: Don't shadow global variable "remove" in cmdMetadata (Peter Krempa),<br />
      conf: Avoid false positive of uninitialized variable use (Peter Krempa),<br />
      build: fix VPATH build of remote driver (Eric Blake),<br />
      build: make autobuild require rpm build deps (Eric Blake),<br />
      build: fix build with latest rawhide kernel headers (Eric Blake),<br />
      Explicitly link libvirt_net_rpc against SELINUX_LIBS (Guido Günther),<br />
      build: require libnl-3 if netcf uses it (Eric Blake),<br />
      build: fix regression in requiring yajl for new enough qemu (Eric Blake),<br />
      build: avoid obsolete AC_HELP_STRING (Eric Blake),<br />
      virsh: fix build on mingw, which lacks termios stuff (Eric Blake),<br />
      build: avoid stranded polkit file in client-only build (Eric Blake),<br />
      spec: fix rpm build when lxc disabled (Eric Blake)<br />
      </li><li>Bug Fixes:<br />
      lxc: do cleanup when failed to bind fs as read-only (Chen Hanxiao),<br />
      Fix max stream packet size for old clients (Daniel P. Berrange),<br />
      LXC: workaround machined uncleaned data with containers running systemd. (Cédric Bosdonnat),<br />
      virfile: safezero: align mmap offset to page size (Oskari Saarenmaa),<br />
      virscsi: hostdev SCSI AdapterId retrieval fix (Boris Fiuczynski),<br />
      virsh-volume: Add missing check when calling virStreamNew (Hongwei Bi),<br />
      virsh-domain: Free dom before return false in cmdDump (Hongwei Bi),<br />
      qemu: process: Silence coverity warning when rewinding log file (Peter Krempa),<br />
      Fix crash in libvirtd when events are registered &amp; ACLs active (Daniel P. Berrange),<br />
      virsh: Fix domdisplay when domain only uses TLS (Christophe Fergeau),<br />
      qemu: Free all driver data in qemuStateCleanup (Jiri Denemark),<br />
      qemu: Don't leak reference to virQEMUDriverConfigPtr (Jiri Denemark),<br />
      rpc: Increase bound limit for virDomainGetJobStats (Jiri Denemark),<br />
      LXC: free dst before lxcDomainAttachDeviceDiskLive returns (Chen Hanxiao),<br />
      qemu: virDomainControllerFind may return 0 if controller found (Chen Hanxiao),<br />
      conf: Don't crash on invalid chardev source definition of RNGs and other (Peter Krempa),<br />
      Avoid use of uninitialized data in virnetmessagetest (Daniel P. Berrange),<br />
      Avoid crash on OOM in virnetmessagetest (Daniel P. Berrange),<br />
      Avoid crash on OOM in virportallocatortest (Daniel P. Berrange),<br />
      Avoid crash on OOM in virlockspacetest (Daniel P. Berrange),<br />
      Avoid crash on OOM in virbuftest (Daniel P. Berrange),<br />
      Avoid uninitialized data in qemuMonitorTestNew (Daniel P. Berrange),<br />
      Avoid double free in qemuMonitorCommonTestInit on OOM (Daniel P. Berrange),<br />
      Fix leak on OOM in qemuMonitorCommonTestNew (Daniel P. Berrange),<br />
      Don't ignore errors parsing nwfilter rules (Daniel P. Berrange),<br />
      Fix leak in virLockSpaceResourceFree (Daniel P. Berrange),<br />
      Fix leak of parser state in virJSONValueFromString (Daniel P. Berrange),<br />
      Fix double-free in virJSONParserHandleStartMap on OOM (Daniel P. Berrange),<br />
      Fix leak of iterators in virDBusMessageIterEncode (Daniel P. Berrange),<br />
      Fix leak of comment string if virConfAddEntry fails on OOM (Daniel P. Berrange),<br />
      Add missing check for OOM with virVMXEscapeHexPipe (Daniel P. Berrange),<br />
      Fix crash on OOM parsing storage pool XML (Daniel P. Berrange),<br />
      Fix double free of hostdev on OOM in xenParseSxprPCI (Daniel P. Berrange),<br />
      Don't clobber 'ret' in LXC XML test case (Daniel P. Berrange),<br />
      Fix crash on OOM in virDomainSnapshotDefParse (Daniel P. Berrange),<br />
      Don't clobber return value in virInterfaceDefParseProtoIPv6 (Daniel P. Berrange),<br />
      Fix handling of OOM when getting Xen dom ID (Daniel P. Berrange),<br />
      Fix crash on OOM in xenParseSxpr (Daniel P. Berrange),<br />
      virsh-domain: Add a missing check and fix leak in cmdScreenshot (Hongwei Bi),<br />
      Fix leak of serial value in xenFormatXM on OOM (Daniel P. Berrange),<br />
      Fix broken formatting on OOM in xenFormatXM (Daniel P. Berrange),<br />
      Fix crash on OOM in xenParseXM handling consoles (Daniel P. Berrange),<br />
      Fix leak of char device in xenParseXM (Daniel P. Berrange),<br />
      Fix leak of command line args in qemuParseCommandLine (Daniel P. Berrange),<br />
      Fix leak in qemuParseCommandLine on OOM (Daniel P. Berrange),<br />
      Fix leak in qemuStringToArgvEnv upon OOM (Daniel P. Berrange),<br />
      Fix missing jump to error cleanup in qemuParseCommandLineDisk (Daniel P. Berrange),<br />
      Fix leak in qemuParseCommandLineDisk on OOM (Daniel P. Berrange),<br />
      Fix leak on OOM in qemuBuildCommandLine dealing with sound card (Daniel P. Berrange),<br />
      Fix failure to honour OOM status in qemuParseNBDString (Daniel P. Berrange),<br />
      Avoid leak in qemuParseRBDString on failure of qemuAddRBDHost (Daniel P. Berrange),<br />
      Fix leak of address string in qemuDomainPCIAddressGetNextSlot (Daniel P. Berrange),<br />
      Fix leak in virDomainDefParseXML parsing vcpupin (Daniel P. Berrange),<br />
      Fix leak in virDomainVcpuPinDefParseXML parsing cpumask (Daniel P. Berrange),<br />
      Avoid leak if virDomainSoundCodecDefParseXML return error (Daniel P. Berrange),<br />
      Fix leak in virDomainVcpuPinDefArrayFree (Daniel P. Berrange),<br />
      Check return value of virDomainControllerInsert when parsing QEMU args (Daniel P. Berrange),<br />
      Honour error returned by virBitmapFormat (Daniel P. Berrange),<br />
      Add missing check for OOM when building boot menu args (Daniel P. Berrange),<br />
      Fix format specifier for OOM test fprintfs (Daniel P. Berrange),<br />
      Always open files in binary mode in virFDStreamOpenFileInternal (Claudio Bley),<br />
      Don't ignore allocation failure in virCommandAddEnvPassCommon (Daniel P. Berrange),<br />
      Fix reporting of errors in OOM injection code (Daniel P. Berrange),<br />
      Fix missing OOM check in qemuParseCommandLine when splitting strings (Daniel P. Berrange),<br />
      Fix error checking of qemuParseKeywords return status (Daniel P. Berrange),<br />
      Fix allocation of arglist in qemuStringToArgvEnv (Daniel P. Berrange),<br />
      Fix crash on OOM in qemuAddRBDHost (Daniel P. Berrange),<br />
      Fix crash on OOM in qemuDomainCCWAddressSetCreate() (Daniel P. Berrange),<br />
      Fix crash if OOM occurs when creating virConnectPtr (Daniel P. Berrange),<br />
      Fix crash on OOM in parsing CPU mask in domain XML (Daniel P. Berrange),<br />
      Fix crash on OOM when parsing disk security label (Daniel P. Berrange),<br />
      Fix typo in identity code which is pre-requisite for CVE-2013-4311 (Daniel P. Berrange),<br />
      Fix potential use of uninitialized value in virDomainGetVcpuPinInfo (Daniel P. Berrange),<br />
      qemu: Fix seamless SPICE migration (Martin Kletzander),<br />
      Don't dereference NULL in qemumonitorjsontest (Ján Tomko),<br />
      Add checking of dbus_message_iter_append_basic return value (Daniel P. Berrange),<br />
      qemu: use "ide" as device name for implicit SATA controller on Q35 (Laine Stump),<br />
      qemu: Avoid dangling job in qemuDomainSetBlockIoTune (Jiri Denemark),<br />
      conf: Don't corrupt metadata on OOM (Peter Krempa),<br />
      qemu: Fix memleak after commit 59898a88ce8431bd3ea249b8789edc2ef9985827 (Peter Krempa),<br />
      qemu: Use "migratable" XML definition when doing external checkpoints (Peter Krempa),<br />
      qemu: Fix checking of ABI stability when restoring external checkpoints (Peter Krempa),<br />
      virsh: Fix a wrong check in cmdEcho() (Hongwei Bi),<br />
      Always free network and graphics cookies (Ján Tomko),<br />
      Free slicename in virSystemdCreateMachine (Ján Tomko),<br />
      Fix naming of permission for detecting storage pools (Daniel P. Berrange),<br />
      qemu: Fix checking of guest ABI compatibility when reverting snapshots (Peter Krempa),<br />
      netcf driver: use a single netcf handle for all connections (Laine Stump),<br />
      Fix launching of VMs on when only logind part of systemd is present (Daniel P. Berrange),<br />
      Fix polkit permission names for storage pools, vols &amp; node devices (Daniel P. Berrange),<br />
      virsh domjobinfo: Do not return 1 if job is NONE (Jiri Denemark),<br />
      virDomainDefParseXML: set the argument of virBitmapFree to NULL after calling virBitmapFree (Liuji (Jeremy)),<br />
      cpu: Cleanup ppcCompute to avoid memory leak (Li Zhang),<br />
      qemu: don't leak vm on failure (Eric Blake),<br />
      LXC: Free variable vroot in lxcDomainDetachDeviceHostdevUSBLive() (Hongwei Bi),<br />
      qemu: don't leave shutdown inhibited on attach failure (Eric Blake),<br />
      libxl: Compile regular expression where it is used (Jim Fehlig),<br />
      Don't call regfree() if regcomp() fails (Jim Fehlig),<br />
      Use loop-control to allocate loop device. (Ian Main),<br />
      LXC: Don't mount securityfs when user namespace enabled (Gao feng),<br />
      Stop free'ing 'const char *' strings (Daniel P. Berrange),<br />
      conf: Don't deref NULL actual network in virDomainNetGetActualHostdev() (Peter Krempa),<br />
      libxl: Check for regcomp failure (Jim Fehlig),<br />
      libxl: Fix Coverity warning (Jim Fehlig),<br />
      Don't call VIR_ALLOC on def-&gt;uuid in parallels storage driver (Daniel P. Berrange),<br />
      qemu: Make domain renaming work during migration (Jiri Denemark),<br />
      AppArmorSetSecurityImageLabel: Avoid use of uninitialized variable (Michal Privoznik),<br />
      build: fix typo that broke 'make dist' (Eric Blake),<br />
      esx_driver: Resolve Coverity RESOURCE_LEAK on error paths (John Ferlan),<br />
      esx_vi: Resolve Coverity RESOURCE_LEAK in error path (John Ferlan),<br />
      test_virtlockd.aug.in: Use the correct file (Michal Privoznik),<br />
      virsh-console: Avoid using signal() in multithreaded application (Peter Krempa),<br />
      qemu: Handle huge number of queues correctly (Michal Privoznik),<br />
      Fix leaks in python bindings (Ján Tomko),<br />
      virsh-domain: Avoid killing ssh transport tunnels when cancelling job (Peter Krempa),<br />
      qemu: Fix networking for ARM guests (Cole Robinson),<br />
      qemu: Don't try to allocate PCI addresses for ARM (Cole Robinson),<br />
      Fix AM_LDFLAGS typo (Guido Günther)<br />
      </li><li>Improvements:<br />
      VMware: Add Fusion version test (Doug Goldstein),<br />
      VMware: Support more than 2 driver backends (Doug Goldstein),<br />
      Makefile.am: Always include rule to make org.libvirt.api.policy (Michal Privoznik),<br />
      event: Make debug message match function comments (Doug Goldstein),<br />
      lxc: fix a warning typo in virLXCControllerEventSend (Chen Hanxiao),<br />
      Distribute check-aclperms.pl (Guido Günther),<br />
      conf: clean up virDomainChrSourceDefParseXML (Peter Krempa),<br />
      spec: Clean up distribution of ChangeLog (and others) (Cole Robinson),<br />
      test: Allow specifying object runstate in driver XML (Cole Robinson),<br />
      Don't print all test suite errors to stderr in vmx2xmltest (Daniel P. Berrange),<br />
      qemu: prefer to put a Q35 machine's dmi-to-pci-bridge at 00:1E.0 (Laine Stump),<br />
      qemu: turn if into switch in qemuDomainValidateDevicePCISlotsQ35 (Laine Stump),<br />
      qemu: support ich9-intel-hda audio device (Laine Stump),<br />
      qemu: replace multiple strcmps with a switch on an enum (Laine Stump),<br />
      qemu: allow some PCI devices to be attached to PCIe slots (Laine Stump),<br />
      qemu: eliminate redundant if clauses in qemuCollectPCIAddress (Laine Stump),<br />
      bridge driver: don't masquerade local subnet broadcast/multicast packets (Laszlo Ersek),<br />
      util/viriptables: add/remove rules that short-circuit masquerading (Laszlo Ersek),<br />
      qemu: Wire up better early error reporting (Peter Krempa),<br />
      qemu: monitor: Produce better errors on monitor hangup (Peter Krempa),<br />
      qemu: monitor: Add infrastructure to access VM logs for better err msgs (Peter Krempa),<br />
      qemu_process: Make qemuProcessReadLog() more versatile and reusable (Peter Krempa),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      test: fix call to virFDStreamOpenFile in testDomainScreenshot (Claudio Bley),<br />
      Add test case for virNetServerClient object identity code (Daniel P. Berrange),<br />
      Add a virNetSocketNewConnectSockFD method (Daniel P. Berrange),<br />
      python: add bindings for virConnectGetCPUModelNames (Giuseppe Scrivano),<br />
      virsh: add function to get the CPU models for an arch (Giuseppe Scrivano),<br />
      virConnectGetCPUModelNames: add the support for the test protocol (Giuseppe Scrivano),<br />
      virConnectGetCPUModelNames: add the support for qemu (Giuseppe Scrivano),<br />
      virConnectGetCPUModelNames: implement the remote protocol (Giuseppe Scrivano),<br />
      cpu: add function to get the models for an arch (Giuseppe Scrivano),<br />
      build: ensure 'make check' sees up-to-date config.h (Eric Blake),<br />
      docs: Load libvirt_access*.xml from build dir (Jiri Denemark),<br />
      LXC: Check the existence of dir before resolving symlinks (Chen Hanxiao),<br />
      LXC: follow the unit style of /proc/meminfo (Chen Hanxiao),<br />
      conf: Do better job when comparing features ABI compatibility (Peter Krempa),<br />
      VMware: Make version parsing testable and add tests (Doug Goldstein),<br />
      VMware: Store vmrun binary's path in the driver (Doug Goldstein),<br />
      VMware: Convert driver type defines to enum (Doug Goldstein),<br />
      virsh: add missing "async" option in opts_block_commit (Simone Gotti),<br />
      qemumonitorjsontest: Introduce DO_TEST_SIMPLE (Michal Privoznik),<br />
      qemumonitorjsontest: Test CPU state handling code (Michal Privoznik),<br />
      daemon: Remove more hardcoded paths from help output (Christophe Fergeau),<br />
      Fix LIBVIRTD_CONFIGURATION_FILE constant (Christophe Fergeau),<br />
      Ensure system identity includes process start time (Daniel P. Berrange),<br />
      Also store user &amp; group ID values in virIdentity (Daniel P. Berrange),<br />
      daemon: Don't hardcode pki paths in help output (Christophe Fergeau),<br />
      daemon: Fix 'caert.pem' typo in privileged help output (Christophe Fergeau),<br />
      virsh: Add vshCompleter to each option (Tomas Meszaros),<br />
      Add forwarder attribute to &lt;dns/&gt; element (Diego Woitasen),<br />
      VMX: Add a VMWare Fusion 5 configuration for tests (Doug Goldstein),<br />
      VMX: Add support for 'auto detect' fileNames (Doug Goldstein),<br />
      Allow &lt;source&gt; for type=block to have no dev (Doug Goldstein),<br />
      maint: ignore recently-added test (Eric Blake),<br />
      tests: metadatatest: Quiesce errors on expected paths (Peter Krempa),<br />
      test: Refactor setting of dummy error handlers (Peter Krempa),<br />
      Add tftp protocol support for cdrom disk (Aline Manera),<br />
      Add ftps protocol support for cdrom disk (Aline Manera),<br />
      Add https protocol support for cdrom disk (Aline Manera),<br />
      tests: Add metadata tests (Peter Krempa),<br />
      test: Add &lt;metadata&gt; support into the test driver (Peter Krempa),<br />
      lxc: Add metadata modification APIs (Peter Krempa),<br />
      lib: Don't force the key argument when deleting metadata (Peter Krempa),<br />
      conf: allow to add XML metadata using the virDomainSetMetadata api (Peter Krempa),<br />
      conf: Add support for requesting of XML metadata via the API (Peter Krempa),<br />
      virsh-domain: Add command to allow modifications of XML metadata (Peter Krempa),<br />
      virsh-domain: use virXMLNodeToString instead of xmlNodeDump (Peter Krempa),<br />
      util: Add helper to convert libxml2 nodes to a string (Peter Krempa),<br />
      conf: Factor out setting of metadata to simplify code (Peter Krempa),<br />
      qemu: Factor out body of qemuDomainSetMetadata for universal use (Peter Krempa),<br />
      qemu: Factor out body of qemuDomainGetMetadata for universal use (Peter Krempa),<br />
      virsh-domain: Line up signal names array (Peter Krempa),<br />
      virsh-domain: Remove spurious ATTRIBUTE_UNUSED from cmdDesc (Peter Krempa),<br />
      Allow LUN type disks to have no source (Doug Goldstein),<br />
      cgroup: Move [qemu|lxc]GetCpuBWStatus to vicgroup.c and refactor it (Peter Krempa),<br />
      cleanup: Kill usage of access(PATH, F_OK) in favor of virFileExists() (Peter Krempa),<br />
      util: Declare that virFileExists shall honor errno (Peter Krempa),<br />
      virsh: move command maxvcpus from domain group to host group. (yangdongsheng),<br />
      tools: add missing 'interface' type and update man page (Alex Jia),<br />
      tests: Don't test user config file if ran as root (Martin Kletzander),<br />
      test-lib: Make case skipping possible (Martin Kletzander),<br />
      LXC: don't try to mount selinux filesystem when user namespace enabled (Gao feng),<br />
      rename "struct interface_driver" to virNetcfDriverState (Laine Stump),<br />
      Ensure root filesystem is recursively mounted readonly (Daniel P. Berrange),<br />
      Move array of mounts out of lxcContainerMountBasicFS (Daniel P. Berrange),<br />
      Fix virsystemdtest for previous commit (Daniel P. Berrange),<br />
      DBus: introduce virDBusIsServiceEnabled (Gao feng),<br />
      LXC: introduce lxcContainerUnmountForSharedRoot (Gao feng),<br />
      LXC: umount the temporary filesystem created by libvirt (Gao feng),<br />
      Add test for the nodemask double free crash (Ján Tomko),<br />
      Fix cgroups when all are mounted on /sys/fs/cgroup (Daniel P. Berrange),<br />
      qemu: endjob returns a bool (Eric Blake),<br />
      build: use automake subdir-objects (Eric Blake),<br />
      tests: check remaining .x files (Eric Blake),<br />
      build: use library rather than cross-directory compilation (Eric Blake),<br />
      build: avoid $(srcdir) in *_SOURCES (Eric Blake),<br />
      Add ARM v7 big-endian architecture (armv7b) (Yogesh Tillu),<br />
      qemu: avoid users specifying CPU features for non-x86 plaftorm. (Li Zhang),<br />
      qemu: recognize -machine accel=kvm when parsing native (Eric Blake),<br />
      qemu: only parse basename when determining emulator properties (Eric Blake),<br />
      spec: make client-only testing easier (Eric Blake),<br />
      build: shut up automake warnings (Eric Blake),<br />
      Change 'shortforward' to bool. (Ján Tomko),<br />
      Add '&lt;nat&gt;' element to '&lt;forward&gt;' network schemas (Ján Tomko),<br />
      cpu: Add cpu test cases for PPC CPU driver. (Li Zhang),<br />
      cpu: Implement guestData and update for PPC (Li Zhang),<br />
      qemu: Remove CPU features functions calling for non-x86 platform. (Li Zhang),<br />
      Stop calling virAllocN directly from ESX code (Daniel P. Berrange),<br />
      virDomainDeviceIsUSB: Drop check for USB controller (Liuji (Jeremy)),<br />
      Ensure 'arch' is always set in cpuArchNodeData (Daniel P. Berrange),<br />
      qemu: simplify list cleanup (Eric Blake),<br />
      libxl: Unconditionally call virSysinfoRead() on driver init (Jim Fehlig),<br />
      spec: default vbox according to libvirtd build (Eric Blake),<br />
      build: only install nwfilter examples when building nwfilter (Eric Blake),<br />
      build: only run fdstreamtest when libvirtd is built (Eric Blake),<br />
      virGet{User,Group}Ent() don't say success on fail (Doug Goldstein),<br />
      build: enforce makefile conditional style (Eric Blake),<br />
      Add missing 'libvirt_lxc_api' variable in pkg-config file (Daniel P. Berrange),<br />
      Fix coding style issues in daemon/remote.c (Nehal J Wani),<br />
      conf: Remove the actual hostdev when removing a network (Peter Krempa),<br />
      libxl: Use standard format for source file copyright notice (Jim Fehlig),<br />
      libxl: Add libxlDomObjFromDomain (Jim Fehlig),<br />
      libxl: Remove unnecessary driver locking (Jim Fehlig),<br />
      libxl: Move driver lock/unlock to libxl_conf (Jim Fehlig),<br />
      libxl: Add comments to libxlDriverPrivate fields (Jim Fehlig),<br />
      libxl: Use atomic ops for driver-&gt;nactive (Jim Fehlig),<br />
      libxl: Introduce libxlDriverConfig object (Jim Fehlig),<br />
      libxl: User per-domain ctx in libxlDomainGetInfo (Jim Fehlig),<br />
      libxl: libxl: Use per-domain ctx in libxlMakeDomCreateInfo (Jim Fehlig),<br />
      libxl: Add libxl_version_info to libxlDriverPrivate (Jim Fehlig),<br />
      libxl: Earlier detection of not running on Xen (Jim Fehlig),<br />
      libxl: Introduce libxl_domain.[ch] (Jim Fehlig),<br />
      libxl: Move detection of autoballoon to libxl_conf (Jim Fehlig),<br />
      virsh: Rename vshMakeStdinRaw to vshTTYMakeRaw and move it to virsh.c (Peter Krempa),<br />
      tools: rename console.[ch] to virsh-console.[ch] and fix coding style (Peter Krempa),<br />
      virsh: Remember terminal state when starting and add helpers (Peter Krempa),<br />
      VMX: Add cdrom-raw dev type from VMWare Fusion (Doug Goldstein),<br />
      VMX: Some serial ports are not actually connected (Doug Goldstein),<br />
      qemu: Support virtio-mmio transport for virtio on ARM (Cole Robinson),<br />
      domain_conf: Add disk bus=sd, wire it up for qemu (Cole Robinson),<br />
      qemu: Fix specifying char devs for ARM (Cole Robinson),<br />
      qemu: Don't add default memballoon device on ARM (Cole Robinson),<br />
      domain_conf: Add default memballoon in PostParse callbacks (Cole Robinson),<br />
      qemu: Set QEMU_AUDIO_DRV=none with -nographic (Cole Robinson),<br />
      Pass AM_LDFLAGS to driver modules too (Guido Günther),<br />
      qemu: Support setting the 'removable' flag for USB disks (Fred A. Kemp),<br />
      qemu: Add capability flag for usb-storage (Fred A. Kemp),<br />
      VMX: Create virVMXFormatDisk() from HD and CD-ROM (Doug Goldstein)<br />
      </li><li>Cleanup:<br />
      daemon: Avoid dead code in polkit auth (Jiri Denemark)<br />
      </li></ul>
        <h3>1.1.2: Sep 2 2013</h3>
        <ul><li>Features:<br />
      various improvements to libxl driver (Jim Fehlig, Bamvor Jian Zhang),<br />
      systemd integration improvements (Daniel P. Berrange, Mooli Tayer),<br />
      Add flag to BaselineCPU API to return detailed CPU features (Don Dugger),<br />
      Introduce a virt-login-shell binary (Dan Walsh),<br />
      conf: add startupPolicy attribute for harddisk (Guannan Ren)<br />
      </li><li>Security:<br />
      provide supplemental groups even when parsing label (CVE-2013-4291) (Eric Blake),<br />
      Add bounds checking on virDomainMigrate*Params RPC calls (CVE-2013-4292) (Daniel P. Berrange),<br />
      CVE-2013-5651 virbitmap: Refactor virBitmapParse to avoid access beyond bounds of array (Peter Krempa),<br />
      CVE-2013-4239 xen: fix memory corruption in legacy driver (Jim Fehlig)<br />
      </li><li>Documentation:<br />
      Reformat &lt;disk&gt; attribute description in formatdomain (John Ferlan),<br />
      Update iSCSI storage pool example (John Ferlan),<br />
      Update formatsecrets to include more examples of each type (John Ferlan),<br />
      Update the formatdomain disk examples (John Ferlan),<br />
      Clean 09adfdc62de2b up (Michal Privoznik),<br />
      virt-pki-validate: add --help/--version option (Eric Blake),<br />
      virt-xml-validate: add --help/--version option (Eric Blake),<br />
      Discourage users to set hard_limit (Michal Privoznik),<br />
      Update polkit examples to use 'lookup' method (Daniel P. Berrange),<br />
      fix usb node device sub-element names (Xuesong Zhang),<br />
      virt-login-shell: improve error message grammar (Ruben Kerkhof),<br />
      storage pool permission copy-paste fix (Philipp Hahn),<br />
      mention VIR_TEST_RANGE (Eric Blake),<br />
      Document use of systemd socket activation (Daniel P. Berrange),<br />
      Remove leftovers from hyperv spinlocks documentation (Ján Tomko),<br />
      Fix typo in domain name in polkit acl example (Daniel P. Berrange),<br />
      Add documentation for access control system (Daniel P. Berrange),<br />
      Add an example config file for virtlockd (Daniel P. Berrange),<br />
      Add a man page for virtlockd daemon (Daniel P. Berrange),<br />
      Add info about access control checks into API reference (Daniel P. Berrange),<br />
      Fix minor typos in messages and docs (Yuri Chornoivan)<br />
      </li><li>Portability:<br />
      build: fix virtlockd file distribution (Eric Blake),<br />
      build: shipped files must not depend on BUILT_SOURCES (Eric Blake),<br />
      build: only create virt-login-shell for lxc builds (Eric Blake),<br />
      qemu: Only setup vhost if virtType == "kvm" (Cole Robinson),<br />
      Process virtlockd.conf instead of libvirtd.conf (Guido Günther),<br />
      Change way we fake dbus method calls (Daniel P. Berrange),<br />
      random: don't mix RAND_MAX with random_r (Eric Blake),<br />
      tests: skip schema validation tests if xmllint is missing (Eric Blake),<br />
      Check for --no-copy-dt-needed linker flag (Guido Günther),<br />
      Simplify RELRO_LDFLAGS (Guido Günther),<br />
      tests: fix building without xattr support (Claudio Bley),<br />
      nwfilter: Don't fail to start if DBus isn't available (Peter Krempa),<br />
      virsystemd: Don't fail to start VM if DBus isn't available or compiled in (Peter Krempa),<br />
      tools: Make sure to distribute conf_DATA, fix RPM build (Cole Robinson),<br />
      Directly link against needed libraries (Guido Günther),<br />
      Directly link against needed libraries (Guido Günther),<br />
      build: avoid -lgcrypt with newer gnutls (Eric Blake),<br />
      build: more workarounds for if_bridge.h (Eric Blake),<br />
      tests: avoid too-large constants (Eric Blake),<br />
      tests: work with older dbus (Eric Blake),<br />
      build: fix compilation of virt-login-shell.c (Jim Fehlig),<br />
      maint: the compiler is not always named gcc (Eric Blake),<br />
      build: fix qemuagenttest build with -O0 in fedora 19. (Jincheng Miao),<br />
      spec: RHEL-7 does not have sanlock on i686 (Jiri Denemark),<br />
      spec: Disable libssh2 support for RHEL (Peter Krempa)<br />
      </li><li>Bug Fixes:<br />
      qemu_hotplug: Resolve DEADCODE coverity error (John Ferlan),<br />
      Fix memory leak in cmdAttachDisk (Hongwei Bi),<br />
      python: Fix a PyList usage mistake (Guan Qiang),<br />
      qemu: Remove hostdev entry when freeing the depending network entry (Peter Krempa),<br />
      virsh: detect programming errors with option parsing (Eric Blake),<br />
      virt-sanlock-cleanup; Fix augtool usage (Jiri Denemark),<br />
      virsh: Fix debugging (Martin Kletzander),<br />
      virsh: free the caps list properly if one of them is invalid (Ján Tomko),<br />
      virsh: free the formatting string when listing pool details (Ján Tomko),<br />
      virsh: free the list from ListAll APIs even for 0 items (Ján Tomko),<br />
      virsh: free messages after logging them to a file (Ján Tomko),<br />
      Test network update XML parsing (Ján Tomko),<br />
      Always specify qcow2 compat level on qemu-img command line (Ján Tomko),<br />
      virsh: fix return value error of cpu-stats (Guannan Ren),<br />
      Don't free NULL network in cmdNetworkUpdate (Ján Tomko),<br />
      schema: Allow dots in device aliases (Jiri Denemark),<br />
      qemu: Don't update count of vCPUs if hot-plug fails silently (Peter Krempa),<br />
      tests: Add URI precedence checking (Martin Kletzander),<br />
      Fix URI connect precedence (Martin Kletzander),<br />
      libxl: fix libvirtd crash when reconnecting domains (Jim Fehlig),<br />
      migration: do not restore labels on failed migration (Eric Blake),<br />
      storage: Fix the use-after-free memory bug (Osier Yang),<br />
      storage: Fix coverity warning (Osier Yang),<br />
      qemu_conf: Fix broken logic for adding passthrough iscsi lun (Osier Yang),<br />
      libxl: Resolve possible NULL dereference (John Ferlan),<br />
      virsh: Don't leak list of volumes when undefining domain with storage (Peter Krempa),<br />
      virbitmaptest: Shut coverity up in case of broken test (Peter Krempa),<br />
      storage: Update pool metadata after adding/removing/resizing volume (Osier Yang),<br />
      virbitmaptest: Add test for out of bounds condition (Peter Krempa),<br />
      virsh-domain: Fix memleak in cmdCPUBaseline (Peter Krempa),<br />
      libxl: unref DomainObjPrivate on error path (Jim Fehlig),<br />
      virsh-domain: Fix memleak in cmdUndefine with storage (Peter Krempa),<br />
      Fix qemuProcessReadLog with non-zero offset (Ján Tomko),<br />
      network: permit upstream forwarding of unqualified DNS names (Laine Stump),<br />
      virsh-domain: Flip logic in cmdSetvcpus (Peter Krempa),<br />
      Don't crash in qemuBuildDeviceAddressStr (Guido Günther),<br />
      libxl: fix libvirtd segfault (Jim Fehlig),<br />
      Make check for /dev/loop device names stricter to avoid /dev/loop-control (Daniel P. Berrange),<br />
      libxl: fix node ranges in libxlNodeGetCellsFreeMemory() (Dario Faggioli),<br />
      Fix double-free and broken logic in virt-login-shell (Daniel P. Berrange),<br />
      virnettlscontext: Resolve Coverity warnings (UNINIT) (John Ferlan),<br />
      remote: Fix a segfault in remoteDomainCreateWithFlags (Alex Jia),<br />
      qemu: Allow hotplug of multiple SCSI devices (Eric Farman),<br />
      Fix validation of CA certificate chains (Daniel P. Berrange),<br />
      Reverse logic allowing partial DHCP host XML (Ján Tomko),<br />
      xen: Use internal interfaces in xenDomainUsedCpus (Stefan Bader),<br />
      qemu_migration: Don't error on tunelled migration with --copy-storage (Michal Privoznik),<br />
      build: fix missing max_queued_clients in augeas test file for libvirtd.conf (Laine Stump),<br />
      Fix crashing upgrading from older libvirts with running guests (Daniel P. Berrange),<br />
      Avoid crash if NULL is passed for filename/funcname in logging (Daniel P. Berrange),<br />
      qemumonitortestutils: Don't skip va_end() on error path (Peter Krempa),<br />
      tests: Coverity found new NULL_RETURNS (John Ferlan),<br />
      Configuring systemd to restart libvirt on failure (Mooli Tayer),<br />
      xen: Avoid double free of virDomainDef in xenDaemonCreateXML (Stefan Bader)<br />
      </li><li>Improvements:<br />
      build: fix 'make distcheck' out of the box (Eric Blake),<br />
      virsh-domain: rename print_job_progress to vshPrintJobProgress (Peter Krempa),<br />
      Prohibit unbounded arrays in XDR protocols (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllSecrets RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllNWFilters RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllNodeDevices RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllInterfaces RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllNetworks RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virStoragePoolListAllVolumes RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllStoragePools RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virConnectListAllDomains RPC call (Daniel P. Berrange),<br />
      Add bounds checking on virDomain{SnapshotListAllChildren,ListAllSnapshots} RPC calls (Daniel P. Berrange),<br />
      Add bounds checking on virDomainGetJobStats RPC call (Daniel P. Berrange),<br />
      autogen.sh: Correctly detect .git as a file (Michal Privoznik),<br />
      bridge_driver: Introduce networkObjFromNetwork (Michal Privoznik),<br />
      virsh-pool.c: Don't jump over variable declaration (Michal Privoznik),<br />
      Remove the space before the slash in network XML (Ján Tomko),<br />
      Build QEMU command line for pcihole64 (Ján Tomko),<br />
      Add pcihole64 element to root PCI controllers (Ján Tomko),<br />
      Allow controller XML parsing to use XPath context (Ján Tomko),<br />
      Move virDomainParseScaledValue earlier (Ján Tomko),<br />
      Add ftp protocol support for cdrom disk (Aline Manera),<br />
      Add http protocol support for cdrom disk (Aline Manera),<br />
      virsh: C99 style for info_domfstrim and opts_lxc_enter_namespace (Tomas Meszaros),<br />
      qemuDomainAttachHostPciDevice: Fall back to mem balloon if there's no hard_limit (Michal Privoznik),<br />
      qemuhotplugtest: Add tests for virtio SCSI disk hotplug (Jiri Denemark),<br />
      qemuhotplugtest: Add tests for USB disk hotplug (Jiri Denemark),<br />
      qemuhotplugtest: Add tests for async virtio disk detach (Jiri Denemark),<br />
      qemuhotplugtest: Add support for DEVICE_DELETED event (Jiri Denemark),<br />
      qemu: Let tests override waiting time for device unplug (Jiri Denemark),<br />
      qemu: Export qemuProcessHandleDeviceDeleted for tests (Jiri Denemark),<br />
      tests: Add support for passing driver to qemu monitor (Jiri Denemark),<br />
      tests: Add support for passing vm to qemu monitor (Jiri Denemark),<br />
      qemuhotplugtest: Add tests for virtio disk hotplug (Jiri Denemark),<br />
      qemuxml2argvtest: Add XML for testing device hotplug (Jiri Denemark),<br />
      qemuhotplugtest: Define QMP_OK for the most common reply (Jiri Denemark),<br />
      qemuhotplugtest: Compare domain XML after device hotplug (Jiri Denemark),<br />
      qemuhotplugtest: Generate better output (Jiri Denemark),<br />
      qemu: Move qemuDomainDetachDeviceDiskLive to qemu_hotplug.c (Jiri Denemark),<br />
      qemu: Move qemuDomainAttachDeviceDiskLive to qemu_hotplug.c (Jiri Denemark),<br />
      qemu: Avoid using global qemu_driver in event handlers (Jiri Denemark),<br />
      qemu: Typedef monitor callbacks (Jiri Denemark),<br />
      python: simplify complicated conditional assignment (Claudio Bley),<br />
      Test for object identity when checking for None in Python (Claudio Bley),<br />
      qemuagenttest.c: Missing documentation (Timeout) (Nehal J Wani),<br />
      python: Use RELRO_LDFLAGS and NO_INDIRECT_LDFLAGS (Guido Günther),<br />
      Set security label on FD for virDomainOpenGraphics (Daniel P. Berrange),<br />
      qemuBuildNicDevStr: Add mq=on for multiqueue networking (Michal Privoznik),<br />
      virBitmapParse: Fix behavior in case of error and fix up callers (Peter Krempa),<br />
      VMX: Improve disk parse error for unknown values (Doug Goldstein),<br />
      bridge driver: implement networkEnableIpForwarding for BSD (Roman Bogorodskiy),<br />
      BSD: implement virNetDev(Set|Clear)IPv4Address (Roman Bogorodskiy),<br />
      Test handling of non-existent x509 certs (Daniel P. Berrange),<br />
      Report secret usage error message similarly (John Ferlan),<br />
      virsh: Print cephx and iscsi usage (John Ferlan),<br />
      selinux: enhance test to cover nfs label failure (Eric Blake),<br />
      selinux: distinguish failure to label from request to avoid label (Eric Blake),<br />
      virsh-pool: Improve error message in cmdPoolList (Peter Krempa),<br />
      virsh: modify vshStringToArray to duplicate the elements too (Peter Krempa),<br />
      qemuBuildCommandLine: Fall back to mem balloon if there's no hard_limit (Michal Privoznik),<br />
      qemuSetupMemoryCgroup: Handle hard_limit properly (Michal Privoznik),<br />
      virt-xml-validate: add missing schemas (Eric Blake),<br />
      libxl: implement NUMA capabilities reporting (Jim Fehlig),<br />
      virdbus: Add virDBusHasSystemBus() (Peter Krempa),<br />
      Make max_clients in virtlockd configurable (David Weber),<br />
      snapshot_conf: Allow parsing an XML node (Cole Robinson),<br />
      test: Unify object XML parsing (Cole Robinson),<br />
      test: Simplify args passed to testDomainStartState (Cole Robinson),<br />
      test: Split object parsing into their own functions (Cole Robinson),<br />
      maint: slightly reduce configure size (Eric Blake),<br />
      libxl: refactor capabilities code (Jim Fehlig),<br />
      virbitmaptest: Fix function header formatting (Peter Krempa),<br />
      maint: update gnulib submodule (Eric Blake),<br />
      maint: fix typo for 'switch' (Eric Blake),<br />
      examples: support crash events in event-test.py (Giuseppe Scrivano),<br />
      cpu: Add Power7+ and Power8 CPU definition in map.xml (Li Zhang),<br />
      Ensure that /dev exists in the container root filesystem (Daniel P. Berrange),<br />
      Properly handle -h / -V for --help/--version aliases in virtlockd/libvirtd (Daniel P. Berrange),<br />
      Address missed feedback from review of virt-login-shell (Daniel P. Berrange),<br />
      Honour root prefix in lxcContainerMountFSBlockAuto (Daniel P. Berrange),<br />
      tests: Fix parallel runs of TLS test suites (Martin Kletzander),<br />
      cgroup macros refactoring, part 5 (Roman Bogorodskiy),<br />
      cgroup macros refactoring, part 4 (Roman Bogorodskiy),<br />
      cgroup macros refactoring, part 3 (Roman Bogorodskiy),<br />
      cgroup macros refactoring, part 2 (Roman Bogorodskiy),<br />
      cgroup macros refactoring, part 1 (Roman Bogorodskiy),<br />
      cgroup: functional sort (Eric Blake),<br />
      cgroup: topological sort (Eric Blake),<br />
      cgroup: use consistent formatting (Eric Blake),<br />
      Add missing ATTRIBUTE_UNUSED (Guido Günther),<br />
      virsh: nicer abort of blockcopy (Eric Blake),<br />
      tests: Skip virsh-all test as expensive (Peter Krempa),<br />
      qemuagenttest: Test timeout of agent commands (Peter Krempa),<br />
      tests: add helper to determine when to skip expensive tests (Eric Blake),<br />
      build: add configure option to disable gnulib tests (Eric Blake),<br />
      qemuagenttest: Test arbitrary command passthrough (Peter Krempa),<br />
      Record the where the auto-generated data comes from (Daniel P. Berrange),<br />
      tests: test negative number through dbus (Eric Blake),<br />
      libxl: Create per-domain log file (Jim Fehlig),<br />
      Fix parallel runs of TLS test suites (Daniel P. Berrange),<br />
      configure: fix formatting of missing pkg-config modules error (Giuseppe Scrivano),<br />
      Ensure securityfs is mounted readonly in container (Dan Walsh),<br />
      Change data passed into TLS test cases (Daniel P. Berrange),<br />
      Avoid re-generating certs every time (Daniel P. Berrange),<br />
      Split TLS test into two separate tests (Daniel P. Berrange),<br />
      maint: avoid C99 loop declaration (Eric Blake),<br />
      qemu: support to drop disk with 'optional' startupPolicy (Guannan Ren),<br />
      nwfilter: Use -m conntrack rather than -m state (Stefan Berger),<br />
      virGetGroupList: always include the primary group (Guido Günther),<br />
      qemu: improve error reporting during PCI address validation (Laine Stump),<br />
      qemu: enable using implicit sata controller in q35 machines (Laine Stump),<br />
      qemu: properly set/use device alias for pci controllers (Laine Stump),<br />
      qemu: fix handling of default/implicit devices for q35 (Laine Stump),<br />
      qemu: add dmi-to-pci-bridge controller (Laine Stump),<br />
      qemu: add pcie-root controller (Laine Stump),<br />
      qemu: enable auto-allocate of all PCI addresses (Laine Stump),<br />
      Introduce max_queued_clients (Michal Privoznik),<br />
      RPC: Don't accept client if it would overcommit max_clients (Michal Privoznik),<br />
      qemu: eliminate almost-duplicate code in qemu_command.c (Laine Stump),<br />
      qemu: rename some functions in qemu_command.c (Laine Stump),<br />
      conf: add default USB controller in qemu post-parse callback (Laine Stump),<br />
      spec: Explicitly claim ownership of channel subdir (Jiri Denemark),<br />
      Ensure LXC/QEMU APIs set the filename for errors (Daniel P. Berrange),<br />
      Remove reference to python/tests from RPM %doc (Daniel P. Berrange),<br />
      qemuagenttest: Check invalid response in shutdown test (Peter Krempa),<br />
      qemuagenttest: Fix checking of shutdown mode (Peter Krempa),<br />
      bridge driver: extract platform specifics (Roman Bogorodskiy),<br />
      valgrind: Adjust filter for _dl_allocate_tls (John Ferlan),<br />
      maint: use modern autoconf idioms (Eric Blake),<br />
      qemu: check presence of each disk and its backing file as well (Guannan Ren),<br />
      qemu: add helper functions for diskchain checking (Guannan Ren),<br />
      qemu: refactor qemuDomainCheckDiskPresence for only disk presence check (Guannan Ren),<br />
      Enable support for systemd-machined in cgroups creation (Daniel P. Berrange),<br />
      Cope with races while killing processes (Daniel P. Berrange),<br />
      Add support for systemd cgroup mount (Daniel P. Berrange),<br />
      Add APIs for formatting systemd slice/scope names (Daniel P. Berrange),<br />
      qemuagenttest: Add tests for CPU plug functions and helpers (Peter Krempa),<br />
      qemuagenttest: Introduce testing of shutdown commands (Peter Krempa),<br />
      qemuagenttest: Add testing of agent suspend modes (Peter Krempa),<br />
      qemuagenttest: Test the filesystem trimming (Peter Krempa),<br />
      tests: Add qemuagenttest (Peter Krempa),<br />
      qemumonitortestutils: Add the ability to check arguments of commands (Peter Krempa),<br />
      qemumonitortestutils: Improve error reporting from mock qemu monitor (Peter Krempa),<br />
      qemumonitortestutils: Add instrumentation for guest agent testing (Peter Krempa),<br />
      qemumonitortestutils: Split lines on \n instead of \r\n (Peter Krempa),<br />
      qemumonitortestutils: Refactor the test helpers to allow reuse (Peter Krempa),<br />
      qemumonitortestutils: Split up creation of the test to allow reuse (Peter Krempa),<br />
      qemumonitortestutils: Don't crash on non fully initialized test (Peter Krempa),<br />
      qemumonitortestutils: remove multiline function calls (Peter Krempa),<br />
      qemumonitortestutils: Use VIR_DELETE_ELEMENT and VIR_APPEND_ELEMENT (Peter Krempa),<br />
      qemumonitortestutils: Use consistent header style and line spacing (Peter Krempa),<br />
      qemu_agent: Remove obvious comments (Peter Krempa),<br />
      qemu_agent: Move updater function for VCPU hotplug into qemu_agent.c (Peter Krempa),<br />
      qemu_agent: Output newline at the end of the sync JSON message (Peter Krempa),<br />
      conf: Export virDomainChrSourceDefClear() (Peter Krempa),<br />
      add console support in libxl (Bamvor Jian Zhang),<br />
      util: add virGetUserDirectoryByUID (Dan Walsh),<br />
      maint: fix typo for SENTINEL (Eric Blake),<br />
      spec: Don't mix commands with macro definitions (Jiri Denemark),<br />
      spec: Use --enable-werror on RHEL (Jiri Denemark),<br />
      tests: Put a mock library at the start of LD_PRELOAD (Jiri Denemark),<br />
      Support apparmor in RPM spec (Daniel P. Berrange),<br />
      Delete obsolete / unused python test files (Daniel P. Berrange)<br />
      </li><li>Cleanups:<br />
      qemu_hotplug: Fix whitespace around addition in argument (Peter Krempa),<br />
      qemu: Drop qemuDomainMemoryLimit (Michal Privoznik),<br />
      maint: avoid bootstrap warning (Eric Blake),<br />
      libxl: remove unnecessary curly braces (Jim Fehlig),<br />
      virtio-rng: Remove double space in error message (Peter Krempa),<br />
      Don't mark parentIndex with ATTRIBUTE_UNUSED (Ján Tomko)<br />
      </li></ul>
        <h3>1.1.1: July 30 2013</h3>
        <ul><li>Features:<br />
      Adding device removal or deletion events (Jiri Denemark),<br />
      Introduce new domain create APIs to pass pre-opened FDs to LXC (Daniel P. Berrange),<br />
      Add interface versions for Xen 4.3 (Stefan Bader),<br />
      Add new public API virDomainSetMemoryStatsPeriod (John Ferlan),<br />
      Various LXC improvements (Daniel P. Berrange and Gao feng)<br />
      </li><li>Security:<br />
      security: fix deadlock with prefork (Eric Blake),<br />
      CVE-2013-4153 qemu: Fix double free of returned JSON array in qemuAgentGetVCPUs() (Peter Krempa),<br />
      CVE-2013-4154 qemu: Prevent crash of libvirtd without guest agent configuration (Alex Jia),<br />
      CVE-2013-2230 Fix crash when multiple event callbacks were registered (Ján Tomko)<br />
      </li><li>Documentation:<br />
      formatdomain.html.in: Document implementation limitation of QoS (Michal Privoznik),<br />
      formatdomain.html.in: Correctly use <code></code> in #elementQoS (Michal Privoznik),<br />
      Fix copy-paste-error in virNodeGetMemoryStats (Philipp Hahn),<br />
      virsh: Mention --driver in man page for nodedev-detach (Peter Krempa),<br />
      maint: tweak use of &lt;a&gt; in HACKING (Eric Blake),<br />
      maint: fix typo in qemu error message (Eric Blake),<br />
      daemon: Fix command example in libvirtd.sasl (Cole Robinson),<br />
      Put virt-sanlock-cleanup into section 8 (Guido Günther),<br />
      Document hypervisor drivers that support certain timer models (Peter Krempa)<br />
      </li><li>Portability:<br />
      build: fix shunloadtest breakage (Eric Blake),<br />
      examples: fix mingw build vs. printf (Eric Blake),<br />
      build: skip systemd mock on non-Linux (Eric Blake),<br />
      Fix dbus message reading code on big endian hosts (Daniel P. Berrange),<br />
      build: fix another virdbus issue on mingw (Eric Blake),<br />
      build: fix virutil build on mingw (Eric Blake),<br />
      build: fix virthread build on mingw (Eric Blake),<br />
      build: fix virdbus build on mingw (Eric Blake),<br />
      build: fix vircgroup build on mingw (Eric Blake),<br />
      Conditionalize build of virCgroupValidateMachineGroup (Daniel P. Berrange),<br />
      build: fix VPATH 'make check' (Eric Blake),<br />
      cpu: Fix one compile error for PPC. (Li Zhang),<br />
      virdbustest: Don't pass number of arguments as long long (Guido Günther),<br />
      Fix virCgroupAvailable() w/o HAVE_GETMNTENT_R defined (Roman Bogorodskiy),<br />
      Fix link_addr detection (Roman Bogorodskiy),<br />
      build: work around broken kernel headers (Eric Blake),<br />
      dbus: work with older dbus (Eric Blake),<br />
      Use AC_LINK_IFELSE (Guido Günther),<br />
      Check for link_addr more thoroughly (Guido Günther),<br />
      Fix bridge routines detection on kFreeBSD (Roman Bogorodskiy),<br />
      Fix build with clang (Ján Tomko),<br />
      build: don't ship access syms files in tarball (Eric Blake),<br />
      build: work around mingw header pollution (Eric Blake),<br />
      build: avoid build failure without gnutls (Eric Blake)<br />
      </li><li>Bug Fixes:<br />
      Fix probing of legacy Xen driver to not leave URI set (Daniel P. Berrange),<br />
      caps: use -device for primary video when qemu &gt;1.6 (Guannan Ren),<br />
      Resolve Coverity complaint in storagevolxml2argvtest (Ján Tomko),<br />
      Don't check validity of missing attributes in DNS SRV XML (Ján Tomko),<br />
      Set the number of elements 0 in virNetwork*Clear (Ján Tomko),<br />
      conf:Fix a copy paste error (Alex Jia),<br />
      virLXCMonitorClose: Unlock domain while closing monitor (Michal Privoznik),<br />
      libxl: Correctly initialize vcpu bitmap (Stefan Bader),<br />
      Add new virAuth symbols to private.syms (Ján Tomko),<br />
      Use qemuOpenFile in qemu_driver.c (Martin Kletzander),<br />
      Make qemuOpenFile aware of per-VM DAC seclabel. (Martin Kletzander),<br />
      domain_event: Resolve memory leak found by Valgrind (John Ferlan),<br />
      lxc: Resolve Coverity warning (John Ferlan),<br />
      qemu: Take error path if acquiring of job fails in qemuDomainSaveInternal (Peter Krempa),<br />
      build: fix make rpm failure (Laine Stump),<br />
      virsh: fix change-media bug on disk block type (Guannan Ren),<br />
      tests: Free test at the end of GetDeviceAliases JSON test (Jiri Denemark),<br />
      vmware: Fix bogus CPU arch copy (Jiri Denemark),<br />
      qemu: Shorten SCSI hostdev alias to avoid QEMU failure (Viktor Mihajlovski),<br />
      Add virtio-scsi to fallback models of scsi controller (Martin Kletzander),<br />
      qemuhotplugtest: Resolve some memleaks (Michal Privoznik),<br />
      qemuDomainDetachChrDevice: Don't leak @charAlias (Michal Privoznik),<br />
      Fix impl of virDomainCreateWithFlags remote client helper (Daniel P. Berrange),<br />
      cgroup: reuse buffer for getline (Ján Tomko),<br />
      Create directory for lease files if it's missing (Guido Günther),<br />
      rbd: Do not free the secret if it is not set (Wido den Hollander),<br />
      Make logical pools independent on target path (Martin Kletzander),<br />
      qemu: add macvlan delete to qemuDomainAttachNetDevice cleanup (Matthew Rosato),<br />
      qemuBuildChrDeviceCommandLine: Don't leak devstr (Michal Privoznik),<br />
      conf: reject pci-root controllers with non-zero indexes (Ján Tomko),<br />
      nodeinfo: Don't fail on non-contiguous NUMA topologies (hejia hejia),<br />
      util: make virSetUIDGID async-signal-safe (Eric Blake),<br />
      qemu_hostdev: Resolve Coverity issue (John Ferlan),<br />
      storage_backend: Resolve Coverity issue (John Ferlan),<br />
      virsh-nodedev: Resolve Coverity issues (John Ferlan),<br />
      virsh-interface: Resolve Coverity issues (John Ferlan),<br />
      virsh-domain-monitor: Resolve Coverity issues (John Ferlan),<br />
      testutils: Resolve Coverity issues (John Ferlan),<br />
      hellolibvirt: Resolve Coverity issues (John Ferlan),<br />
      storage: return -1 when fs pool can't be mounted (Ján Tomko),<br />
      qemu: fix double free in qemuMigrationPrepareDirect (Ján Tomko),<br />
      Properly detect VMDK with internal version 2 (Martin Kletzander),<br />
      Resolve Coverity complaints in tests/securityselinuxlabeltest.c (John Ferlan),<br />
      Paused domain should remain paused after migration (Jiri Denemark),<br />
      conf: don't check hyperv spinlock retries if disabled (Ján Tomko),<br />
      Fix NULL dereference caused by ACL filtering of domains (Jiri Denemark),<br />
      Unlock the storage volume object after looking it up (Ján Tomko),<br />
      libxl: fix deadlock in libxlReconnectDomain (Marek Marczykowski-Górecki),<br />
      LXC: fix memory leak when userns configuration is incorrect (Gao feng),<br />
      virNetDevBandwidthUnplug: Don't leak @cmd (Michal Privoznik),<br />
      virCgroupNewPartition: Don't leak @newpath (Michal Privoznik),<br />
      qemuNodeDeviceDetachFlags: Avoid use of uninitialized variables (Michal Privoznik),<br />
      qemu: fix return value of qemuDomainBlockPivot on errors (Ján Tomko)<br />
      </li><li>Improvements:<br />
      tests: consistently use virFilePrintf (Eric Blake),<br />
      Rename VIR_DOMAIN_PAUSED_GUEST_PANICKED to VIR_DOMAIN_PAUSED_CRASHED (Daniel P. Berrange),<br />
      Remove VIR_DOMAIN_SHUTDOWN_CRASHED from public API (Daniel P. Berrange),<br />
      spec: Cat test-suite.log if make check fails (Jiri Denemark),<br />
      build: avoid uninitialized use warning (Eric Blake),<br />
      Set default partition in libvirtd instead of libvirt_lxc (Daniel P. Berrange),<br />
      virStateDriver - Separate AutoStart from Initialize (John Ferlan),<br />
      Separate out StateAutoStart from StateInitialize (John Ferlan),<br />
      Remove redundant free in virNetworkDNSHostDefParseXML (Ján Tomko),<br />
      Remove double space in error messages (Ján Tomko),<br />
      Fix virsh snapshot-list error reporting (Jim Fehlig),<br />
      Skip detecting placement if controller is disabled (Daniel P. Berrange),<br />
      Add 'controllers' arg to virCgroupNewDetect (Daniel P. Berrange),<br />
      Fix detection of 'emulator' cgroup (Daniel P. Berrange),<br />
      Make virCgroupIsValidMachine static (Daniel P. Berrange),<br />
      Introduce a more convenient virCgroupNewDetectMachine (Daniel P. Berrange),<br />
      Add inputpool to storagevolxml2argvtest (Ján Tomko),<br />
      Move volume XMLs out of storagevolxml2argvdata (Ján Tomko),<br />
      Move pool XML out of storagevolxml2argvdata (Ján Tomko),<br />
      Use separate macros for failure/success in vol-to-argv test (Ján Tomko),<br />
      tests: PCI controller checks (Ján Tomko),<br />
      Don't overwrite errors in qemuTranslateDiskSourcePool (Ján Tomko),<br />
      Protection against doing bad stuff to the root group (Daniel P. Berrange),<br />
      Convert LXC driver to use virCgroupNewMachine (Daniel P. Berrange),<br />
      Convert QEMU driver to use virCgroupNewMachine (Daniel P. Berrange),<br />
      New cgroups API for atomically creating machine cgroups (Daniel P. Berrange),<br />
      Add a colon after 'internal error' (Ján Tomko),<br />
      Expose ownership ID parsing (Martin Kletzander),<br />
      qemu: set/validate slot/connection type when assigning slots for PCI devices (Laine Stump),<br />
      qemu: make QEMU_PCI_ADDRESS_(SLOT|FUNCTION)_LAST less misleading (Laine Stump),<br />
      qemu: only check for PIIX3-specific device addrs on pc-* machinetypes (Laine Stump),<br />
      qemu: turn qemuDomainPCIAddressBus into a struct (Laine Stump),<br />
      valgrind.supp: Add more valgrind suppression paths (John Ferlan),<br />
      Create + setup cgroups atomically for LXC process (Daniel P. Berrange),<br />
      Create + setup cgroups atomically for QEMU process (Daniel P. Berrange),<br />
      Remove obsolete cgroups creation apis (Daniel P. Berrange),<br />
      Auto-detect existing cgroup placement (Daniel P. Berrange),<br />
      Add API for checking if a cgroup is valid for a domain (Daniel P. Berrange),<br />
      Add a virCgroupNewDetect API for finding cgroup placement (Daniel P. Berrange),<br />
      Add logic for handling systemd-machined non-existence (Daniel P. Berrange),<br />
      Fix handling of DBus errors emitted by the bus itself (Daniel P. Berrange),<br />
      storage: Add connection for autostart storage pool (John Ferlan),<br />
      Adjust 'ceph' authentication secret usage for rbd pool. (John Ferlan),<br />
      storage: Support "chap" authentication for iscsi pool (John Ferlan),<br />
      qemu_common: Create qemuBuildVolumeString() to process storage pool (John Ferlan),<br />
      qemu: Create a common qemuGetSecretString (John Ferlan),<br />
      qemu: Add source pool auth info to virDomainDiskDef for iSCSI (John Ferlan),<br />
      bridge driver: use more general function names (Roman Bogorodskiy),<br />
      Add virDBusMessage(Encode,Decode) stubs (Roman Bogorodskiy),<br />
      qemu: Translate the volume type disk source before cgroup setting (Osier Yang),<br />
      conf: Ignore the volume type disk if its mode is "direct" (Osier Yang),<br />
      qemu: Translate the iscsi pool/volume disk source (John Ferlan),<br />
      conf: Introduce virDomainDiskSourceIsBlockType (John Ferlan),<br />
      conf: Introduce new XML tag "mode" for disk source (John Ferlan),<br />
      storage_iscsi: Reflect the default target port (John Ferlan),<br />
      bridge driver: s/network_driver/virNetworkDriverState/ (Roman Bogorodskiy),<br />
      Convert remainder of cgroups code to report errors (Daniel P. Berrange),<br />
      Convert the virCgroupKill* APIs to report errors (Daniel P. Berrange),<br />
      Report full errors from virCgroupNew* (Daniel P. Berrange),<br />
      Add helpers for dealing with system errors (Daniel P. Berrange),<br />
      Add API for calling systemd-machined's DBus API (Daniel P. Berrange),<br />
      Introduce virDBusCallMethod &amp; virDBusMessageRead methods (Daniel P. Berrange),<br />
      cpu: Let explicit features override model features (Jiri Denemark),<br />
      cpu: Store arch in virCPUData (Jiri Denemark),<br />
      Replace union cpuData with virCPUData (Jiri Denemark),<br />
      cpu_x86: Use x86-specific CPU data structure (Jiri Denemark),<br />
      LXC: Set default driver for image backed filesystems (Daniel P. Berrange),<br />
      LXC: Fix some error reporting in filesystem setup (Daniel P. Berrange),<br />
      qemu: Unplug devices that disappeared when libvirtd was down (Jiri Denemark),<br />
      qemu: Introduce qemuMonitorGetDeviceAliases (Jiri Denemark),<br />
      conf: Make error reporting in virDomainDefFindDevice optional (Jiri Denemark),<br />
      util: Non-existent string array does not contain any string (Jiri Denemark),<br />
      Change s/i/iv/ in test code to avoid syntax-check (Daniel P. Berrange),<br />
      Allow test cases to be run selectively (Daniel P. Berrange),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      autogen: Handle case when libvirt's submodule (Michal Privoznik),<br />
      security_dac: compute supplemental groups before fork (Eric Blake),<br />
      security: framework for driver PreFork handler (Eric Blake),<br />
      qemu: Emit VIR_DOMAIN_EVENT_ID_DEVICE_REMOVED events (Jiri Denemark),<br />
      qemu: Remove devices only after DEVICE_DELETED event (Jiri Denemark),<br />
      qemu: Add support for DEVICE_DELETED event (Jiri Denemark),<br />
      Add virDomainDefFindDevice for looking up a device by its alias (Jiri Denemark),<br />
      Clarify virDomainDetachDeviceFlags documentation (Jiri Denemark),<br />
      examples: Handle VIR_DOMAIN_EVENT_ID_DEVICE_REMOVED event (Jiri Denemark),<br />
      Add VIR_DOMAIN_EVENT_ID_DEVICE_REMOVED event (Jiri Denemark),<br />
      qemu: Separate char device removal into a standalone function (Jiri Denemark),<br />
      qemu: Set cpuset.cpus for domain process (Osier Yang),<br />
      caps: Add helpers to convert NUMA nodes to corresponding CPUs (Peter Krempa),<br />
      Introduce lxcDomObjFromDomain (Michal Privoznik),<br />
      Remove lxcDriverLock from almost everywhere (Michal Privoznik),<br />
      lxc: Make activeUsbHostdevs use locks (Michal Privoznik),<br />
      Stop accessing driver-&gt;caps directly in LXC driver (Michal Privoznik),<br />
      lxc: switch to virCloseCallbacks API (Michal Privoznik),<br />
      Introduce annotations for virLXCDriverPtr fields (Michal Privoznik),<br />
      lxc: Use atomic ops for driver-&gt;nactive (Michal Privoznik),<br />
      Introduce a virLXCDriverConfigPtr object (Michal Privoznik),<br />
      virLXCDriver: Drop unused @cgroup (Michal Privoznik),<br />
      qemu: Move close callbacks handling into util/virclosecallbacks.c (Michal Privoznik),<br />
      virAsprintf: correctly check return value (Ján Tomko),<br />
      Merge virCommandPreserveFD / virCommandTransferFD (Daniel P. Berrange),<br />
      Enable FD passing when starting guests with virsh (Daniel P. Berrange),<br />
      LXC: Wire up the virDomainCreate{XML}WithFiles methods (Daniel P. Berrange),<br />
      Introduce remote protocol support for virDomainCreate{XML}WithFiles (Daniel P. Berrange),<br />
      maint: Make ctags work out of the box (Jiri Denemark),<br />
      esx: Support for disk-only and quiescing snapshots. (Geoff Hickey),<br />
      libxl: implement virDomainGetNumaParameters (Dario Faggioli),<br />
      libxl: advertise the support for VIR_TYPED_PARAM_STRING (Dario Faggioli),<br />
      lxc_container: Don't call virGetGroupList during exec (Michal Privoznik),<br />
      qemuDomainGetSchedulerType: Prefer qemuDomObjFromDomain (Michal Privoznik),<br />
      virSecurityManagerGenLabel: Skip seclabels without model (Michal Privoznik),<br />
      lxcCapsInit: Allocate primary security driver unconditionally (Michal Privoznik),<br />
      qemu: Separate host device removal into a standalone function (Jiri Denemark),<br />
      qemu: Separate net device removal into a standalone function (Jiri Denemark),<br />
      qemu: Separate controller removal into a standalone function (Jiri Denemark),<br />
      qemu: Separate disk device removal into a standalone function (Jiri Denemark),<br />
      qemu: Add qemuDomainReleaseDeviceAddress to remove any address (Jiri Denemark),<br />
      build: avoid compiler warning on shadowed name (Eric Blake),<br />
      LXC: Change the owner of live attached host devices (Gao feng),<br />
      LXC: Change the owner of host devices to the root of container (Gao feng),<br />
      LXC: Create host devices for container on host side (Gao feng),<br />
      LXC: Change the owner of live attached disk device (Gao feng),<br />
      LXC: Move virLXCControllerChown to lxc_container.c (Gao feng),<br />
      LXC: controller: change the owner of disk to the root of container (Gao feng),<br />
      LXC: Setup disks for container on host side (Gao feng),<br />
      Allow balloon driver collection to be adjusted dynamically (John Ferlan),<br />
      Implement the virDomainSetMemoryStatsPeriod for QEMU driver (John Ferlan),<br />
      Specify remote protocol for virDomainSetMemoryStatsPeriod (John Ferlan),<br />
      Add capability to fetch balloon stats (John Ferlan),<br />
      Determine whether to start balloon memory stats gathering. (John Ferlan),<br />
      Add 'period' for Memballoon statistics gathering capability (John Ferlan),<br />
      qemuhotplugtest: Introduce test for chardev hotplug (Michal Privoznik),<br />
      qemu: Implement chardev hotplug on live level (Michal Privoznik),<br />
      qemu: Implement chardev hotplug on config level (Michal Privoznik),<br />
      domain_conf: Auto fill chardev port (Michal Privoznik),<br />
      cpu: Allow fine tuning of "host-model" cpu (Peter Krempa),<br />
      cpu: Clean up code style (Peter Krempa),<br />
      cpu: Add virCPUDefUpdateFeature() (Peter Krempa),<br />
      conf: Clean up error reporting in cpu definition parsing (Peter Krempa),<br />
      storage_conf: Merge AuthChap and AuthCephx into AuthSecret (John Ferlan),<br />
      storage_conf: Move username processing into common function (John Ferlan),<br />
      storage_pool: Rework chap XML to mimic ceph (John Ferlan),<br />
      storage_conf: Move auth processing into virStoragePoolDefParseAuth (John Ferlan),<br />
      storage_conf: Introduce virStoragePoolAuthSecretPtr (John Ferlan),<br />
      storage_conf: Adjust virStoragePoolAuthType enum (John Ferlan),<br />
      Add qemuMonitorJSONSetObjectProperty() method for QMP qom-set command (John Ferlan),<br />
      Add qemuMonitorJSONGetObjectProperty() method for QMP qom-get command (John Ferlan),<br />
      Add qemuMonitorJSONGetObjectListPaths() method for QMP qom-list command (John Ferlan),<br />
      pci: make virPCIDeviceReset more autonomous (Laine Stump),<br />
      pci: reorder static functions (Laine Stump),<br />
      python: return dictionary without value in case of no blockjob (Guannan Ren),<br />
      Change domain controller index type to unsigned (Jincheng Miao),<br />
      Add a couple of debug statements to LXC driver (Daniel P. Berrange),<br />
      qemu: Introduce qemuBuildChrDeviceStr (Michal Privoznik),<br />
      qemu_command: Honour chardev alias assignment with a function (Michal Privoznik),<br />
      qemu_monitor: Introduce qemuMonitorDetachCharDev (Michal Privoznik),<br />
      qemu_monitor: Introduce qemuMonitorAttachCharDev (Michal Privoznik),<br />
      qemu_monitor_json: Move InetSocketAddress build to a separate function (Michal Privoznik),<br />
      domain_conf: Introduce chardev hotplug helpers (Michal Privoznik),<br />
      remote: Improve libssh2 password authentication (Peter Krempa),<br />
      libssh2: Improve password based authentication (Peter Krempa),<br />
      virAuth: Don't require virConnectPtr to retrieve authentication creds (Peter Krempa),<br />
      util: add virGetGroupList (Eric Blake),<br />
      util: improve user lookup helper (Eric Blake),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      qemu: Fix hot (un-)plug error codes and messages (Michal Privoznik),<br />
      conf: Rework virDomainDeviceDefParse (Michal Privoznik),<br />
      conf: Extend device types handled by virDomainDeviceDefParse (Michal Privoznik),<br />
      LXC: remove some incorrect setting ATTRIBUTE_UNUSED (Gao feng),<br />
      qemu: Slightly increase memory limit (Jiri Denemark),<br />
      util: add rebase fix that was accidentally omitted from previous patch (Laine Stump),<br />
      util: use VIR_(APPEND|DELETE)_ELEMENT for pci/usb device lists (Laine Stump),<br />
      Prevent use of 'int' data type &amp; 'ii', 'jj', 'kk' var names for loops (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in examples/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in python/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/cpu/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/hyperv/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/interface/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/network/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/libxl/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/locking/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/lxc/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/node_device/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/nwfilter/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/openvz/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/parallels/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/phyp/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/qemu files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/remote/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/rpc/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/secret/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/security files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/test/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/uml/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/vbox/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/storage/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/{esx,vmx,vmware} files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/{xen,xenapi,xenxs} files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in tools/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in tests/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/util/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in src/conf/ files (Daniel P. Berrange),<br />
      Convert 'int i' to 'size_t i' in daemon/ files (Daniel P. Berrange),<br />
      Adapt to VIR_ALLOC and virAsprintf in tools/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in tests/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/xenxs/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/xenapi/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/xen/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/vmx/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/vmware/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/vbox/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/util/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/uml/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/test/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/storage/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/security/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/secret/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/rpc/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/remote/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/qemu/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/phyp/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/parallels/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/openvz/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/nwfilter/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/network/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/node_device/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/lxc/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/locking/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/libxl/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/interface/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/hyperv/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/esx/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/cpu/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/conf/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in src/access/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in daemon/* (Michal Privoznik),<br />
      Adapt to VIR_ALLOC and virAsprintf in docs/ (Michal Privoznik),<br />
      Introduce OOM reporting to virAsprintf (Michal Privoznik),<br />
      viralloc: Report OOM error on failure (Michal Privoznik),<br />
      build: honor autogen.sh --no-git (Eric Blake),<br />
      LXC: hostdev: create parent directory for hostdev (Gao feng),<br />
      LXC: hostdev: introduce lxcContainerSetupHostdevCapsMakePath (Gao feng),<br />
      LXC: Create /dev/tty within a container (Richard Weinberger),<br />
      scsi: Fix construction of sysfs device path (Viktor Mihajlovski),<br />
      selinux: Always generate imagelabel (Peter Krempa),<br />
      selinux: Cleanup coding style (Peter Krempa),<br />
      qemu: Set RLIMIT_MEMLOCK when memoryBacking/locked is used (Jiri Denemark),<br />
      qemu: Use qemuDomainMemoryLimit when computing memory for VFIO (Jiri Denemark),<br />
      qemu: Move memory limit computation to a reusable function (Jiri Denemark),<br />
      Don't spam logs with "port 0 must be in range" errors (Jiri Denemark),<br />
      qemu: Release correct websocket port (Jiri Denemark),<br />
      conf: virDomainObjListRemoveLocked function (Marek Marczykowski-Górecki),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      Extend the ACL test case to validate filter rule checks (Daniel P. Berrange),<br />
      Add access control filtering of interface objects (Daniel P. Berrange),<br />
      Add access control filtering of nwfilter objects (Daniel P. Berrange),<br />
      Add access control filtering of secret objects (Daniel P. Berrange),<br />
      Add access control filtering of storage objects (Daniel P. Berrange),<br />
      Add access control filtering of node device objects (Daniel P. Berrange),<br />
      Add access control filtering of network objects (Daniel P. Berrange),<br />
      Change signature of ACL filter functions (Daniel P. Berrange),<br />
      Add access control filtering of domain objects (Daniel P. Berrange),<br />
      qemu: Allow seamless migration for domains with multiple graphics (Martin Kletzander),<br />
      qemu: Don't miss errors when changing graphics passwords (Martin Kletzander),<br />
      LXC: blkio: allow to setup weight_device (Gao feng),<br />
      qemu: Implement 'oncrash' coredump events when guest panicked (Chen Fan),<br />
      qemu: Implement 'oncrash' events when guest panicked (Chen Fan),<br />
      qemu: expose qemuProcessShutdownOrReboot() (Chen Fan),<br />
      qemu: refactor processWatchdogEvent (Chen Fan),<br />
      libvirt: Define domain crash event types (Chen Fan),<br />
      Add some misc debugging to LXC startup (Daniel P. Berrange),<br />
      Ignore failure to mount SELinux filesystem in container (Daniel P. Berrange),<br />
      LXC: fuse: Change files owner to the root user of container (Gao feng),<br />
      LXC: controller: change the owner of /dev/pts and ptmx to the root of container (Gao feng),<br />
      LXC: controller: change the owner of devices created on host (Gao feng),<br />
      LXC: controller: change the owner of /dev to the root user of container (Gao feng),<br />
      LXC: controller: change the owner of tty devices to the root user of container (Gao feng),<br />
      LXC: Creating devices for container on host side (Gao feng),<br />
      LXC: introduce virLXCControllerSetupUserns and lxcContainerSetID (Gao feng),<br />
      LXC: sort the uidmap/gidmap of domain (Gao feng),<br />
      LXC: enable user namespace only when user set the uidmap (Gao feng),<br />
      LXC: Introduce New XML element for user namespace (Gao feng),<br />
      qemu: Improve info message and remove a variable in qemuDomainManagedSave (Peter Krempa),<br />
      libxl: implement per NUMA node free memory reporting (Dario Faggioli),<br />
      build: configure must not affect tarball contents (Eric Blake),<br />
      Drop iptablesContext (Roman Bogorodskiy),<br />
      qemu: indentation fix (Ján Tomko),<br />
      qemu: Implement CPUs check against machine type's cpu-max (Michal Novotny)<br />
      </li><li>Cleanups:<br />
      python: Drop TODO (Cole Robinson),<br />
      maint: split long lines in Makefiles (Eric Blake),<br />
      tests: split long lines (Eric Blake),<br />
      qemu: Cleanup coding style nits in qemu_cgroup.c (Peter Krempa)<br />
      </li></ul>
        <h3>1.1.0: July 1 2013</h3>
        <ul><li>Features:<br />
      Extensible migration APIs (Jiri Denemark),<br />
      Add a policy kit access control driver (Daniel P. Berrange),<br />
      various improvements in the Xen driver (Jim Fehlig and Marek Marczykowski-Górecki),<br />
      improve networking support on BSD (Roman Bogorodskiy),<br />
      agent based vCPU hotplug support (Peter Krempa)<br />
      </li><li>Security:<br />
      CVE-2013-2218: Fix crash listing network interfaces with filters (Daniel P. Berrange)<br />
      </li><li>Documentation:<br />
      Document security reporting &amp; handling process (Daniel P. Berrange),<br />
      Fix reference to #elementsUSB (Philipp Hahn),<br />
      Fix sample TPM XML (Stefan Berger),<br />
      correct and update network vlan example (Laine Stump),<br />
      add spaces to formatstorage.html (Ján Tomko)<br />
      </li><li>Portability:<br />
      spec: require xen-devel for libxl driver (Eric Blake),<br />
      Conditionalize use of IF_MAXUNIT in virnetdevtap.c (Daniel P. Berrange),<br />
      Replace use of 'in_addr_t' with 'struct in_addr' (Daniel P. Berrange),<br />
      build: Fix VPATH build for access/* (Viktor Mihajlovski),<br />
      util: fix build error on non-Linux systems (Laine Stump),<br />
      conf: Swap order of AddImplicitControllers and DomainDefPostParse (Viktor Mihajlovski),<br />
      S390: Testcase for console default target type (virtio) (Viktor Mihajlovski),<br />
      Fix units in virNetDevBridgeSetSTPDelay on BSD (Roman Bogorodskiy),<br />
      build: Fix check-aclrules in VPATH build (Jiri Denemark),<br />
      build: Fix build with -Werror (Jim Fehlig),<br />
      use net/if.h instead of linux/if.h (Roman Bogorodskiy),<br />
      build: fix build without posix_fallocate (Eric Blake),<br />
      spec: Explicitly require libgcrypt-devel (Jiri Denemark)<br />
      </li><li>Bug Fixes:<br />
      pci: initialize virtual_functions array pointer to avoid segfault (Laine Stump),<br />
      node device driver: update driver name during dumpxml (Laine Stump),<br />
      Resolve valgrind errors for nodedev cap parsing (John Ferlan),<br />
      Resolve valgrind error in remoteConfigGetStringList() (John Ferlan),<br />
      Resolve valgrind error in virStorageBackendCreateQemuImgCmd() (John Ferlan),<br />
      Resolve valgrind error in virNetDevVlanParse() (John Ferlan),<br />
      Fix vPort management: FC vHBA creation (Dennis Chen),<br />
      bridge: don't crash on bandwidth unplug with no bandwidth (Ján Tomko),<br />
      Plug leak in virCgroupMoveTask (Ján Tomko),<br />
      Fix invalid read in virCgroupGetValueStr (Ján Tomko),<br />
      qemu: fix infinite loop in OOM error path (Laine Stump),<br />
      pci: fix dangling pointer in qemuDomainReAttachHostdevDevices (Laine Stump),<br />
      pci: eliminate leak in OOM condition (Laine Stump),<br />
      util: fix bug found by Coverity (Laine Stump),<br />
      Fix possible NULL dereference during migration (Jiri Denemark),<br />
      virsh: edit: don't leak XML string on reedit or redefine (Ján Tomko),<br />
      qemu: don't reset PCI devices being assigned with VFIO (Laine Stump),<br />
      pci: eliminate memory leak in virPCIDeviceReattach (Laine Stump),<br />
      qemu: check if block I/O limits fit into long long (Ján Tomko),<br />
      network: increase max number of routes (Laine Stump),<br />
      lxc: Resolve issue with GetScheduler APIs for non running domain (John Ferlan),<br />
      qemu: Resolve issue with GetScheduler APIs for non running domain (John Ferlan),<br />
      qemu: Avoid leaking uri in qemuMigrationPrepareDirect (Jiri Denemark),<br />
      udev: fix crash in libudev logging (Ján Tomko),<br />
      remote: Fix client crash when URI path is empty when using ssh (Peter Krempa),<br />
      remote: Forbid default "/session" connections when using ssh transport (Peter Krempa),<br />
      nodedev: fix vport detection for FC HBA (Ján Tomko),<br />
      qemu: Fix memory leak in Prepare phase (Jiri Denemark),<br />
      virSocketAddrIsWildcard: Use IN6_IS_ADDR_UNSPECIFIED correctly (Michal Privoznik),<br />
      Fix ordering of file open in virProcessGetNamespaces (Richard Weinberger),<br />
      qemuDomainGetVcpusFlags: Initialize ncpuinfo (Michal Privoznik),<br />
      virtlockd: fix socket path (Ján Tomko),<br />
      nwfilter: grab driver lock earlier during init (bz96649) (Stefan Berger),<br />
      Fix a invalid usage of virDomainNetDef in OpenVZ driver (Alvaro Polo),<br />
      use virBitmapFree instead of VIR_FREE for cpumask (Ján Tomko),<br />
      usb: don't spoil decimal addresses (Martin Kletzander)<br />
      </li><li>Improvements:<br />
      Allow RO connections to interface udev backend (Doug Goldstein),<br />
      virsh: Add parenthesis into virsh nodedev-detach help (xuzhang),<br />
      nodedev: add iommuGroup to node device object (Laine Stump),<br />
      pci: new iommu_group functions (Laine Stump),<br />
      network: allow &lt;vlan&gt; in type='hostdev' networks (Laine Stump),<br />
      test: include qemuhotplugtest data files in source rpm (Laine Stump),<br />
      pci: virPCIDeviceListAddCopy API (Laine Stump),<br />
      pci: update stubDriver name in virPCIDeviceBindToStub (Laine Stump),<br />
      pci: eliminate repetitive path constructions in virPCIDeviceBindToStub (Laine Stump),<br />
      pci: rename virPCIParseDeviceAddress and make it public (Laine Stump),<br />
      pci: rename virPCIDeviceGetVFIOGroupDev to virPCIDeviceGetIOMMUGroupDev (Laine Stump),<br />
      pci: eliminate unused driver arg from virPCIDeviceDetach (Laine Stump),<br />
      tests: Introduce qemuhotplugtest (Michal Privoznik),<br />
      qemu: Implement support for VIR_MIGRATE_PARAM_GRAPHICS_URI (Jiri Denemark),<br />
      Implement extensible migration APIs in qemu driver (Jiri Denemark),<br />
      qemu: Move internals of Confirm phase to qemu_migration.c (Jiri Denemark),<br />
      qemu: Move common parts of Prepare phase to qemu_migration.c (Jiri Denemark),<br />
      qemu: Move internals of Begin phase to qemu_migration.c (Jiri Denemark),<br />
      Use 1.1.0 everywhere in the documentation (Ján Tomko),<br />
      Add polkit policy for API checks to rpm spec (Daniel Veillard),<br />
      Configure native vlan modes on Open vSwitch ports (james robson),<br />
      Introduce VIR_MIGRATE_PARAM_GRAPHICS_URI parameter (Jiri Denemark),<br />
      virsh: Use extensible migration APIs (Jiri Denemark),<br />
      python: Add bindings for extensible migration APIs (Jiri Denemark),<br />
      Adapt virDomainMigratePeer2Peer for extensible migration APIs (Jiri Denemark),<br />
      Adapt virDomainMigrateVersion3 for extensible migration APIs (Jiri Denemark),<br />
      Implement extensible migration APIs in remote driver (Jiri Denemark),<br />
      New internal migration APIs with extensible parameters (Jiri Denemark),<br />
      Introduce migration parameters (Jiri Denemark),<br />
      Introduce virTypedParamsCopy internal API (Jiri Denemark),<br />
      Log input type parameters in API entry points (Jiri Denemark),<br />
      Introduce VIR_TYPED_PARAMS_DEBUG macro for dumping typed params (Jiri Denemark),<br />
      Introduce virTypedParamsReplaceString internal API (Jiri Denemark),<br />
      Introduce virTypedParamsCheck internal API (Jiri Denemark),<br />
      util: Emit proper error code in virTypedParamsValidate (Jiri Denemark),<br />
      Rename virTypedParameterArrayValidate as virTypedParamsValidate (Jiri Denemark),<br />
      pci: make virPCIDeviceDetach consistent in behavior (Laine Stump),<br />
      pci: new utility functions (Laine Stump),<br />
      pci: change stubDriver from const char* to char* (Laine Stump),<br />
      syntax: virPCIDeviceFree is also a NOP for NULL args (Laine Stump),<br />
      libxl: support qdisk backend (Jim Fehlig),<br />
      libxl: Fix disk format error message (Jim Fehlig),<br />
      Add validation that all APIs contain ACL checks (Daniel P. Berrange),<br />
      Set process ID in system identity (Daniel P. Berrange),<br />
      Add ACL checks into the secrets driver (Daniel P. Berrange),<br />
      Add ACL checks into the nwfilter driver (Daniel P. Berrange),<br />
      Add ACL checks into the node device driver (Daniel P. Berrange),<br />
      Add ACL checks into the interface driver (Daniel P. Berrange),<br />
      Add ACL checks into the network driver (Daniel P. Berrange),<br />
      Add ACL checks into the storage driver (Daniel P. Berrange),<br />
      Add ACL checks into the libxl driver (Daniel P. Berrange),<br />
      Add ACL checks into the Xen driver (Daniel P. Berrange),<br />
      Add ACL checks into the UML driver (Daniel P. Berrange),<br />
      Add ACL checks into the LXC driver (Daniel P. Berrange),<br />
      Add ACL checks into the QEMU driver (Daniel P. Berrange),<br />
      Auto-generate helpers for checking access control rules (Daniel P. Berrange),<br />
      Add ACL annotations to all RPC messages (Daniel P. Berrange),<br />
      Setup default access control manager in libvirtd (Daniel P. Berrange),<br />
      Set conn-&gt;driver before running driver connectOpen method (Daniel P. Berrange),<br />
      Define basic internal API for access control (Daniel P. Berrange),<br />
      netdev: accept NULL in virNetDevSetupControl (Ján Tomko),<br />
      xen: Implement virConnectGetSysinfo (Jim Fehlig),<br />
      libxl: Implement virConnectGetSysinfo (Jim Fehlig),<br />
      libxl: Allow libxl to set NIC devid (Jim Fehlig),<br />
      storage: add support for creating qcow2 images with extensions (Ján Tomko),<br />
      conf: add features to volume target XML (Ján Tomko),<br />
      util: add support for qcow2v3 image detection (Ján Tomko),<br />
      qemu: add hv_vapic and hv_spinlocks support (Ján Tomko),<br />
      conf: add vapic and spinlocks to hyperv features (Ján Tomko),<br />
      BSD: implement bridge add/remove port and set STP (Roman Bogorodskiy),<br />
      BSD: implement virNetDevBridgeCreate() and virNetDevBridgeDelete() (Roman Bogorodskiy),<br />
      conf: Requires either uuid or usage of secret (Osier Yang),<br />
      qemu: Make probing for commands declarative (Jiri Denemark),<br />
      qemu: Make probing for events declarative (Jiri Denemark),<br />
      libxl: support paused domain restore in virDomainRestoreFlags (Marek Marczykowski-Górecki),<br />
      qemuDomainChangeGraphics: Check listen address change by listen type (Michal Privoznik),<br />
      libxl: initialize device structures (Marek Marczykowski-Górecki),<br />
      libxl: populate xenstore memory entries at startup, handle dom0_mem (Marek Marczykowski-Górecki),<br />
      conf: split out snapshot disk XML formatting (Ján Tomko),<br />
      storage: rework qemu-img command line generation (Ján Tomko),<br />
      util: switch virBufferTrim to void (Ján Tomko),<br />
      migration: Don't propagate VIR_MIGRATE_ABORT_ON_ERROR (Peter Krempa),<br />
      migration: Make erroring out on I/O error controllable by flag (Peter Krempa),<br />
      qemu_migration: Move waiting for SPICE migration (Michal Privoznik),<br />
      spec: Enable KVM support on ARM (Cole Robinson),<br />
      virsh: Support SCSI_GENERIC cap flag for nodedev-list (Osier Yang),<br />
      nodedev: Support SCSI_GENERIC cap flag for listAllNodeDevices (Osier Yang),<br />
      nodedev_hal: Enumerate scsi generic device (Osier Yang),<br />
      nodedev_udev: Enumerate scsi generic device (Osier Yang),<br />
      qemu: set QEMU_CAPS_DEVICE_VIDEO_PRIMARY cap flag in QMP detection (Guannan Ren),<br />
      nodedev_udev: changes missed by commit 1aa0ba3cef (Osier Yang),<br />
      nodedev_udev: Refactor udevGetDeviceType (Osier Yang),<br />
      nodedev: Expose sysfs path of device (Osier Yang),<br />
      Move virGetUserEnt() to where its needed (Doug Goldstein),<br />
      BSD: implement virNetDevTapCreate() and virNetDevTapDelete() (Roman Bogorodskiy),<br />
      Make virNetDevSetupControl() public. (Roman Bogorodskiy),<br />
      LXC: s/chroot/chdir in lxcContainerPivotRoot() (Richard Weinberger),<br />
      Implement dispose method for libxlDomainObjPrivate (Frediano Ziglio),<br />
      libxl: allow only 'ethernet' and 'bridge' interfaces, allow script there (Marek Marczykowski-Górecki),<br />
      qemu: allow restore with non-migratable XML input (Ján Tomko),<br />
      libxl: set bootloader for PV domains if not specified (Jim Fehlig),<br />
      libxl: Report connect type as Xen (Jim Fehlig),<br />
      schema: simplify RNG pattern, remove superfluous &lt;optional&gt; (Claudio Bley),<br />
      libvirt_private.syms: add virProcessGetStartTime (Ján Tomko),<br />
      qemu: Forbid migration of machines with I/O errors (Peter Krempa),<br />
      qemu: Cancel migration if guest encoutners I/O error while migrating (Peter Krempa),<br />
      qemu_migrate: Dispose listen address if set from config (Michal Privoznik),<br />
      selinux: assume 's0' if the range is empty (Ján Tomko),<br />
      storage: fix description of versionOffset (Martin Kletzander),<br />
      spec: Drop Requires: vbox (Cole Robinson),<br />
      Prefer VIR_STRDUP over virAsprintf(&amp;dst, "%s", str) (Michal Privoznik),<br />
      qemu: Implement new QMP command for cpu hotplug (Peter Krempa),<br />
      qemu: Implement support for VIR_DOMAIN_VCPU_AGENT in qemuDomainSetVcpusFlags (Peter Krempa),<br />
      qemu: Implement request of vCPU state using the guest agent (Peter Krempa),<br />
      API: Introduce VIR_DOMAIN_VCPU_AGENT, for agent based CPU hot(un)plug (Peter Krempa),<br />
      qemu_agent: Introduce helpers for agent based CPU hot(un)plug (Peter Krempa),<br />
      qemu: Use bool instead of int in qemuMonitorSetCPU APIs (Peter Krempa),<br />
      virsh-domain-monitor: Remove ATTRIBUTE_UNUSED from a argument (Peter Krempa),<br />
      Add support for VirtualBox 4.2 APIs (ryan woodsmall),<br />
      qemuDomainMigrateGraphicsRelocate: Use then new virSocketAddrIsWildcard (Michal Privoznik),<br />
      virsocket: Introduce virSocketAddrIsWildcard (Michal Privoznik),<br />
      iscsi: pass hostnames to iscsiadm instead of resolving them (Ján Tomko),<br />
      qemu: Report the offset from host UTC for RTC_CHANGE event (Osier Yang),<br />
      qemu: simplify CPU command line parsing (Ján Tomko),<br />
      qemu: change two-state int parameters to bool (Ján Tomko),<br />
      nwfilter: change two-state int parameters to bool (Ján Tomko),<br />
      Remove redundant two-state integers (Ján Tomko),<br />
      Replace two-state local integers with bool (Ján Tomko),<br />
      storage: Avoid unnecessary ternary operators and refactor the code (Peter Krempa),<br />
      openvz: Fix code coverage issue in OpenVZ driver (Alvaro Polo),<br />
      qemu: Reformat listen address prior to checking (Michal Privoznik),<br />
      Ensure non-root can read /proc/meminfo file in LXC containers (Daniel P. Berrange),<br />
      storage: Provide better error message if metadata pre-alloc is unsupported (Peter Krempa),<br />
      storage: Clean up function header and reflow error message (Peter Krempa),<br />
      storagevolxml2argvtest: Report better error messages on test failure (Peter Krempa),<br />
      maint: don't use config.h in .h files (Eric Blake),<br />
      qemu: Abstract code for the cpu controller setting into a helper (Osier Yang),<br />
      storage: Forbid to shrink the vol's capacity if no --shrink is specified (Osier Yang),<br />
      storage: Support preallocate the new capacity for vol-resize (Osier Yang),<br />
      snapshot: remove mutually exclusive memory and disk-only duplicate check (Guannan Ren),<br />
      virsh: Allow attach-disk to specify disk wwn (Osier Yang),<br />
      tests: fix typo in securityselinuxtest (Ján Tomko),<br />
      virsh: Obey pool-or-uuid spec when creating volumes (Jiri Denemark),<br />
      libvirt-qemu: Dispatch errors from virDomainQemuAgentCommand() (Peter Krempa),<br />
      qemu: Properly report guest agent errors on command passthrough (Peter Krempa),<br />
      virsh-domain: Report errors and don't deref NULL in qemu-agent-command (Peter Krempa),<br />
      RPC: Support up to 16384 cpus on the host and 4096 in the guest (Peter Krempa),<br />
      virsh iface-bridge: Ignore delay if stp is turned off (Jiri Denemark),<br />
      Fix warning about using an uninitialized next_unit value (Jiri Denemark),<br />
      virsh-domain: Add --live, --config, --current logic to cmdAttachInterface (Peter Krempa),<br />
      virsh-domain: Add --live, --config, --current logic to cmdAttachDisk (Peter Krempa),<br />
      virsh-domain: Add --live, --config, --current logic to cmdAttachDevice (Peter Krempa)<br />
      </li><li>Cleanups:<br />
      Get rid of useless VIR_STORAGE_FILE_FEATURE_NONE (Ján Tomko),<br />
      configure: Remove unused brctl check (Cole Robinson),<br />
      storage_backend: Drop unused code (Cole Robinson),<br />
      Remove legacy code for single-instance devpts filesystem (Daniel P. Berrange)<br />
      </li></ul>
        <h3>1.0.6: June 3 2013</h3>
        <ul><li>Features:<br />
      Move VirtualBox driver into libvirtd (Daniel P. Berrange),<br />
      Support for static routes on a virtual bridge (Gene Czarcinski),<br />
      Various improvement for hostdev SCSI support (Osier Yang and Han Cheng),<br />
      Switch to VIR_STRDUP and VIR_STRNDUP (Michal Privoznik),<br />
      Various cleanups and improvement in Xen and LXC drivers (Daniel P. Berrange)<br />
      </li><li>Documentation:<br />
      Document that runtime changes may be lost after S4 suspend (Jiri Denemark),<br />
      domain: /dev/urandom isn't a valid rng patch (Cole Robinson),<br />
      formatdomain: fix links in the table of contents (Ján Tomko),<br />
      add another user (Eric Blake),<br />
      datatypes: fix virGetStoragePool's comment (Ján Tomko),<br />
      Expand documentation for LXC driver (Daniel P. Berrange),<br />
      Fix/update syntax in Sysinfo/SMBIOS description (John Ferlan),<br />
      Update formatdomain for lifecycle events (John Ferlan),<br />
      Fix the wrong links in secret documentation (Osier Yang),<br />
      Add the missed usage type 'iscsi' (Osier Yang),<br />
      Add docs about cgroups layout and usage (Daniel P. Berrange),<br />
      Point users to Virt-Viewer MSI installers for Windows builds (Daniel P. Berrange),<br />
      Fix namespace bugs in API docs, todo page &amp; hv support page (Daniel P. Berrange),<br />
      Fix a few more docs XSL bugs related to the TOC (Daniel P. Berrange),<br />
      Fix docs generator regression in previous commit (Daniel P. Berrange),<br />
      Fix multiple formatting problems in HTML docs (Daniel P. Berrange),<br />
      fix 'since' for socket path generation (Ján Tomko)<br />
      </li><li>Portability:<br />
      vbox: define DYNLIB_NAME for kFreeBSD (Guido Günther),<br />
      build: skip qemu in tests when !WITH_QEMU (Eric Blake),<br />
      build: use correct rpc.h for virtlockd (Eric Blake),<br />
      build: work around cygwin header bug (Eric Blake),<br />
      build: cast [ug]id_t when printing (Eric Blake),<br />
      build: port qemu to cygwin (Eric Blake),<br />
      build: use correct rpc.h for lockd (Eric Blake),<br />
      build: work around broken sasl header (Eric Blake),<br />
      build: fix build without libvirtd (Eric Blake),<br />
      build: fix build with newer gnutls (Eric Blake),<br />
      build: fix build with older gcc (Eric Blake),<br />
      qemu: Fix build without gnutls (Jiri Denemark),<br />
      spec: Build vbox packages only for x86 architectures (Viktor Mihajlovski),<br />
      Add missing c-ctype.h to virfile.c (Daniel P. Berrange),<br />
      test: fix VPATH fchosttest failure (Viktor Mihajlovski),<br />
      libxl: fix build with Xen4.3 (Jim Fehlig),<br />
      build: Fix check-driverimpls in VPATH (Jiri Denemark),<br />
      util: Fix build without devmapper (Jiri Denemark),<br />
      FreeBSD: disable buggy -fstack-protector-all (Roman Bogorodskiy),<br />
      build: avoid gcrypt deprecation warnings (Roman Bogorodskiy),<br />
      build: avoid shadowed variable in fdstreamtest (Eric Blake),<br />
      fix virNetDevSetMAC and virNetDevExists on BSD (Roman Bogorodskiy),<br />
      Disable some URI tests on older libxml2 (Daniel P. Berrange),<br />
      Fix build of python bindings on Python 2.4 (Daniel P. Berrange),<br />
      build: fix build with old polkit0 (Jim Fehlig),<br />
      Fixup rpcgen code on kFreeBSD too (Guido Günther),<br />
      build: avoid non-portable cast of pthread_t (Eric Blake),<br />
      build: Fix build when WITH_HAL is defined (Jim Fehlig),<br />
      build: fix mingw build of vbox (Eric Blake),<br />
      build: fix mingw build of virprocess.c (Eric Blake)<br />
      </li><li>Bug Fixes:<br />
      conf: Generate address for scsi host device automatically (Osier Yang),<br />
      qemu: prevent termination of guests w/hostdev on driver reconnect (Laine Stump),<br />
      qemu: escape literal IPv6 address in NBD migration (Ján Tomko),<br />
      Check for existence of interface prior to setting terminate flag (John Ferlan),<br />
      Resolve memory leak found by valgrind (John Ferlan),<br />
      qemu: snapshot: Don't kill access to disk if snapshot creation fails (Peter Krempa),<br />
      virsh: migrate: Don't disallow --p2p and --migrateuri (Cole Robinson),<br />
      qemu: Don't report error on successful media eject (Cole Robinson),<br />
      qemu: save domain state to XML after reboot (Sergey Fionov),<br />
      esx: Fix dynamic VI object type detection (Matthias Bolte),<br />
      storage_conf: Don't leak "uuid" in virStoragePoolDefParseAuthCephx (Osier Yang),<br />
      storage_conf: Fix the wrong error message (Osier Yang),<br />
      Fix blkdeviotune for shutoff domain (Martin Kletzander),<br />
      virsh: Fix regression of vol-resize (Osier Yang),<br />
      xen: Resolve Coverity FORWARD_NULL issue (John Ferlan),<br />
      qemu: fix NBD migration to hosts with IPv6 enabled (Ján Tomko),<br />
      conf: fix use after free in virChrdevOpen (Ján Tomko),<br />
      virNetMessageSaveError: Fix copy and paste error (Michal Privoznik),<br />
      virNWFilterHashTablePut: Free the correct variable (Michal Privoznik),<br />
      umlConnectTapDevice: initialize tapfd variable (Michal Privoznik),<br />
      remote: fix dom-&gt;id after virDomainCreateWithFlags (Marek Marczykowski),<br />
      virsh: Fix virDomainFree for NULL domain in blkdeviotune (Martin Kletzander),<br />
      virNetDevTapCreate: Fail on systems not supporting IFF_MULTI_QUEUE (Michal Privoznik),<br />
      cgroup: be robust against cgroup movement races (Eric Blake),<br />
      shunloadtest: Resolve Coverity CHECKED_RETURN error (John Ferlan),<br />
      xencapstest: Resolve Coverity CHECKED_RETURN error (John Ferlan),<br />
      qemu: fix a typo in qemuAddSharedDevice (Guannan Ren),<br />
      qemuDomainChangeEjectableMedia: Unlock domain while waiting for event (Michal Privoznik),<br />
      LXC: fix memory leak in virLXCControllerSetupDevPTS (Gao feng),<br />
      LXC: remove unnecessary check on root filesystem (Gao feng),<br />
      esx: Fix error reporting in esxVI_LookupManagedObjectHelper (Matthias Bolte),<br />
      Fix failure to detect missing cgroup partitions (Daniel P. Berrange),<br />
      libxl: fix leaking libxl events (Jim Fehlig),<br />
      qemu: Fix cgroup handling when setting VCPU BW (Martin Kletzander),<br />
      Don't mount selinux fs in LXC if selinux is disabled (Daniel P. Berrange),<br />
      Fix LXC startup when /var/run is an absolute symlink (Daniel P. Berrange),<br />
      conf: Fix the bug of disk-&gt;copy_on_read formating (Osier Yang),<br />
      daemon: fix leak after listing all volumes (Ján Tomko),<br />
      qemu: Fix crash in migration of graphics-less guests. (Viktor Mihajlovski),<br />
      Adjust improperly formatted &lt;sysinfo&gt; uuid (John Ferlan),<br />
      storage: Ensure 'qemu-img resize' size arg is a 512 multiple (Christophe Fergeau),<br />
      spec: fix outdated comment (Eric Blake),<br />
      Forbid use of ':' in RBD pool names (Daniel P. Berrange),<br />
      qemu: fix bad free (Eric Blake),<br />
      Fix starting domains when kernel has no cgroups support (Jim Fehlig),<br />
      Fix error handling of readdir() in virFileLoopDeviceOpen (Daniel P. Berrange),<br />
      util: Fix regression introduced by commit 4360a098441 (Osier Yang),<br />
      util: Fix regression of wwn reading (Osier Yang),<br />
      build: fix use of mmap (Eric Blake),<br />
      conf: don't crash on a tpm device with no backends (Ján Tomko),<br />
      don't mention disk controllers in generic controller errors (Ján Tomko),<br />
      iscsi: don't leak portal string when starting a pool (Ján Tomko),<br />
      virsh: Resolve Coverity 'MISSING_BREAK' (John Ferlan),<br />
      lxc: Coverity false positive USE_AFTER_FREE (John Ferlan),<br />
      Don't allow renaming of domains by the backdoor (Daniel P. Berrange),<br />
      qemu: fix stupid typos in VFIO cgroup setup/teardown (Laine Stump),<br />
      Ignore 'uri' parameter in lockd driver (Daniel P. Berrange),<br />
      network: fix network driver startup for qemu:///session (Laine Stump),<br />
      Fix warning about unsupported cookie flags in QEMU driver (Daniel P. Berrange),<br />
      Fix release of resources with lockd plugin (Daniel P. Berrange),<br />
      Fix F_DUPFD_CLOEXEC operation args (Daniel P. Berrange),<br />
      build: fix make rpm failure (Laine Stump),<br />
      Fix potential use of undefined variable in remote dispatch code (Daniel P. Berrange),<br />
      virInitctlRequest: unbreak make syntax check (Guido Günther),<br />
      virInitctlRequest: unbreak make syntax check (Guido Günther)<br />
      </li><li>Improvements:<br />
      nodedev_hal: Modernize the function's style (Osier Yang),<br />
      Introduce virFilePrintf() as a portable fprintf() (Daniel P. Berrange),<br />
      qemu: migration: error if tunnelled + storage specified (Cole Robinson),<br />
      qemu: migration: Improve p2p error if we can't open conn (Cole Robinson),<br />
      storage_conf: Use uid_t/gid_t instead of int to cast the value (Osier Yang),<br />
      storage_conf: Improve error messages (Osier Yang),<br />
      storage_conf: Use NULLSTR instead (Osier Yang),<br />
      storage_conf: Improve the memory deallocation of virStorageVolDefParseXML (Osier Yang),<br />
      storage_conf: Improve the memory deallocation of pool def parsing (Osier Yang),<br />
      syntax: fix broken error message in previous patch (Eric Blake),<br />
      util: fix the VIR_STRDUP when src is NULL (yangdongsheng),<br />
      Adapt to new VIR_STRNDUP behavior (Michal Privoznik),<br />
      virStrndup: Accept negative values as string length (Michal Privoznik),<br />
      storage_conf: Fix the error type (Osier Yang),<br />
      storage_conf: Put "%s" at the same line with error type (Osier Yang),<br />
      storage_conf: Use xmlStrEqual instead of STREQ (Osier Yang),<br />
      storage_conf: Remove the useless casting (Osier Yang),<br />
      syntax-check: ignore all quoted strings in bracket-spacing (Ján Tomko),<br />
      nwfilter: Remove error report in virNWFilterDHCPSnoopEnd (Stefan Berger),<br />
      cgroups: Do not enforce nonexistent controllers (Viktor Mihajlovski),<br />
      Introduce syntax-check rule to prefer VIR_STRDUP over strdup (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in tools/virsh.c (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/util/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/util/vircgroup.c (Michal Privoznik),<br />
      virCgroupAddTaskStrController: s/-1/-ENOMEM/ (Michal Privoznik),<br />
      conf: add missing OOM errors (Ján Tomko),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/xenxs/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/xenapi/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/xen/* (Michal Privoznik),<br />
      Fix the build failure (Osier Yang),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/security/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/rpc/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/remote/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/qemu/* (Michal Privoznik),<br />
      virsh: omit OPTION section in 'virsh help' if no option exists (Zhang Xiaohe),<br />
      Change virConnectDomainEventGraphicsCallback signature (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/openvz/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/conf/* (Michal Privoznik),<br />
      qemu: Enable multiqueue network (Michal Privoznik),<br />
      qemu: Adapt qemuBuildInterfaceCommandLine to to multiqueue net (Michal Privoznik),<br />
      qemu: Move interface cmd line construction into a separate function (Michal Privoznik),<br />
      Introduce /domain/devices/interface/driver/@queues attribute (Michal Privoznik),<br />
      qemu: add ', share=&lt;policy&gt;' to qemu commandline (Guannan Ren),<br />
      conf: add 'sharePolicy' attribute to graphics element for vnc (Guannan Ren),<br />
      qemu: new vnc display sharing policy caps flag (Guannan Ren),<br />
      vbox: fix VIR_STRDUP value check (Ján Tomko),<br />
      syntax-check: Add the rule to forbid whitespace before ";" (Osier Yang),<br />
      Fix the syntax-check failure (Osier Yang),<br />
      interface: list all interfaces with flags == 0 (Guannan Ren),<br />
      Convert Xen domain core dump driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain stats/peek driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain scheduler driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain autostart driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain device hotplug driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain VCPU driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain create/define/getxml/migration APIs to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain managed save driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain property driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain lifecycle driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      Convert Xen domain lookup driver methods to use virDomainDefPtr (Daniel P. Berrange),<br />
      qemu: Don't remove the "return 0" (Osier Yang),<br />
      esx: Replace almost all esxVI_String_DeepCopyValue vith VIR_STRDUP (Matthias Bolte),<br />
      vmware: Restore OOM error reporting in vmwareCopyVMXFileName (Matthias Bolte),<br />
      maint: enforce correct copyright usage (Eric Blake),<br />
      maint: refer to correct license file (Eric Blake),<br />
      maint: follow recommended practice for using LGPL (Eric Blake),<br />
      maint: use LGPL correctly (Eric Blake),<br />
      openvzDomainSetNetwork: use virCommand (Michal Privoznik),<br />
      qemu: Add callback struct for qemuBuildCommandLine (Osier Yang),<br />
      storage_conf: Improve the coding style in storage_conf.h (Osier Yang),<br />
      storage_conf: Fix indentions in storage_conf.c (Osier Yang),<br />
      storage_conf: Fix the coding stype in storage_conf.c (Osier Yang),<br />
      qemu: Abstract code for cpuset controller setting into a helper (Osier Yang),<br />
      qemu: Abstract code for devices controller setting into a helper (Osier Yang),<br />
      qemu: Abstract code for memory controller setting into a helper (Osier Yang),<br />
      qemu: Abstract the code for blkio controller setting into a helper (Osier Yang),<br />
      Add libvirt-daemon-vbox &amp; libvirt-daemon-driver-vbox RPMs (Daniel P. Berrange),<br />
      Include GNULIB mkdtemp module (Daniel P. Berrange),<br />
      Set PKG_CONFIG_LIBDIR in autobuild.sh (Daniel P. Berrange),<br />
      qemu: report useful error failing to destroy domain gracefully (Guannan Ren),<br />
      qemu: Check conflicts for shared scsi host device (Osier Yang),<br />
      Re-add selinux/selinux.h to lxc_container.c (Daniel P. Berrange),<br />
      schema: make source optional in volume XML (Ján Tomko),<br />
      schema: require target path in storage pool xml (Ján Tomko),<br />
      qemu: Change values of disk discard (Osier Yang),<br />
      qemu: Implement support for locking domain's memory pages (Jiri Denemark),<br />
      Add support for locking domain's memory pages (Jiri Denemark),<br />
      Fix build with VirtualBox (Jiri Denemark),<br />
      qemu: Set unpriv_sgio for scsi host device (Osier Yang),<br />
      qemu: Refactor qemuSetUnprivSGIO to support scsi host device (Osier Yang),<br />
      qemu: Move qemuSetUnprivSGIO into qemu_conf.c (Osier Yang),<br />
      conf: Introduce sgio for hostdev (Osier Yang),<br />
      Rename virDomainDiskSGIO to virDomainDeviceSGIO (Osier Yang),<br />
      qemu: Manage shared device entry for scsi host device (Osier Yang),<br />
      qemu: Refactor the helpers to track shared scsi host device (Osier Yang),<br />
      utils: Add a helper to get the device name that sg device mapped to (Osier Yang),<br />
      qemu: Rename qemu_driver-&gt;sharedDisks to qemu_driver-&gt;sharedDevices (Osier Yang),<br />
      conf: Introduce &lt;shareable&gt; for hostdev (Osier Yang),<br />
      string: test VIR_STRDUP (Eric Blake),<br />
      virsh: lookup interface by name or mac other than one by one (Guannan Ren),<br />
      nwfilter: check for inverted ctdir (Stefan Berger),<br />
      Validate the bios_date format for &lt;sysinfo&gt; (John Ferlan),<br />
      Remove obsolete skipRoot flag in LXC driver (Daniel P. Berrange),<br />
      Stop passing around old root directory prefix (Daniel P. Berrange),<br />
      Remove obsolete pivotRoot flag in LXC driver (Daniel P. Berrange),<br />
      qemu: Support discard for disk (Osier Yang),<br />
      Handle the domain event 'on_reboot' and 'on_poweroff' settings (John Ferlan),<br />
      Adjust comments to describe on_poweroff and on_reboot action (John Ferlan),<br />
      Adjust usage of qemu -no-reboot and -no-shutdown options (John Ferlan),<br />
      qemu: Add VNC WebSocket support (Martin Kletzander),<br />
      Add VNC WebSocket support (Martin Kletzander),<br />
      qemu: New XML to disable memory merge at guest startup (Osier Yang),<br />
      qemu: detect -machine mem-merge capability (Eric Blake),<br />
      Rename rbd-invalid.xml to rbd-no-colon.xml (Daniel P. Berrange),<br />
      tests: Add fchostdata in EXTRA_DIST (Osier Yang),<br />
      virsh: Pretty the output of qemu-agent-command (Osier Yang),<br />
      virsh: Use vshPrint instead of printf (Osier Yang),<br />
      Fix invalid argument reference in virnetdev.h (Martin Kletzander),<br />
      Don't duplicate compiler warning flags when linking (Daniel P. Berrange),<br />
      Only pass -export-dynamic to linker, not compiler (Daniel P. Berrange),<br />
      Correctly detect warning flags with clang (Daniel P. Berrange),<br />
      Ignore cast alignment warnings in inotify code for Xen. (Daniel P. Berrange),<br />
      Workaround issue with clang and inline functions with static vars (Daniel P. Berrange),<br />
      Ensure consistent enablement of gcc 'diagnostic' pragma (Daniel P. Berrange),<br />
      qemu: query command line options in QMP (Eric Blake),<br />
      qemu: simplify string cleanup (Eric Blake),<br />
      qemu: use bool in monitor struct (Eric Blake),<br />
      json: support removing a value from an object (Eric Blake),<br />
      Don't overwrite useful message when creating macvlan fails (Daniel P. Berrange),<br />
      Remove &amp; ban use of select() for waiting for I/O (Daniel P. Berrange),<br />
      qemu: Add hotplug support for scsi host device (Han Cheng),<br />
      .gitignore: add fchosttest (Ján Tomko),<br />
      qemu: Refactor helpers for USB device attachment (Osier Yang),<br />
      Escaping leading '.' in cgroup names (Daniel P. Berrange),<br />
      qemu: Introduce activeScsiHostdevs list for scsi host devices (Han Cheng),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/vbox/* (Michal Privoznik),<br />
      Support NBD backed disks/filesystems in LXC driver (Daniel P. Berrange),<br />
      Add 'nbd' as a valid filesystem driver type (Daniel P. Berrange),<br />
      Add a helper API for setting up a NBD device with qemu-nbd (Daniel P. Berrange),<br />
      Re-arrange code setting up ifs/disk loop devices for LXC (Daniel P. Berrange),<br />
      Add support for storage format in FS &lt;driver&gt; (Daniel P. Berrange),<br />
      security_apparmor.c: Include virscsi.h (Michal Privoznik),<br />
      security: Manage the security label for scsi host device (Osier Yang),<br />
      qemu: Allow the scsi-generic device in cgroup (Han Cheng),<br />
      qemu: Support bootindex for scsi host device (Osier Yang),<br />
      Introduce &lt;readonly&gt; for hostdev (Osier Yang),<br />
      rng: Interleave hostdev elements (Osier Yang),<br />
      qemu: Build qemu command line for scsi host device (Han Cheng),<br />
      utils: util functions for scsi hostdev (Han Cheng),<br />
      qemu: New cap flags for scsi-generic (Han Cheng),<br />
      node_device: Clean up unused macros (Osier Yang),<br />
      conf: Generic XMLs for scsi hostdev (Han Cheng),<br />
      tests: Add tests for fc_host (Osier Yang),<br />
      util: Honor the passed sysfs_prefix (Osier Yang),<br />
      util: Update the comment for virGetFCHostNameByWWN (Osier Yang),<br />
      util: Change virIsCapable* to return bool (Osier Yang),<br />
      util: Don't miss the slash in constructed path (Osier Yang),<br />
      build: update to latest gnulib, for syntax-check (Eric Blake),<br />
      Update hellolibvirt to demo virGetLastErrorMessage() (Daniel P. Berrange),<br />
      Add a test case for the fdstream file read/write code (Daniel P. Berrange),<br />
      Allow the iohelper path to be customized by test programs (Daniel P. Berrange),<br />
      Add a virGetLastErrorMessage() function (Daniel P. Berrange),<br />
      Fix iohelper usage with streams opened for read (Daniel P. Berrange),<br />
      Cope with missing swap cgroup controls (Daniel P. Berrange),<br />
      util: move virFile* functions from virutil.c to virfile.c (Laine Stump),<br />
      util: fix virFileOpenAs return value and resulting error logs (Laine Stump),<br />
      Build breaker - requires VIR_FROM_THIS (John Ferlan),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/test/* (Michal Privoznik),<br />
      virGetStorageVol: Don't ignore NULL pool name (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in tests/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/storage/* (Michal Privoznik),<br />
      dom event example: Add error check to impl call (Jesse J. Cook),<br />
      dom event example: init before register event impl (Jesse J. Cook),<br />
      conf: Fix typo in error message in ABI stability check (Peter Krempa),<br />
      tests: use portable shell code (Eric Blake),<br />
      Replace 'goto clean' with 'goto cleanup' in apparmor code (Daniel P. Berrange),<br />
      Replace list of driver source files with variables (Daniel P. Berrange),<br />
      Fix naming of methods in ESX storage backends to follow public APIs (Daniel P. Berrange),<br />
      Skip virNWFilterTechDriver when validating API naming (Daniel P. Berrange),<br />
      Replace 'goto cleanup' with 'goto error' in udev interface driver (Daniel P. Berrange),<br />
      Replace 'goto err' with 'goto cleanup' in udev interface driver (Daniel P. Berrange),<br />
      tests: files named '.*-invalid.xml' should fail validation (Ján Tomko),<br />
      Simplify the Xen domain stats/peek / node memory driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain autostart driver method (Daniel P. Berrange),<br />
      Simplify the Xen domain scheduler parameter driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain attach/dettach driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain define/undefine driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain start driver method (Daniel P. Berrange),<br />
      Simplify the Xen driver define domain driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain migration driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain get XML driver method (Daniel P. Berrange),<br />
      Simplify the Xen domain VCPU driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain save/restore driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain get info/state driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain get/set (max) memory driver methods (Daniel P. Berrange),<br />
      Remove Xen get hostname driver method (Daniel P. Berrange),<br />
      Simplify the Xen domain get OS type driver method (Daniel P. Berrange),<br />
      Simplify the Xen domain destroy driver method (Daniel P. Berrange),<br />
      Simplify the Xen domain shutdown/reboot driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain suspend/resume driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain is persistent driver method (Daniel P. Berrange),<br />
      Simplify the Xen domain lookup driver methods (Daniel P. Berrange),<br />
      Simplify the Xen domain create driver method (Daniel P. Berrange),<br />
      Simplify the Xen count/list domains driver methods (Daniel P. Berrange),<br />
      Simplify the Xen get max vcpus / node get info driver methods (Daniel P. Berrange),<br />
      Simplify the Xen get version driver method (Daniel P. Berrange),<br />
      Simplify the Xen get type driver method (Daniel P. Berrange),<br />
      Simplify opening of Xen drivers (Daniel P. Berrange),<br />
      Remove pointless GET_PRIVATE macro from Xen driver (Daniel P. Berrange),<br />
      Remove VIR_CONNECT_RO checks from xen drivers (Daniel P. Berrange),<br />
      Remove xen driver checks for priv-&gt;handle &lt; 0 (Daniel P. Berrange),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/vmx/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/vmware/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/uml/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/secret/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/phyp/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/parallels/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/nwfilter/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/interface/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/node_device/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/network/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/lxc/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/locking/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/libxl/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/hyperv/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/esx/* (Michal Privoznik),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in src/cpu/* (Michal Privoznik),<br />
      Delete udevFreeIfaceDef function in udev interface driver (Daniel P. Berrange),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      Unmerge attach/update/modify device APIs in drivers (Daniel P. Berrange),<br />
      Pull parsing of migration xml up into QEMU driver APIs (Daniel P. Berrange),<br />
      Fix naming of some node device APIs (Daniel P. Berrange),<br />
      Separate internal node suspend APIs from public API (Daniel P. Berrange),<br />
      Separate internal node device APIs from public API (Daniel P. Berrange),<br />
      Separate virGetHostname() API contract from driver APIs (Daniel P. Berrange),<br />
      Include process start time when doing polkit checks (Daniel P. Berrange),<br />
      Rename "security context" to "selinux context" (Daniel P. Berrange),<br />
      Fix possible undefined value in check-symsorting.pl (Daniel P. Berrange),<br />
      storage: Skip inactive lv volumes (Osier Yang),<br />
      string: make VIR_STRDUP easier to use (Eric Blake),<br />
      alloc: make VIR_APPEND_ELEMENT safer (Eric Blake),<br />
      syntax-check: forbid virBufferAsprintf with string literals (Ján Tomko),<br />
      get rid of virBufferAsprintf where possible (Ján Tomko),<br />
      qemu: allocate network connections sooner during domain startup (Laine Stump),<br />
      Ensure stub todo.html.in file is HTML5 (Daniel P. Berrange),<br />
      qemu: Enable the capability bit for -no-kvm-pit-reinjection on x86 only (Boris Fiuczynski),<br />
      rpc: message related sizes enlarged (Daniel Hansel),<br />
      qemu: Do fake auto-allocation of ports when generating native command (Peter Krempa),<br />
      spec: proper soft static allocation of qemu uid (Eric Blake),<br />
      build: always include libvirt_lxc.syms in tarball (Eric Blake),<br />
      Adapt to VIR_STRDUP and VIR_STRNDUP in daemon/* (Michal Privoznik),<br />
      virstring: Introduce VIR_STRDUP and VIR_STRNDUP (Michal Privoznik),<br />
      Make detect_scsi_host_caps a function on all architectures (Guido Günther),<br />
      More paranoid initialization of 'nparams' variable in dispatch code (Daniel P. Berrange),<br />
      Fix format string handling in network driver (Daniel P. Berrange),<br />
      esx: Reduce code duplication in generator (Matthias Bolte),<br />
      build: avoid useless virAsprintf (Eric Blake),<br />
      build: always include sanitytest in tarball (Eric Blake),<br />
      util: fix compile errors caused by moving string functions (Laine Stump),<br />
      virutil: Move string related functions to virstring.c (Michal Privoznik),<br />
      qemu: Generate agent socket path if missing (Michal Privoznik),<br />
      build: fix FreeBSD build (Eric Blake)<br />
      </li><li>Cleanups:<br />
      Storage: Fix the indention of rbd test file (Osier Yang),<br />
      qemu: Fix damaged whitespace (Peter Krempa),<br />
      Properly indent function's opening bracket (Martin Kletzander),<br />
      build: fix typo in earlier commit (Eric Blake),<br />
      build: drop unused variable (Eric Blake),<br />
      syntax-check: mandate space after mid-line semicolon (Eric Blake),<br />
      syntax: prefer space after semicolon in for loop (Eric Blake),<br />
      security_dac: Fix the coding style (Osier Yang),<br />
      nwfilter: Change the comment style (Osier Yang),<br />
      src/*.[ch]: Remove the whitespace before ";" (Osier Yang),<br />
      src/locking: Remove the whitespace before ";" (Osier Yang),<br />
      python: Remove the whitespace before ";" (Osier Yang),<br />
      examples: Remove the whitespace before ';' (Osier Yang),<br />
      src/lxc: Remove the whitespace before ";" (Osier Yang),<br />
      src/remote: Remove the whitespace before ";" (Osier Yang),<br />
      src/rpc: Remove the whitespace before ";" (Osier Yang),<br />
      src/utils: Remove the whitespace before ";" (Osier Yang),<br />
      tests/: Remove the whitespace before ";" (Osier Yang),<br />
      daemon: Remove the whitespace before ";" (Osier Yang),<br />
      tools: Remove the whitespace before ";" (Osier Yang),<br />
      src/storage: Remove the whitespace before ';' (Osier Yang),<br />
      src/security: Remove the whitespace before ';' (Osier Yang),<br />
      src/xen: Remove the whitespace before ';' (Osier Yang),<br />
      src/vmware: Remove the whitespace before ';' (Osier Yang),<br />
      src/qemu: Remove the whitespace before ';' (Osier Yang),<br />
      src/interface: Remove the whitespace before ';' (Osier Yang),<br />
      src/parallels: Remove the whitespace before ';' (Osier Yang),<br />
      src/uml: Remove the whitespace before ';' (Osier Yang),<br />
      src/openvz: Remove the whitespace before ';' (Osier Yang),<br />
      src/node_device: Remove the whitespace before ';' (Osier Yang),<br />
      src/phyp: Remove the whitespace before ';' (Osier Yang),<br />
      src/nwfilter: Remove the whitespace before ';' (Osier Yang),<br />
      src/xenxs: Remove the whitespace before ';' (Osier Yang),<br />
      src/vbox: Remove the whitespace before ';' (Osier Yang),<br />
      src/test: Remove the whitespace before ';' (Osier Yang),<br />
      src/conf: Remove the whitespace before ';' (Osier Yang),<br />
      src/libxl: Remove the whitespace before ';' (Osier Yang),<br />
      src/network: Remove the whitespace before ';' (Osier Yang),<br />
      LXC: move the comments to the proper place (Gao feng),<br />
      conf: Improve the coding style (Osier Yang),<br />
      tests: Sort the EXTRA_DIST list (Osier Yang),<br />
      libvirt.c: Fix the indention (Osier Yang),<br />
      conf: Remove the unrelated comment (Osier Yang),<br />
      build: clean up stray files found by 'make distcheck' (Eric Blake),<br />
      Remove redundant () in expression (Daniel P. Berrange)<br />
      </li></ul>
        <h3>1.0.5: May 2 2013</h3>
        <ul><li>Features:<br />
       Add NVRAM device (Li Zhang),<br />
       Add XML config for resource partitions (Daniel P. Berrange),<br />
       Add support for TPM (Stefan Berger),<br />
       NPIV storage migration support (Osier Yang)<br />
      </li><li>Documentation:<br />
       Fix closing tag in snapshot documentation (Christophe Fergeau),<br />
       Fix typo in augeas comment (Martin Kletzander),<br />
       Fix VIR_DOMAIN_EVENT_ID_PMSUSPEND capitalization in API doc (Christophe Fergeau),<br />
       Improve /domainsnapshot/disks/disk@snapshot doc (Christophe Fergeau),<br />
       fix memballoon examples (Ján Tomko),<br />
       Clarify usage of SELinux baselabel (Peter Krempa),<br />
       fix usage of 'onto' (Eric Blake),<br />
       Update HACKING (Osier Yang),<br />
       conf: fix comment about parsing graphics listen address (Ján Tomko),<br />
       lib: Fix docs about return value of virDomainGetVcpusFlags() (Peter Krempa),<br />
       virsh: Document that using incomplete XML files may have unexpected results (Peter Krempa),<br />
       fix typo when using Kerberos principals (Eric Blake),<br />
       use MiB/s instead of Mbps for migration speed (Ján Tomko),<br />
       Add the missed &lt;pre&gt; tag (Osier Yang),<br />
       virsh: Fix typo in docs (Peter Krempa),<br />
       manual: Fix copy-paste errors (Martin Kletzander),<br />
       manual: Add info about migrateuri in virsh manual (Martin Kletzander)<br />
      </li><li>Portability:<br />
       S390: Do not generate a default USB controller (Viktor Mihajlovski),<br />
       S390: Mention changed USB behavior (Viktor Mihajlovski),<br />
       build: fix cygwin build in virnetdev (Eric Blake),<br />
       portability: handle ifreq differences in virnetdev (Roman Bogorodskiy),<br />
       qemu: fix build error with older platforms (Eric Blake),<br />
       Fix compilation error in util/vircgroup.c (Stefan Berger),<br />
       Conditionally compile storagevolxml2argvtest (Daniel P. Berrange),<br />
       Fix signature of dummy virNetlinkCommand stub (Daniel P. Berrange),<br />
       Add empty stub for virThreadCancel on Win32 (Daniel P. Berrange),<br />
       Don't enable -fPIE on Win32 platforms (Daniel P. Berrange),<br />
       spec: Require pod2man when running autoreconf (Jiri Denemark),<br />
       Avoid cast alignment warnings in port allocator test (Daniel P. Berrange)<br />
      </li><li>Bug Fixes:<br />
       pci: autolearn name of stub driver, remove from arglist (Laine Stump),<br />
       ESX: Fix DISPATCH_FREE generation code to free all extended objects (Ata E Husain Bohra),<br />
       qemu: fix failure to start with spice graphics and no tls (Laine Stump),<br />
       Need to call virFreeError after virSaveLastError (John Ferlan),<br />
       libvirt-guests: status: return non-zero when stopped (Ján Tomko),<br />
       security driver: eliminate memory leaks in failure paths (Laine Stump),<br />
       libxl: Fix double-dispose of libxl domain config (Jim Fehlig),<br />
       virsh: fix incorrect argument errors for long options (Ján Tomko),<br />
       network: Don't remove transient network if creating of config file fails (Peter Krempa),<br />
       qemu: prevent invalid reads in qemuAssignDevicePCISlots (Ján Tomko),<br />
       qemu: don't assign a PCI address to 'none' USB controller (Ján Tomko),<br />
       fix segfault during virsh save in pv guest (Bamvor Jian Zhang),<br />
       conf: reject controllers with duplicate indexes (Ján Tomko),<br />
       fix typo introduced by 90430791 (Bamvor Jian Zhang),<br />
       Fix usb master startport parsing (Martin Kletzander),<br />
       qemu_conf: Don't discard strdup OOM error (Michal Privoznik),<br />
       util: Error out if the numa nodeset is out of range (Osier Yang),<br />
       selinux: Don't mask errors of virSecuritySELinuxGenNewContext (Peter Krempa),<br />
       qemu: Fix the wrong expression (Osier Yang),<br />
       audit: properly encode device path in cgroup audit (Eric Blake),<br />
       network: bridge_driver: don't lose transient networks on daemon restart (Peter Krempa),<br />
       qemu: fix default spice password setting (Ján Tomko),<br />
       Fix build breaker with ATTRIBUTE_NONNULL defs (John Ferlan),<br />
       Resolve valgrind error (John Ferlan),<br />
       Do more complete initialization of libgcrypt (Daniel P. Berrange),<br />
       qemu: Set correct migrate host in client_migrate_info (Michal Privoznik),<br />
       qemu: fix crash in qemuOpen (Ján Tomko),<br />
       conf: fix error for parallel port mismatch (Ján Tomko),<br />
       conf: fix a memory leak when parsing nat port XML nodes (Guannan Ren),<br />
       conf: Fix race between looking up a domain object and freeing it (Peter Krempa),<br />
       Fix crash in virNetDevGetVirtualFunctions (Laine Stump),<br />
       schemas: Move PortNumber and sourceinfoadapter to basictypes.rng (Han Cheng),<br />
       virsh: Unregister the connection close notifier upon termination (Viktor Mihajlovski),<br />
       libvirt: Increase connection reference count for callbacks (Viktor Mihajlovski),<br />
       storage: Fix volume cloning for logical volume. (Atsushi Kumagai),<br />
       security_manager: fix comparison (Guido Günther),<br />
       qemu: fix memory leak on -machine usage error (Eric Blake),<br />
       qemu-blockjob: Fix limit of bandwidth for block jobs to supported value (Peter Krempa),<br />
       sec_manager: Refuse to start domain with unsupported seclabel (Michal Privoznik),<br />
       qemu: Fix crash when updating media with shared device (Peter Krempa),<br />
       virsh: Call virDomainFree in cmdDomFSTrim (Michal Privoznik),<br />
       smartcard: spell ccid-card-emulated qemu property correctly (Eric Blake),<br />
       Resolve valgrind failure (John Ferlan)<br />
      </li><li>Improvements:<br />
       spec: collect all BuildRequires into one area (Eric Blake),<br />
       Resolve valgrind error (John Ferlan),<br />
       esx: Support virtualHW version 9 (Martin Kletzander),<br />
       build: mark conditionally unused variables (Eric Blake),<br />
       virsh: clarify vol-{down,up}load description (Ján Tomko),<br />
       qemu: report an error if memballoon has wrong address type (Ján Tomko),<br />
       qemu: assign addresses when converting xml to native (Ján Tomko),<br />
       qemu: Error out if spice port autoallocation is requested, but disabled (Peter Krempa),<br />
       qemu: put usb cgroup setup in common function (Laine Stump),<br />
       qemu: add vfio devices to cgroup ACL when appropriate (Laine Stump),<br />
       qemu: honor allowDiskFormatProbing when parsing command line (Ján Tomko),<br />
       conf: add missing error on OOM (Ján Tomko),<br />
       qemu: don't always reserve PCI addresses for implicit controllers (Ján Tomko),<br />
       conf: remove extraneous _TYPE from driver backend enums (Laine Stump),<br />
       network: support &lt;driver name='vfio'/&gt; in network definitions (Laine Stump),<br />
       qemu: launch bridge helper from libvirtd (Paolo Bonzini),<br />
       virnetdevtap: add virNetDevTapGetName (Paolo Bonzini),<br />
       qemu: set qemu process' RLIMIT_MEMLOCK when VFIO is used (Laine Stump),<br />
       qemu: use new virCommandSetMax(Processes|Files) (Laine Stump),<br />
       util: new virCommandSetMax(MemLock|Processes|Files) (Laine Stump),<br />
       Do proper escaping of cgroup resource partitions (Daniel P. Berrange),<br />
       Ensure all cgroup partitions have a suffix of ".partition" (Daniel P. Berrange),<br />
       Change VM cgroup suffix from '{lxc,qemu}.libvirt' to 'libvirt-{lxc,qemu}' (Daniel P. Berrange),<br />
       test: Add JSON test for query-tpm-types (Stefan Berger),<br />
       virsh: suppress aliases in group help (Eric Blake),<br />
       security: update hostdev labelling functions for VFIO (Laine Stump),<br />
       util: new function virPCIDeviceGetVFIOGroupDev (Laine Stump),<br />
       virsh: use new virNodeDeviceDetachFlags (Laine Stump),<br />
       xen: implement virNodeDeviceDetachFlags backend (Laine Stump),<br />
       qemu: implement virNodeDeviceDetachFlags backend (Laine Stump),<br />
       hypervisor api: implement RPC calls for virNodeDeviceDetachFlags (Laine Stump),<br />
       hypervisor api: new virNodeDeviceDetachFlags (Laine Stump),<br />
       qemu: bind/unbind stub driver according to config &lt;driver name='x'/&gt; (Laine Stump),<br />
       pci: keep a stubDriver in each virPCIDevice (Laine Stump),<br />
       qemu: use vfio-pci on commandline when appropriate (Laine Stump),<br />
       conf: formatter/parser/RNG/docs for hostdev &lt;driver name='kvm|vfio'/&gt; (Laine Stump),<br />
       conf: put hostdev pci address in a struct (Laine Stump),<br />
       qemu: detect vfio-pci device and its bootindex parameter (Laine Stump),<br />
       build: avoid unsafe functions in libgen.h (Eric Blake),<br />
       qemu: auto-add pci-root to 'pc-i440*' machines too (Ján Tomko),<br />
       qemu: auto-add bridges and allow using them (Ján Tomko),<br />
       qemu: auto-add pci-root controller for pc machine types (Ján Tomko),<br />
       qemu: build command line for pci-bridge device (liguang),<br />
       conf: add PCI controllers (Ján Tomko),<br />
       qemu: call post-parse callbacks when parsing command line too (Ján Tomko),<br />
       qemu: Add command line builder and parser for NVRAM. (Li Zhang),<br />
       qemuBuildCommandLine: Don't overwrite errors with NWFilter's one (Michal Privoznik),<br />
       Introduce a sub-element &lt;driver&gt; for controller (Osier Yang),<br />
       qemu: Don't require a block or file when looking for an alias (Wido den Hollander),<br />
       Change the tag name "num_queues" into "queues" (Osier Yang),<br />
       qemu: Improve handling of channels when generating SPICE command line (Peter Krempa),<br />
       qemu: Do sensible auto allocation of SPICE port numbers (Peter Krempa),<br />
       Make driver method names consistent with public APIs (Daniel P. Berrange),<br />
       Dedicated name for sub-driver open/close methods (Daniel P. Berrange),<br />
       Rename 'DeviceMonitor' to 'NodeDeviceDriver' (Daniel P. Berrange),<br />
       Extend previous check to validate driver struct field names (Daniel P. Berrange),<br />
       Ensure driver method names match public API names (Daniel P. Berrange),<br />
       Make naming of remote procedures match API names exactly (Daniel P. Berrange),<br />
       Cleanup command line options in gendispatch.pl (Daniel P. Berrange),<br />
       qemu: Split out SPICE port allocation into a separate function (Peter Krempa),<br />
       qemu: Use switch instead of ifs in qemuBuildGraphicsCommandLine (Peter Krempa),<br />
       qemu: Split out code to generate VNC command line (Peter Krempa),<br />
       qemu: Split out code to generate SPICE command line (Peter Krempa),<br />
       qemu: Use -machine accel=tcg|kvm when available (Jiri Denemark),<br />
       qemu: Move -enable-kvm and friends earlier in the command line (Jiri Denemark),<br />
       Switch to a more extensible annotation system for RPC protocols (Daniel P. Berrange),<br />
       qemu: Fix setting of memory tunables (Peter Krempa),<br />
       logging: Make log regexp more compact (and readable) (Jiri Denemark),<br />
       qemu: Ignore libvirt logs when reading QEMU error output (Jiri Denemark),<br />
       qemu: Move QEMU log reading into a separate function (Jiri Denemark),<br />
       update input ip processing (Gene Czarcinski),<br />
       create virSocketAddrGetIpPrefix utility function (Gene Czarcinski),<br />
       Replace more cases of /system with /machine (Daniel P. Berrange),<br />
       Change default resource partition to /machine (Daniel P. Berrange),<br />
       qemu: rename CheckSlot to SlotInUse (Ján Tomko),<br />
       qemu: switch PCI address set from hash table to an array (Ján Tomko),<br />
       conf: add model attribute to virDomainDefMaybeAddController (Ján Tomko),<br />
       qemu: move PCI address check out of qemuPCIAddressAsString (Ján Tomko),<br />
       qemu: QEMU_PCI constant consistency (Ján Tomko),<br />
       qemu: print PCI address hexadecimally in errors (Ján Tomko),<br />
       qemu: make qemuComparePCIDevice aware of multiple buses (Ján Tomko),<br />
       conf: Reword error message to be more universal (Peter Krempa),<br />
       cpu: Rename PowerPCUpdate and PowerPCDataFree functions (Jiri Denemark),<br />
       cpu: Remove hardcoded list of PowerPC models (Jiri Denemark),<br />
       cpu: Reimplement PowerPCDecode (Jiri Denemark),<br />
       cpu: Reimplement PowerPCBaseline (Jiri Denemark),<br />
       cpu: Fix loading PowerPC vendor from cpu_map.xml (Jiri Denemark),<br />
       cpu: Fix PowerPCNodeData (Jiri Denemark),<br />
       cpu: Make comparing PowerPC CPUs easier to read (Jiri Denemark),<br />
       cpu: Introduce cpuModelIsAllowed internal API (Jiri Denemark),<br />
       virsh-domain: Refactor cmdVcpucount and fix output on inactive domains (Peter Krempa),<br />
       Set legacy USB option with default for ppc64. (Li Zhang),<br />
       qemu_conf: add new configuration key bridge_helper (Paolo Bonzini),<br />
       util: allow using virCommandAllowCap with setuid helpers (Paolo Bonzini),<br />
       util: simplify virSetUIDGIDWithCaps (Paolo Bonzini),<br />
       virsh-domain: Report errors on invalid --holdtime value for cmdSendKey (Peter Krempa),<br />
       virsh-domain: Clean up cmdSendKey (Peter Krempa),<br />
       qemu: simplify use of virArchFromHost (Tal Kain),<br />
       rng: tighten up domain &lt;controller&gt; schema (Laine Stump),<br />
       network: remove autostart flag from network when undefining it (Peter Krempa),<br />
       syntax-check: Only allows to include public headers in external tools (Osier Yang),<br />
       syntax-check: Don't include public headers in internal source (Osier Yang),<br />
       syntax-check: Don't include duplicate header (Osier Yang),<br />
       qemu: Allow the disk wwn to have "0x" prefix (Osier Yang),<br />
       cleanup: Don't include libvirt/virterror.h (Osier Yang),<br />
       cleanup: Don't include libvirt/libvirt.h (Osier Yang),<br />
       cleanup: Remove the duplicate header (Osier Yang),<br />
       cleanup: Only include testutils.h once (Osier Yang),<br />
       Check for unsupported QMP command (Stefan Berger),<br />
       qemu_agent: Add support for appending arrays to commands (Peter Krempa),<br />
       Add support for perf_event and net_cls cgroup controllers (Daniel P. Berrange),<br />
       Replace LXC cgroup mount code with call to virCgroupIsolateMount (Daniel P. Berrange),<br />
       Add an API for re-mounting cgroups, to isolate the process location (Daniel P. Berrange),<br />
       Track symlinks for co-mounted cgroup controllers (Daniel P. Berrange),<br />
       Remove non-functional code for setting up non-root cgroups (Daniel P. Berrange),<br />
       Change default cgroup layout for QEMU/LXC and honour XML config (Daniel P. Berrange),<br />
       Add a new virCgroupNewPartition for setting up resource partitions (Daniel P. Berrange),<br />
       Cleanup if creating cgroup directories fails (Daniel P. Berrange),<br />
       Add misc extra debugging into cgroups code (Daniel P. Berrange),<br />
       Refactor cgroups internal data structures (Daniel P. Berrange),<br />
       Add a test suite for cgroups functionality (Daniel P. Berrange),<br />
       Rename virCgroupForXXX to virCgroupNewXXX (Daniel P. Berrange),<br />
       Pull definition of structs out of vircgroup.c to vircgrouppriv.h (Daniel P. Berrange),<br />
       Store a virCgroupPtr instance in virLXCDomainObjPrivatePtr (Daniel P. Berrange),<br />
       Store a virCgroupPtr instance in qemuDomainObjPrivatePtr (Daniel P. Berrange),<br />
       Add missing param to virCgroupForDriver stub (Daniel P. Berrange),<br />
       Introduce a virFileDeleteTree method (Daniel P. Berrange),<br />
       Conditionalize use of symlink() function in test suite (Daniel P. Berrange),<br />
       maint: update to latest gnulib (Eric Blake),<br />
       Use unsigned int instead of unsigned (Osier Yang),<br />
       qemu: Report also domain name in error message when domain object wasn't found (Peter Krempa),<br />
       qemu: Refactor lookup of domain object (Peter Krempa),<br />
       cleanup: Change datatype of net-&gt;stp to boolean (Osier Yang),<br />
       cleanup: Change datatype of usbdev-&gt;allow to boolean (Osier Yang),<br />
       cleanup: Change datatype of graphic's members to boolean (Osier Yang),<br />
       cleanup: Change datatype of accel's members to boolean (Osier Yang),<br />
       Add test case for TPM passthrough (Stefan Berger),<br />
       TPM support for QEMU command line (Stefan Berger),<br />
       QEMU Cgroup support for TPM passthrough (Stefan Berger),<br />
       Audit the starting of a guest using TPM passthrough (Stefan Berger),<br />
       Add SELinux and DAC labeling support for TPM passthrough (Stefan Berger),<br />
       Convert QMP strings into QEMU capability bits (Stefan Berger),<br />
       Parse TPM passthrough XML in the domain XML (Stefan Berger),<br />
       Helper functions for host TPM support (Stefan Berger),<br />
       Add documentation and schema for TPM passthrough (Stefan Berger),<br />
       Add function to find a needle in a string array (Stefan Berger),<br />
       Add QMP probing for TPM (Stefan Berger),<br />
       conf: Allow for non-contiguous device boot orders (Peter Krempa),<br />
       Tweak EOF handling of streams (Daniel P. Berrange),<br />
       Add USB option capability (Li Zhang),<br />
       Add error handling to optional arguments in cmdCPUStats (John Ferlan),<br />
       qemu: Do not report unsafe migration for local files (Jiri Denemark),<br />
       qemu: Try to use QMP for send-key if supported (Peter Krempa),<br />
       virsh: Update list of shutdown/reboot modes (Michal Privoznik),<br />
       cleanup: Change datatype of secret-&gt;private to boolean (Osier Yang),<br />
       cleanup: Change datatype of secret-&gt;ephemeral to boolean (Osier Yang),<br />
       cleanup: Change datatype of fs-&gt;readonly to boolean (Osier Yang),<br />
       cleanup: Change datatype of disk-&gt;readonly to boolean (Osier Yang),<br />
       cleanup: Change datatype of disk-&gt;transient to boolean (Osier Yang),<br />
       cleanup: Change datatype of disk-&gt;shared to boolean (Osier Yang),<br />
       cleanup: Change datatype of auth-&gt;expires to boolean (Osier Yang),<br />
       cleanup: Change datatype of hostdev-&gt;missing to boolean (Osier Yang),<br />
       Cleanup: Change datatype of origstate's members to boolean (Osier Yang),<br />
       Cleanup: Change datatype of hostdev-&gt;managed to boolean (Osier Yang),<br />
       conf: Change help function (Han Cheng),<br />
       qemu: Remove now obsolete assignment of default network card model for s390 hosts (Peter Krempa),<br />
       qemu: Clean up network device CLI generator (Peter Krempa),<br />
       qemu: Use correct default model on s390 (Viktor Mihajlovski),<br />
       sanlock: add missing test command in virt-sanlock-cleanup.in (Alex Jia),<br />
       Generate RFC4122 compliant UUIDs (Milos Vyletel),<br />
       Unmount existing filesystems under user specified mounts in LXC (Daniel P. Berrange),<br />
       Move lxcContainerUnmountSubtree further up in file (Daniel P. Berrange),<br />
       Implement support for &lt;hostdev caps=net&gt; (Bogdan Purcareata),<br />
       Update structure &amp; XML definitions to support &lt;hostdev caps=net&gt; (Bogdan Purcareata),<br />
       Rename virCgroupMounted to virCgroupHasController &amp; make it more robust (Daniel P. Berrange),<br />
       qemu: Allow volume type disk for device 'lun' (Osier Yang),<br />
       qemu: Support sgio setting for volume type disk (Osier Yang),<br />
       qemu: Support shareable volume type disk (Osier Yang),<br />
       qemu: Translate the pool disk source earlier (Osier Yang),<br />
       Support seclabels for volume type disk (Osier Yang),<br />
       Support startupPolicy for 'volume' disk (Osier Yang),<br />
       qemu: Translate the pool disk source when building drive string (Osier Yang),<br />
       Introduce new XMLs to specify disk source using libvirt storage (Osier Yang),<br />
       conf: New helper virDomainDiskSourceDefFormat to format the disk source (Osier Yang),<br />
       storage: Guess the parent if it's not specified for vHBA (Osier Yang),<br />
       storage: Add startPool and stopPool for scsi backend (Osier Yang),<br />
       util: Add helper to get the scsi host name by iterating over sysfs (Osier Yang),<br />
       phyp: Prohibit fc_host adapter for phyp driver (Osier Yang),<br />
       storage: Move virStorageBackendSCSIGetHostNumber into iscsi backend (Osier Yang),<br />
       storage: Make the adapter name be consistent with node device driver (Osier Yang),<br />
       New XML attributes for storage pool source adapter (Osier Yang),<br />
       Disable cast-align warnings in various places (Daniel P. Berrange),<br />
       Copy struct inotify_event entries to avoid alignment problems (Daniel P. Berrange),<br />
       Use VIR_ALLOC_VAR instead of VIR_ALLOC_N for creating virObject (Daniel P. Berrange),<br />
       Avoid casts between unsigned char * and struct nlmsghdr (Daniel P. Berrange),<br />
       Rewrite keycode map to avoid a struct (Daniel P. Berrange),<br />
       Add a test suite for keycode mapping functions (Daniel P. Berrange),<br />
       qemu: Error out if the bitmap for pinning is all clear (Osier Yang),<br />
       util: Add a helper to check if all bits of a bitmap are clear (Osier Yang),<br />
       qemu: Support multiple queue virtio-scsi (Osier Yang),<br />
       build: check correct protocol.o file (Eric Blake),<br />
       build: use proper pod for nested bulleted VIRSH_DEBUG list (Eric Blake),<br />
       qemu: Remove maximum cpu limit when setting processor count using the API (Peter Krempa),<br />
       Don't create dirs in cgroup controllers we don't want to use (Daniel P. Berrange),<br />
       Rename virCgroupGetAppRoot to virCgroupForSelf (Daniel P. Berrange),<br />
       Ensure LD_PRELOAD exists before running test case (Daniel P. Berrange),<br />
       Refactor RNG schema for resource tuning (Daniel P. Berrange),<br />
       rpc: Fix connection close callback race condition and memory corruption/crash (Peter Krempa),<br />
       virsh: Register and unregister the close callback also in cmdConnect (Peter Krempa),<br />
       virsh: Move cmdConnect from virsh-host.c to virsh.c (Peter Krempa),<br />
       virCaps: get rid of defaultConsoleTargetType callback (Peter Krempa),<br />
       virCaps: get rid of macPrefix field (Peter Krempa),<br />
       virCaps: get rid of hasWideScsiBus (Peter Krempa),<br />
       virCaps: get rid of defaultDiskDriverType (Peter Krempa),<br />
       virCaps: get rid of emulatorRequired (Peter Krempa),<br />
       virCaps: get rid of defaultDiskDriverName (Peter Krempa),<br />
       virCaps: get rid of "defaultInitPath" value in the virCaps struct (Peter Krempa),<br />
       qemu: Record the default NIC model in the domain XML (Peter Krempa),<br />
       conf callback: Rearrange function parameters (Peter Krempa),<br />
       conf: Add post XML parse callbacks and prepare for cleaning of virCaps (Peter Krempa),<br />
       maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption (Peter Krempa),<br />
       Create fake NUMA info if libnuma isn't available (Daniel P. Berrange),<br />
       Cope with missing /sys/devices/system/cpu/cpu0/topology files (Daniel P. Berrange),<br />
       Add armv6l architecture to list of valid arches (Daniel P. Berrange),<br />
       Implement minimal sysinfo for ARM platforms (Daniel P. Berrange),<br />
       Disable of unused sysinfotest functions (Daniel P. Berrange),<br />
       Wire up sysinfo for LXC driver (Daniel P. Berrange),<br />
       Add support for SD cards in nodedev driver (Daniel P. Berrange),<br />
       Auto-add a root &lt;filesystem&gt; element to LXC containers on startup (Daniel P. Berrange),<br />
       Remove support for old kernels lacking private devpts (Daniel P. Berrange),<br />
       Enable full RELRO mode (Daniel P. Berrange),<br />
       Build all binaries with PIE (Daniel P. Berrange),<br />
       rng: Add definition for network disk source (Osier Yang),<br />
       Disable static libraries by default (Daniel P. Berrange),<br />
       Allow multiple parameters for schedinfo (Martin Kletzander),<br />
       virsh-domain: Add --live, --config, --current logic to cmdDetachDisk (Peter Krempa),<br />
       virsh-domain: Add --live, --config, --current logic to cmdDetachDevice (Peter Krempa),<br />
       virsh-domain: Add --live, --config, --current logic to cmdDetachInterface (Peter Krempa),<br />
       virsh: Fix semantics of --config for "update-device" command (Peter Krempa),<br />
       virsh-domain: Fix declarations of flag variables in cmdChangeMedia (Peter Krempa),<br />
       virsh-domain: Simplify usage of --current, --live and --config flags (Peter Krempa),<br />
       virsh-domain-monitor: Refactor cmdDomIfGetLink (Peter Krempa),<br />
       Use virMacAddrFormat instead of manual mac address formatting (Peter Krempa),<br />
       util: Change virMacAddrFormat to lowercase hex characters (Peter Krempa),<br />
       Optimize machine option to set more options with it (Li Zhang),<br />
       conf: Enforce ranges on cputune variables (Peter Krempa),<br />
       test: Return Libvirt logo as domain screenshot (Michal Privoznik),<br />
       qemu: Allow migration over IPv6 (Ján Tomko),<br />
       virsh: Add a helper to parse cpulist (Osier Yang)<br />
      </li><li>Cleanups:<br />
       qemu_command.c: Fix whitespacing within for() (Michal Privoznik),<br />
       qemu: Fix the indention (Osier Yang),<br />
       Sanitize whitespace in driver.h (Daniel P. Berrange),<br />
       sheepdog: Omit braces with a single-line body (Harry Wei),<br />
       storage: Fix the indention (Osier Yang),<br />
       Remove extraneous comma in info_cpu_stats and opts_cpu_stats (John Ferlan)<br />
      </li></ul>
        <h3>1.0.4: Apr 1 2013</h3>
        <ul><li>Features:<br />
      qemu: support passthrough for iscsi disks (Paolo Bonzini),<br />
      various S390 improvements (Viktor Mihajlovski),<br />
      various LXC bugs fixes and improvements (Daniel P. Berrange, Gao feng),<br />
      Add API for thread cancellation (Daniel P. Berrange)<br />
      </li><li>Documentation:<br />
      Fix truncated sentence in RDP 'multiUser' attribute (Christophe Fergeau),<br />
      Remove the redundant parentheses in migrate help (Yanbing Du),<br />
      virsh: Fix docs for "virsh setmaxmem" (Peter Krempa),<br />
      util: fix virAllocVar's comment (Ján Tomko),<br />
      clarify virsh net commands (Gene Czarcinski),<br />
      storage: Fix grammar (Philipp Hahn),<br />
      Fix /pool/storage/name documentation (Christophe Fergeau),<br />
      Fix /pool/storage/directory@path documentation (Christophe Fergeau),<br />
      Fix snapshot-create-as syntax in help output (Martin Kletzander),<br />
      Update to COPYING.LIB to latest LGPLv2.1 copy (Christophe Fergeau),<br />
      Fix a copy &amp; paste error for virsh dump help (Yanbing Du),<br />
      Clarify semantics of sparse storage volumes (Jiri Denemark)<br />
      </li><li>Portability:<br />
      virutil: Fix compilation on non-linux platforms (Michal Privoznik),<br />
      Fix linkage of virt-aa-helper with numa library (Daniel P. Berrange),<br />
      Don't fail if SELinux is diabled (Guido Günther),<br />
      Fix --without-libvirtd builds (Doug Goldstein),<br />
      lxc: include sys/stat.h (Guido Günther),<br />
      Ensure GET_VLAN_VID_CMD is always defined (Daniel P. Berrange),<br />
      Don't import loop.h unless HAVE_DECL_LO_FLAGS_AUTOCLEAR is defined (Daniel P. Berrange)<br />
      </li><li>Bug Fixes:<br />
      virsh: don't call virSecretFree on NULL (Ján Tomko),<br />
      storage: Avoid double virCommandFree in virStorageBackendLogicalDeletePool (Martin Kletzander),<br />
      nodedev: invert virIsCapableFCHost return value (Ján Tomko),<br />
      security_manager.c: Append seclabel iff generated (Michal Privoznik),<br />
      security: Don't add seclabel of type none if there's already a seclabel (Michal Privoznik),<br />
      security_manager: Don't manipulate domain XML in virDomainDefGetSecurityLabelDef (Michal Privoznik),<br />
      conf: fix memory leak of class_id bitmap (Guannan Ren),<br />
      uml:release config object when uml driver shutdown (Guannan Ren),<br />
      qemu:release qemu config object when qemu driver shutdown (Guannan Ren),<br />
      net: use newer iptables syntax (Stefan Seyfried),<br />
      remote: Don't call NULL closeFreeCallback (Viktor Mihajlovski),<br />
      rpc: Fix client crash when server drops connection (Jiri Denemark),<br />
      conf: fix a failure when detaching a usb device (Guannan Ren),<br />
      qemu: Don't set address type too early during virtio disk hotplug (Guido Günther),<br />
      virsh: error out on non-numeric timeout values (Ján Tomko),<br />
      qemu: Set migration FD blocking (Michal Privoznik),<br />
      util: Fix bug of managing vport (Osier Yang),<br />
      nodedev: Fix the improper logic when enumerating SRIOV VF (Osier Yang),<br />
      lxc: Prevent shutting down the host (Martin Kletzander),<br />
      Ensure root filesystem is mounted if a file/block mount. (Daniel P. Berrange),<br />
      Fix thread safety in LXC callback handling (Daniel P. Berrange),<br />
      Remove bogus filtering from virDomainGetRootFilesystem (Daniel P. Berrange),<br />
      Fix parsing of bond interface XML (Jim Fehlig),<br />
      virsh: don't print --(null) in vol-name and vol-pool (Ján Tomko),<br />
      Fix free of uninitialized value in LXC numad setup (Daniel P. Berrange),<br />
      Correct invalid RNG schemas (Martin Kletzander),<br />
      python: Fix emulatorpin API bindings (Peter Krempa),<br />
      qemu: Un-mark volume as mirrored/copied if blockjob copy fails (Peter Krempa),<br />
      Fix initialization of virIdentityPtr thread locals (Daniel P. Berrange),<br />
      qemu: Add the new disk src into shared disk table when updating disk (Osier Yang),<br />
      python: fix bindings that don't raise an exception (Guannan Ren),<br />
      Fix typos s/HAVE_SELINUX/WITH_SELINUX/ (Daniel P. Berrange),<br />
      fix TLS error with virNetServerClientCreateIdentity (Olivia Yin),<br />
      storage: fix unlikely memory leak in rbd backend (Laine Stump),<br />
      Do not prematurely close loop devices in LXC controller (Daniel P. Berrange),<br />
      qemu: Fix startupPolicy regression (Jiri Denemark),<br />
      qemu: do not support non-network disks without -drive (Paolo Bonzini),<br />
      Fix size probing for VDI images (Ján Tomko),<br />
      Fix memory leak on OOM in virSecuritySELinuxMCSFind (Daniel P. Berrange),<br />
      Avoid closing uninitialized FDs when LXC startup fails (Daniel P. Berrange),<br />
      Prevent streams from becoming libvirtd controlling TTY (Daniel P. Berrange),<br />
      util: escapes special characters in VIR_LOG_REGEX (Guannan Ren),<br />
      Daemonize fuse thread in libvirt_lxc (Daniel P. Berrange),<br />
      Fix missing error dispatch in virDomainLxcEnterNamespace (Daniel P. Berrange),<br />
      Fix query of LXC security label (Daniel P. Berrange),<br />
      qemu_driver: Try KVM_CAP_MAX_VCPUS only if defined (Michal Privoznik),<br />
      Add missing break in LXC loop device setup (Daniel P. Berrange),<br />
      qemu: Avoid NULL dereference in qemuSharedDiskEntryFree (Jiri Denemark),<br />
      qemu: Fix retrieval of maximum number of vCPUs on KVM hosts (Peter Krempa),<br />
      virsh: fix snapshot-create with no xmlfile (Ján Tomko),<br />
      lxc: Init activeUsbHostdevs (Guido Günther),<br />
      bandwidth: Require network QoS if interface uses 'floor' (Michal Privoznik),<br />
      qemuDomainBlockStatsFlags: Guard disk lookup with a domain job (Michal Privoznik),<br />
      Fix crash parsing RNG device specification (Daniel P. Berrange),<br />
      Resolve valgrind error (John Ferlan),<br />
      storage: Cleanup logical volume creation code (Jiri Denemark),<br />
      qemu: update domain live xml for virsh memtune with --live flag (Guannan Ren),<br />
      util: fix a integer boundary error (Guannan Ren)<br />
      </li><li>Improvements:<br />
      util: Fix the conflict type for virIsCapableFCHost (Osier Yang),<br />
      libvirt_private.syms: Correctly export seclabel APIs (Michal Privoznik),<br />
      log: Separate thread ID from timestemp in ring buffer (Jiri Denemark),<br />
      virsh: Correct DESCRIPTION for virsh help blockcopy (Yanbing Du),<br />
      Fix virConnectOpen.*() name requirements (Martin Kletzander),<br />
      virsh: Let the compiler check usage of all fields in vshCmdOptType enum (Peter Krempa),<br />
      python: set default value to optional arguments (Guannan Ren),<br />
      libvirt-guests: newline between output sentences (Eric Blake),<br />
      nodedev: Abstract nodeDeviceVportCreateDelete as util function (Osier Yang),<br />
      nodedev: Dump max vports and vports in use for HBA's XML (Osier Yang),<br />
      nodedev: Refactor the helpers (Osier Yang),<br />
      nodedev: Use access instead of stat (Osier Yang),<br />
      util: Add one helper virReadFCHost to read the value of fc_host entry (Osier Yang),<br />
      nodedev: Introduce two new flags for listAll API (Osier Yang),<br />
      nodedev: Remove the unused enum (Osier Yang),<br />
      Mount temporary devpts on /var/lib/libvirt/lxc/$NAME.devpts (Daniel P. Berrange),<br />
      Move FUSE mount to /var/lib/libvirt/lxc/$NAME.fuse (Daniel P. Berrange),<br />
      viralloc: Export virAllocTest* (Michal Privoznik),<br />
      qemu: add support for LSI MegaRAID SAS1078 (aka megasas) SCSI controller (Paolo Bonzini),<br />
      qemu: pass iscsi authorization credentials (Paolo Bonzini),<br />
      domain: parse XML for iscsi authorization credentials (Paolo Bonzini),<br />
      secret: add iscsi to possible usage types (Paolo Bonzini),<br />
      domain: make port optional for network disks (Paolo Bonzini),<br />
      qemu: add support for libiscsi (Paolo Bonzini),<br />
      make: regenerate bindings when &lt;classname&gt;.py changes (Guannan Ren),<br />
      python: treat flags as default argument with value 0 (Guannan Ren),<br />
      virsh-snapshot: Simplify cleanup path in cmdSnapshotEdit (Peter Krempa),<br />
      virsh-snapshot: Use the mutually exclusive params macro in cmdSnapshotEdit (Peter Krempa),<br />
      virsh-snapshot: Refactor cmdSnapshotCurrent (Peter Krempa),<br />
      virsh-domain: Fix flag name in error message to match the check (Peter Krempa),<br />
      virsh-host: Refactor cmdFreecell (Peter Krempa),<br />
      virsh-snapshot: Refactor virsh snapshot-list (Peter Krempa),<br />
      virsh: Introduce macros to reject mutually exclusive arguments (Peter Krempa),<br />
      qemu: s/VIR_ERR_NO_SUPPORT/VIR_ERR_OPERATION_UNSUPPORTED (Michal Privoznik),<br />
      domain: add support for iscsi network disks (Paolo Bonzini),<br />
      cgroup: export virCgroupRemoveRecursively (Gao feng),<br />
      doc/schema: disk storage volume formats (Philipp Hahn),<br />
      doc/schema: Support iqn for storage pools (Philipp Hahn),<br />
      doc/schema: add ocfs2 for disk vol (Philipp Hahn),<br />
      LXC: add cpuset cgroup support for lxc (Gao feng),<br />
      NUMA: cleanup for numa related codes (Gao feng),<br />
      LXC: allow uses advisory nodeset from querying numad (Gao feng),<br />
      rename qemuGetNumadAdvice to virNumaGetAutoPlacementAdvice (Gao feng),<br />
      selinux: deal with dtb file (Olivia Yin),<br />
      qemu: add dtb option support (Olivia Yin),<br />
      conf: support &lt;dtb&gt; tag in XML domain file (Olivia Yin),<br />
      rename tests/conftest.c (Gene Czarcinski),<br />
      Setup LXC cgroups in two phases (Daniel P. Berrange),<br />
      Set the current client identity during API call dispatch (Daniel P. Berrange),<br />
      Add ability to get a virIdentity from a virNetServerClientPtr (Daniel P. Berrange),<br />
      internal APIs for managing identities (Daniel P. Berrange),<br />
      Add API to get the system identity (Daniel P. Berrange),<br />
      Add APIs for associating a virIdentityPtr with the current thread (Daniel P. Berrange),<br />
      Define internal APIs for managing identities (Daniel P. Berrange),<br />
      Add APIs to get at more client security data (Daniel P. Berrange),<br />
      qemu: support URI syntax for NBD (Paolo Bonzini),<br />
      qemu: support NBD with Unix sockets (Paolo Bonzini),<br />
      qemu: support named nbd exports (Paolo Bonzini),<br />
      qemu: rewrite NBD command-line builder and parser (Paolo Bonzini),<br />
      qemu: test NBD command-line builder and parser (Paolo Bonzini),<br />
      util: portably check for unchanged uid (Eric Blake),<br />
      Make vshDebug work when parsing parameters (Martin Kletzander),<br />
      Remove contiguous CPU indexes assumption (Li Zhang),<br />
      audit: Audit resources used by VirtIO RNG (Peter Krempa),<br />
      S390: Testcases for virtio-scsi and virtio-rng (Viktor Mihajlovski),<br />
      S390: Enable virtio-scsi and virtio-rng (Viktor Mihajlovski),<br />
      qemu: Rename virtio-scsi capability (Viktor Mihajlovski),<br />
      util: fix clear_emulator_capabilities=0 (Laine Stump),<br />
      Fix deps for generating RPC dispatch code (Daniel P. Berrange),<br />
      Fix generation of systemtap probes for RPC protocols (Daniel P. Berrange),<br />
      Re-add DTrace probes on 'dispose' functions (Daniel P. Berrange),<br />
      Fix parsing of SELinux ranges without a category (Daniel P. Berrange),<br />
      Separate MCS range parsing from MCS range checking (Daniel P. Berrange),<br />
      virtio-rng: Add rate limiting options for virtio-RNG (Peter Krempa),<br />
      S390: Testcases for virtio-ccw machines (Viktor Mihajlovski),<br />
      S390: Add hotplug support for s390 virtio devices (J.B. Joret),<br />
      S390: QEMU driver support for CCW addresses (Viktor Mihajlovski),<br />
      S390: domain_conf support for CCW (Viktor Mihajlovski),<br />
      S390: Documentation for CCW address type (Viktor Mihajlovski),<br />
      Use separate symbol file for GNUTLS symbols (Daniel P. Berrange),<br />
      Apply security label when entering LXC namespaces (Daniel P. Berrange),<br />
      virCaps: conf: start splitting out irrelevant data (Peter Krempa),<br />
      Remove hack using existence of an 'identity' string to disable auth (Daniel P. Berrange),<br />
      Convert HAVE_SELINUX to WITH_SELINUX (Guido Günther),<br />
      capabilities: add NUMA memory information (Dusty Mabe),<br />
      apparmor: use AppArmorSetFDLabel for both imageFD and tapFD (Guannan Ren),<br />
      Include pid namespace inode in LXC audit messages (Daniel P. Berrange),<br />
      Add support for disks backed by plain files in LXC (Daniel P. Berrange),<br />
      Refactor loop device setup code in LXC (Daniel P. Berrange),<br />
      Convert QEMU driver to use virLogProbablyLogMessage (Daniel P. Berrange),<br />
      Improve LXC startup error reporting (Daniel P. Berrange),<br />
      Add method for checking if a string is (probably) a log message (Daniel P. Berrange),<br />
      Use VIR_MASS_CLOSE in LXC container startup (Daniel P. Berrange),<br />
      Fix conditional build of virNetDevSetupControlFull (Daniel P. Berrange),<br />
      Rename 'daemon' param to 'binary' in virNetClientNewUNIX (Daniel P. Berrange),<br />
      Rename 'clone' to 'clonevol' to avoid name clash with clone() syscall (Daniel P. Berrange),<br />
      viralloc: use consistent naming (Eric Blake),<br />
      rng: allow default device in RNG grammar (Eric Blake),<br />
      build: avoid shadowing a function name (Eric Blake),<br />
      conf: Report errors on cputune parameter parsing (Peter Krempa),<br />
      conf: Make virDomainDeviceInfoIterate usable without os type (Peter Krempa),<br />
      virsh-snapshot: Add ability to print only snapshot names (Peter Krempa)<br />
      </li><li>Cleanups:<br />
      python:remove semicolon in python code (Guannan Ren),<br />
      Clean redundant code about VCPU string checking (Li Zhang),<br />
      Cleanup useless flags specifications (Martin Kletzander),<br />
      nodeinfo: don't define nodeGetCellMemory if it isn't ever used (Hu Tao),<br />
      virsh-domain: Remove unused vshCompleteXMLFromDomain (Peter Krempa),<br />
      sheepdog: Adjust logic to break while loop to avoid Coverity error (John Ferlan),<br />
      libxl_driver: Resolve Coverity errors (John Ferlan),<br />
      libxl_conf: Resolve Coverity issue with call to regcomp() (John Ferlan),<br />
      conf: whitespace cleanups and refactors with no semantic impact (Peter Krempa)<br />
      </li></ul>
        <h3>1.0.3: Mar 5 2013</h3>
        <ul><li>Features:<br />
      Introduce virDomainMigrate*CompressionCache APIs (Jiri Denemark),<br />
      Introduce virDomainGetJobStats API (Jiri Denemark),<br />
      Add basic support for VDI images (Martin Kletzander),<br />
      Introduce API virNodeDeviceLookupSCSIHostByWWN (Osier Yang),<br />
      Various locking improvements (Daniel P. Berrange)<br />
      </li><li>Documentation:<br />
      internals: Update to include RPC and Lock links and add new data (John Ferlan),<br />
      Add references for phyp and parallels (John Ferlan),<br />
      api: Add text and references for daemon (John Ferlan),<br />
      api: Add text and references for drivers section (John Ferlan),<br />
      api: Complete list of function and naming conventions (John Ferlan),<br />
      api: Reword and clean lists for object description (John Ferlan),<br />
      api: Reword objects exposed section (John Ferlan),<br />
      hellolibvirt: Adjust code to use new APIs (John Ferlan),<br />
      libvirt: Update headers for doc (John Ferlan),<br />
      hook: log the exit status of the hook not 256 (Guido Günther),<br />
      maint: fix typo in network docs (Eric Blake),<br />
      util: Add docs for virXMLProp string (Peter Krempa),<br />
      Fix attribute name for virtio-rng backend (Peter Krempa),<br />
      document new storage volume/pool types (Philipp Hahn),<br />
      schema: Add basic documentation for the virtual RNG device support (Peter Krempa),<br />
      util: fix typo in comment (Laine Stump),<br />
      Add missing 'vram' in QXL video device doc (Christophe Fergeau),<br />
      Fix HTML errors (Jiri Denemark),<br />
      fix 1.0.2 release date (Eric Blake),<br />
      HACKING: Sync with docs/hacking.html.in (John Ferlan),<br />
      hacking: Add some details to handle Valgrind output (John Ferlan),<br />
      don't ignore virEvent API (Eric Blake),<br />
      use div, not table, for notices on opaque types (Claudio Bley),<br />
      abort when missing return or argument documentation (Claudio Bley),<br />
      libvirt.h.in: document virConnectDomainEventCallback's return value (Claudio Bley),<br />
      libvirt.h.in: add missing return doc for virEventRemoveHandleFunc (Claudio Bley),<br />
      libvirt.h.in: fix documentation for virConnectDomainEventBlockJobCallback (Claudio Bley),<br />
      libvirt.h.in: add missing documentation for virConnectCloseFunc (Claudio Bley),<br />
      Sync HACKING and hacking.html.in (Martin Kletzander)<br />
      </li><li>Portability:<br />
      build: don't use gcrypt.h without gnutls support (Eric Blake),<br />
      tests: skip virstoragetest on RHEL 5 (Eric Blake),<br />
      Remove some C99 variable decls in parallels driver (Daniel P. Berrange),<br />
      tests: old automake lacks abs_builddir (Eric Blake),<br />
      tests: consistent skip messages (Eric Blake),<br />
      tests: don't test json when not compiled in (Eric Blake),<br />
      tests: avoid segfault if json monitor not present (Eric Blake),<br />
      run: use portable shell (Eric Blake),<br />
      s/arm/armv7l/ in caps-qemu-kvm.xml (Daniel P. Berrange),<br />
      build: force correct gcc syntax for attribute_nonnull (Eric Blake),<br />
      build: more mingw fixes (Eric Blake),<br />
      build: fix mingw build (Eric Blake),<br />
      build: fix vircommand build on mingw (Eric Blake),<br />
      regex: gnulib guarantees that we have regex support (Eric Blake),<br />
      build: fix compilation of selinux on RHEL 5 (Eric Blake),<br />
      build: fix VPATH testsuite (Eric Blake),<br />
      build: fix build of HAL node backend (Eric Blake),<br />
      sanitytest.py: Do not rely on system libvirt (Jiri Denemark),<br />
      tests: reserve more fds for commandtest (Eric Blake),<br />
      build: Add libcurl dependency to libvirt_driver.la (Jiri Denemark),<br />
      tests: Don't build securityselinuxlabeltest without qemu (Jiri Denemark)<br />
      </li><li>Bug Fixes:<br />
      Fix TLS tests with gnutls 3 (Daniel P. Berrange),<br />
      qemu: fix wrong evaluation in qemuDomainSetMemoryParameters (Satoru Moriya),<br />
      libvirt does not logout of iscsi targets, causing system hang on shutdown (Fritz Elfert),<br />
      qemu: Remove managed save flag from VM when starting with --force-boot (Peter Krempa),<br />
      qemu: Use -1 as unpriviledged uid/gid (Christophe Fergeau),<br />
      virnetdevmacvlan.c: Introduce mutex for macvlan creation (Michal Privoznik),<br />
      Fix deadlock in QEMU close callback APIs (Daniel P. Berrange),<br />
      Fix crash in QEMU auto-destroy with transient guests (Daniel P. Berrange),<br />
      python: fix fd leak in generator.py (Guannan Ren),<br />
      qemu: Make sure qemuProcessStart is run within a job (Jiri Denemark),<br />
      Fix starting qemu instances when apparmor driver is enabled (Jim Fehlig),<br />
      qemu: Don't fail to shutdown domains with unresponsive agent (Michal Privoznik),<br />
      qemu: virConnectGetVersion returns bogus value (Viktor Mihajlovski),<br />
      qemu: fix use-after-free when parsing NBD disk (Paolo Bonzini),<br />
      Don't try to add non-existent devices to ACL (Daniel P. Berrange),<br />
      Fix typo in internal VIR_QEMU_PROCESS_START_AUTODESROY constant (Daniel P. Berrange),<br />
      Fix autodestroy of QEMU guests (Daniel P. Berrange),<br />
      qemu: -numa doesn't (yet) support disjoint range (Eric Blake),<br />
      interface: udev backend coverity NULL deref (Doug Goldstein),<br />
      Fix crash changing CDROM media (Daniel P. Berrange),<br />
      qemu: do not set unpriv_sgio if neither supported nor requested (Paolo Bonzini),<br />
      conf: Avoid leaking of RNG device definition (Peter Krempa),<br />
      interface: Fix udev backend bridge device display (Doug Goldstein),<br />
      storage: use f_frsize, not f_bsize, for calculating available space (Sage Weil),<br />
      conf: Don't leak 'ram' video property on error (Christophe Fergeau),<br />
      conf: Don't leak 'primary' video property on error (Christophe Fergeau),<br />
      qemu: check backing chains even when cgroup is omitted (Eric Blake),<br />
      qemu: Avoid deadlock in autodestroy (Jiri Denemark),<br />
      qemu: fix an off-by-one error in qemuDomainGetPercpuStats (Guannan Ren),<br />
      qemu: Fix the memory leak (Osier Yang),<br />
      keepalive: Guard against integer overflow (John Ferlan),<br />
      libxl: Fix setting of disk backend (Jim Fehlig),<br />
      Remove a couple of misplaced VIR_FREE (John Ferlan),<br />
      Fix memory leak in virNetClientIOWriteMessage (Sergey Fionov),<br />
      qemu: Do not ignore mandatory features in migration cookie (Jiri Denemark),<br />
      rpc: Avoid deadlock when closing client connection (Jiri Denemark),<br />
      Avoid resetting errors in virTypedParamsFree (Jiri Denemark),<br />
      interface: fix udev backend use after free (Doug Goldstein),<br />
      virsh: Resolve possible NULL dereference (John Ferlan),<br />
      commandtest: Resolve some coverity resource leaks (John Ferlan),<br />
      Fix libvirt upgrade path when nwfilter is used (Stefan Berger),<br />
      util: maintain caps when running command with uid != 0 (Laine Stump),<br />
      virCommand: Don't misuse the eventloop for async IO (Michal Privoznik),<br />
      Release VM lock before acquiring virDomainObjListPtr lock (Daniel P. Berrange),<br />
      Fix potential deadlock across fork() in QEMU driver (Daniel P. Berrange),<br />
      hypervisor: Restore pm initialization (John Ferlan),<br />
      Remove re-entrant API call in SELinux/AppArmor security managers (Daniel P. Berrange),<br />
      xend: Fix a memory leak found by Coverity (John Ferlan),<br />
      network_conf.c: Free xmlDoc after use (Michal Privoznik),<br />
      virsh-snapshot: Fix XPath query to determine snapshot state (Peter Krempa),<br />
      virnetttlcontext: Resolve issues found by Valgrind (John Ferlan),<br />
      qemumonitortestutils: Resolve resource leaks found by Valgrind (John Ferlan),<br />
      qemumonitorjsontest: Resolve resource leaks found by Valgrind (John Ferlan),<br />
      qemu_command: Resolve resource leaks found by Valgrind (John Ferlan),<br />
      domain_conf: Resolve resource leaks found by Valgrind (John Ferlan),<br />
      vport_profile_conf: Resolve memory leak found by Valgrind (John Ferlan),<br />
      netdev_vlan_conf: Resolve memory leak found by Valgrind. (John Ferlan),<br />
      qemuxml2argvtest: Resolve resource leaks found by Valgrind (John Ferlan),<br />
      virnettlscontexttest: Resolve memory leak found by Valgrind (John Ferlan),<br />
      qemu_hotplug: Need to call virUSBDeviceFree() (John Ferlan),<br />
      rpc: Need to virCommandFree on error path (John Ferlan),<br />
      uml: Resolve leak if need to requery in umlIdentifyOneChrPTY() (John Ferlan),<br />
      openvz: Need to error check openvzDomainSetVcpusFlagsInternal() (John Ferlan),<br />
      parallels: Need to free memory on error path (John Ferlan),<br />
      network: Remove conditional settings to resolve resource leak (John Ferlan),<br />
      storage: Resolve resource leaks with cmd processing (John Ferlan),<br />
      keepalive: Resolve Coverity complaint (John Ferlan),<br />
      tlscontext: Make sure to get proper pointer to 'dname' (John Ferlan),<br />
      Fix leak of usbDevice struct when initializing cgroups (Daniel P. Berrange),<br />
      Fix typo in configure.ac causing $LIBS to gain a copy of $CFLAGS (Daniel P. Berrange),<br />
      util: Fix mask for 172.16.0.0 private address range (Jiri Denemark)<br />
      </li><li>Improvements:<br />
      rng: restrict passthrough names to known-good files (Eric Blake),<br />
      util: use string libvirt to prefix error message instead of libvir (Guannan Ren),<br />
      python: fix typoes and repeated global vars references (Guannan Ren),<br />
      Fix a message typo (Serge Hallyn),<br />
      Avoid spamming logs with cgroups warnings (Daniel P. Berrange),<br />
      tests: Test XML entities in source path for RNG device (Peter Krempa),<br />
      tests: fix leaks in storagevolxml2argvtest (Ján Tomko),<br />
      libvirt.c: Make VIR_MIGRATE_NON_SHARED_{INC,DISK} mutually exclusive (Michal Privoznik),<br />
      schema: Restrict mode to octal (Philipp Hahn),<br />
      libvirt: fix error message when connection can't be opened (Ján Tomko),<br />
      tests: uniformly report test failures (Eric Blake),<br />
      qemu: minor monitor lock cleanups (Eric Blake),<br />
      qemu: don't override earlier json error (Eric Blake),<br />
      qemu: Refactor qemuDomainSetMemoryParameters (Peter Krempa),<br />
      storage: cast -1 for uid_t|gid_t (Philipp Hahn),<br />
      storage: Cast uid_t|gid_t to unsigned int (Philipp Hahn),<br />
      util: Fix printf format for uid_t|gid_t (Philipp Hahn),<br />
      tests: Add tests for virtio-rng device handling (Peter Krempa),<br />
      qemu: Implement support for EGD backend for virtio-rng (Peter Krempa),<br />
      qemu: Implement support for default 'random' backend for virtio-rng (Peter Krempa),<br />
      conf: Add RNG device ABI compatibility check (Peter Krempa),<br />
      conf: Add support for RNG device configuration in XML (Peter Krempa),<br />
      conf: Add fake switch statement to warn for new device types (Peter Krempa),<br />
      use client id for IPv6 DHCP host definition (Gene Czarcinski),<br />
      Trivial fix: in dhcp-host the name is optional (Gene Czarcinski),<br />
      storage: qemu-img: change INFO to DEBUG (Ján Tomko),<br />
      storage: move qemu-img options before positional arguments (Ján Tomko),<br />
      storage: add test for qemu-img command line generation (Ján Tomko),<br />
      storage: separate qemu-img command generation and execution (Ján Tomko),<br />
      storage: move flag setting after declarations (Ján Tomko),<br />
      run: license as LGPL (Eric Blake),<br />
      qemu_migration: Cancel running jobs on failed migration (Michal Privoznik),<br />
      qemu_migration: Stop NBD server at Finish phase (Michal Privoznik),<br />
      qemu_migration: Introduce qemuMigrationDriveMirror (Michal Privoznik),<br />
      qemu_migration: Introduce qemuMigrationStartNBDServer() (Michal Privoznik),<br />
      qemu: Introduce nbd-server-stop command (Michal Privoznik),<br />
      qemu: Introduce nbd-server-add command (Michal Privoznik),<br />
      qemu: Introduce nbd-server-start command (Michal Privoznik),<br />
      Introduce NBD migration cookie (Michal Privoznik),<br />
      qemu: Introduce NBD_SERVER capability (Michal Privoznik),<br />
      Add support for &lt;option&gt; tag in network config (Pieter Hollants),<br />
      maint: check all symfiles for sorting (Eric Blake),<br />
      qemu: Implement virDomainMigrate*CompressionCache (Jiri Denemark),<br />
      virsh: Add migrate-compcache command (Jiri Denemark),<br />
      remote: Implement virDomainMigrate*CompressionCache (Jiri Denemark),<br />
      python: Implement virDomainMigrateGetCompressionCache wrapper (Jiri Denemark),<br />
      qemu: Implement virDomainGetJobStats (Jiri Denemark),<br />
      qemu: Parse more fields from query-migrate QMP command (Jiri Denemark),<br />
      virsh: Use virDomainGetJobStats in domjobinfo if available (Jiri Denemark),<br />
      remote: Implement virDomainGetJobStats (Jiri Denemark),<br />
      remote: Auto-allocate params in remoteDeserializeTypedParameters (Jiri Denemark),<br />
      python: Implement virDomainGetJobStats wrapper (Jiri Denemark),<br />
      qemu: Add support for compressed migration (Jiri Denemark),<br />
      Introduce VIR_MIGRATE_COMPRESSED flag (Jiri Denemark),<br />
      Update arch names in RNG schema to match virarch.c (Daniel P. Berrange),<br />
      interface: dev type support for bond interfaces (Doug Goldstein),<br />
      interface: add bond support to udev backend (Doug Goldstein),<br />
      interface: Improve udev backend device type id (Doug Goldstein),<br />
      interface: Refactor interface vlan to helper func (Doug Goldstein),<br />
      interface: udev bridge code error handling updates (Doug Goldstein),<br />
      interface: Refactor udev bridge to helper func (Doug Goldstein),<br />
      conf: Refactor ABI stability checking and break long lines (Peter Krempa),<br />
      conf: Refactor cpumask handling (Peter Krempa),<br />
      conf: Reformat many function headers in domain_conf.c (Peter Krempa),<br />
      conf: Fix label naming in virDomainDefFormatInternal (Peter Krempa),<br />
      conf: Ensure that new devices are added to conf copy function (Peter Krempa),<br />
      qemu: Refactor error paths in virQEMUDriverCreateCapabilities (Peter Krempa),<br />
      conf: Improve core dump config error message (Peter Krempa),<br />
      qemu: Turn closeCallbacks into virObjectLockable (Jiri Denemark),<br />
      qemu: Run lzop with '--ignore-warn' (Michal Privoznik),<br />
      qemu: Remove the shared disk entry if the operation is ejecting or updating (Osier Yang),<br />
      qemu: Move the shared disk adding and sgio setting prior to attaching (Osier Yang),<br />
      qemu: Update shared disk table when reconnecting qemu process (Osier Yang),<br />
      qemu: Record names of domain which uses the shared disk in hash table (Osier Yang),<br />
      qemu: Merge qemuCheckSharedDisk into qemuAddSharedDisk (Osier Yang),<br />
      qemu: Add checking in helpers for sgio setting (Osier Yang),<br />
      maint: enforce private symbol section sorting (Eric Blake),<br />
      qemu: switch PCI address allocation to use virDevicePCIAddress (Ján Tomko),<br />
      virsh: distinguish errors between missing argument and wrong option (Guannan Ren),<br />
      maint: sort private syms to reflect recent header renames (Eric Blake),<br />
      maint: fix header file owners of private symbols (Eric Blake),<br />
      net: use structs for address and port ranges (Natanael Copa),<br />
      net: add support for specifying port range for forward mode nat (Natanael Copa),<br />
      net: support set public ip range for forward mode nat (Natanael Copa),<br />
      qemu: Use atomic ops for driver-&gt;nactive (Jiri Denemark),<br />
      virsh: Always print capacity unit (Jiri Denemark),<br />
      qemu: pass "-1" as uid/gid for unprivileged qemu (Guido Günther),<br />
      Add capabilities bit for -no-kvm-pit-reinjection (Doug Goldstein),<br />
      Add autogenerated lxc_protocol.[ch] to gitignore (Doug Goldstein),<br />
      drivermodule: Ignore coverity warning about leaked_storage (John Ferlan),<br />
      storage: test backing chain traversal (Eric Blake),<br />
      storage: don't follow backing chain symlinks too eagerly (Eric Blake),<br />
      storage: refactor metadata lookup (Eric Blake),<br />
      storage: prepare for refactoring (Eric Blake),<br />
      storage: rearrange functions (Eric Blake),<br />
      vbox: Don't overwrite errors returned by virDomainDeviceDefParse (Jiri Denemark),<br />
      util: virSetUIDGIDWithCaps - change uid while keeping caps (Laine Stump),<br />
      util: drop capabilities immediately after changing uid/gid of child (Laine Stump),<br />
      qemu: let virCommand set child process security labels/uid/gid (Laine Stump),<br />
      security: add new virSecurityManagerSetChildProcessLabel API (Laine Stump),<br />
      util: add security label setting to virCommand (Laine Stump),<br />
      build: define SECDRIVER_LIBS in Makefile.am (Laine Stump),<br />
      qemu: replace exec hook with virCommandSetUID/GID in storage_backend (Laine Stump),<br />
      qemu: replace exec hook with virCommandSetUID/GID in qemuCaps* (Laine Stump),<br />
      util: make virSetUIDGID a NOP only when uid or gid is -1 (Laine Stump),<br />
      util: add virCommandSetUID and virCommandSetGID (Laine Stump),<br />
      util: refactor virCommandHook into virExec and virCommandHandshakeChild (Laine Stump),<br />
      util: eliminate extra args from virExec (Laine Stump),<br />
      util: eliminate generic hook from virExecWithHook (Laine Stump),<br />
      Remove qemuDriverLock from almost everywhere (Daniel P. Berrange),<br />
      virsh-volume.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-snapshot.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-secret.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-pool.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-nwfilter.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-nodedev.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-network.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-interface.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-host.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-domain.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh-domain-monitor.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh.c: Switch to c99 initialization of vshCmdInfo (Michal Privoznik),<br />
      virsh: Switch to c99 initialization of vshCmdDef (Michal Privoznik),<br />
      xen: clean up the mess with cpumap (Eric Blake),<br />
      util: use new virendian.h macros (Eric Blake),<br />
      util: add virendian.h macros (Eric Blake),<br />
      Check if classes are derived from object (Guido Günther),<br />
      virsh: Use virNodeDeviceLookupSCSIHostByWWN (Osier Yang),<br />
      nodedev: Implement virNodeDeviceLookupSCSIHostByWWN (Osier Yang),<br />
      remote: Wire up the remote protocol (Osier Yang),<br />
      hypervisor: Revisit Coverity issues regarding cpumap (John Ferlan),<br />
      hypervisor: Remove redundant validity checks, clean up function headers (John Ferlan),<br />
      xend: Remove redundant validity checks, clean up function headers (John Ferlan),<br />
      xm: Remove redundant validity checks, clean up function headers (John Ferlan),<br />
      inotify: Clean up some function headers (John Ferlan),<br />
      xs:  Remove redundant validity checks, clean up function headers (John Ferlan),<br />
      virsh-snapshot: Reject --no-metadata together with --print-xml (Peter Krempa),<br />
      virsh-snapshot: Refactor some details in virsh snapshot-create-as (Peter Krempa),<br />
      Pass virQEMUDriverPtr into APIs managed shared disk list (Daniel P. Berrange),<br />
      Serialize execution of security manager APIs (Daniel P. Berrange),<br />
      Turn virSecurityManager into a virObjectLockable (Daniel P. Berrange),<br />
      sheepdog: skip refresh on creation failure (Harry Wei),<br />
      util: refactor iptables command construction into multiple steps (Natanael Copa),<br />
      qemu: support vhost-net for generic ethernet devices (Laine Stump),<br />
      Stop accessing driver-&gt;caps directly in QEMU driver (Daniel P. Berrange),<br />
      Rename 'qemuCapsXXX' to 'virQEMUCapsXXX' (Daniel P. Berrange),<br />
      Turn virCapabilities into a virObject (Daniel P. Berrange),<br />
      Fix comment about virCgroupPtr locking rules in QEMU driver (Daniel P. Berrange),<br />
      Fix PKI directory used for QEMU test suite (Daniel P. Berrange),<br />
      virCondDestroy: Lose attribute RETURN_CHECK (Michal Privoznik),<br />
      Drop useless virFileWrapperFdCatchError (Michal Privoznik),<br />
      valgrind: Adjust the suppression file (John Ferlan),<br />
      Add syntax-check to make sure Python files don't contain trailing semicolon (Guido Günther),<br />
      Remove more trailing semicolons in Python files (Guido Günther),<br />
      syntax-check: Don't check non-reentrant functions in docs (Peter Krempa),<br />
      Cosmetics: Remove semicolons (Guido Günther),<br />
      bitmap: add way to find next clear bit (Eric Blake),<br />
      Initialize qemuImageBinary path at startup (Daniel P. Berrange),<br />
      Introduce annotations for virQEMUDriverPtr fields (Daniel P. Berrange),<br />
      Protect USB/PCI device list access in QEMU with dedicated locks (Daniel P. Berrange),<br />
      Convert virPCIDeviceList and virUSBDeviceList into virObjectLockable (Daniel P. Berrange),<br />
      Rename all USB device functions to have a standard name prefix (Daniel P. Berrange),<br />
      Rename all PCI device functions to have a standard name prefix (Daniel P. Berrange),<br />
      Remove pointless 'qemuVersion' field from virQEMUDriverPtr (Daniel P. Berrange),<br />
      Use atomic ops to increment nextvmid (Daniel P. Berrange),<br />
      Make virDomainObjList self-locking via virObjectLockable (Daniel P. Berrange),<br />
      Merge virDomainObjListIsDuplicate into virDomainObjListAdd (Daniel P. Berrange),<br />
      qemu: don't log failure during QMP add-fd probe (Eric Blake),<br />
      Turn virDomainObjList into an opaque virObject (Daniel P. Berrange),<br />
      Rename all domain list APIs to have virDomainObjList prefix (Daniel P. Berrange),<br />
      Introduce a virQEMUDriverConfigPtr object (Daniel P. Berrange),<br />
      Fix missing error constants in libvirt python module (Daniel P. Berrange),<br />
      qemu: Catch stderr of image compression binary (Michal Privoznik),<br />
      qemu: Catch stderr of image decompression binary (Michal Privoznik),<br />
      virFileWrapperFd: Switch to new virCommandDoAsyncIO (Michal Privoznik),<br />
      tests: Create test for virCommandDoAsyncIO (Michal Privoznik),<br />
      Introduce event loop to commandtest (Michal Privoznik),<br />
      virCommand: Introduce virCommandDoAsyncIO (Michal Privoznik),<br />
      conf: Use correct type for device type enum in virDomainDeviceDefFree (Peter Krempa),<br />
      Support shifted magic in storage files (Martin Kletzander),<br />
      virsh-secret: Refactor error paths (Peter Krempa),<br />
      virsh-nwfilter: Update nwfilter commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-snapshot: Update snapshot commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-snapshot: Refactor cmdSnapshotDumpXML (Peter Krempa),<br />
      virsh-nodedev: Refactor error paths, error messages and whitespace (Peter Krempa),<br />
      virsh-nodedev: Update node device commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-interface: Update interface commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-network: Update network commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-host: Update host commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-domain: Update domain commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-domain-monitor: Update domain commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-volume: Update volume commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh-pool: Update pool commands to use vshCommandOptStringReq (Peter Krempa),<br />
      virsh: Add helper to request string arguments with error reporting (Peter Krempa),<br />
      virsh-pool: Rename helper function buildPoolXML to vshBuildPoolXML (Peter Krempa),<br />
      virsh-volume: Rename helper function makeCloneXML to vshMakeCloneXML (Peter Krempa),<br />
      virsh-snapshot: Fix coding style and remove dead code (Peter Krempa),<br />
      hyperv: Simplify hypervPrivate pointer handling in hypervOpen (Matthias Bolte),<br />
      esx: Simplify esxPrivate pointer handling in esxOpen (Matthias Bolte),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      Add support for QEMU -add-fd support detection (Stefan Berger),<br />
      qemu: expose qemu 1.3 add-fd monitor command (Eric Blake),<br />
      tests: add a comment about our fake qmp (Eric Blake),<br />
      spec: Avoid using makeinstall relic (Jiri Denemark),<br />
      complete virterror-&gt;virerror name change (Serge Hallyn),<br />
      apibuild.py: fix TypeError raised in except clause (Claudio Bley),<br />
      Enforce return check on virAsprintf() calls (John Ferlan),<br />
      snapshot: Mention disk-only snapshots in error message (Peter Krempa)<br />
      </li><li>Cleanups:<br />
      Revert hack for autodestroy in qemuProcessStop (Daniel P. Berrange),<br />
      Revert "Add support for &lt;option&gt; tag in network config" (Laine Stump),<br />
      security: Remove unnecessary checks for mgr == NULL (John Ferlan),<br />
      vircommand: Remove unnecessary sa_assert (John Ferlan),<br />
      build: fix make check of remote_protocol-structs (Laine Stump),<br />
      spec: Fix minor changelog issues (Jiri Denemark)<br />
      </li></ul>
        <h3>1.0.2: Jan 30 2013</h3>
        <ul><li> Features:<br />
      LXC improvements (Daniel P. Berrange),<br />
      S390 architecture improvement (Viktor Mihajlovski),<br />
      Power architecture improvement (Li Zhang),<br />
      large Coverity report cleanups and associated bug fixes (John Ferlan),<br />
      virTypedParams* APIs to helps with those data structures (Jiri Denemark)<br />
      </li><li> Documentation:<br />
      aesthetical cleanups (Martin Kletzander),<br />
      fix missed documentation for virterror functions (Claudio Bley),<br />
      util: Fix docs for virBitmapParse (Peter Krempa),<br />
      rng: Have colorful *.rng with editor (Osier Yang),<br />
      safe{read,write}: Document usage with nonblocking FD (Michal Privoznik),<br />
      Generate documentation for virTypedParams* APIs (Jiri Denemark),<br />
      event.c source file was renamed as virevent.c (Jiri Denemark),<br />
      Add some style and color to the HTML documentation (Claudio Bley),<br />
      don't use &lt;i&gt; and &lt;tt&gt; HTML tags (Claudio Bley),<br />
      Assign classes to documentation elements (Claudio Bley),<br />
      remove extra " (Eric Blake),<br />
      maint: typo fix (Eric Blake),<br />
      restrict the set of characters for info keys (Claudio Bley),<br />
      simplify code (Claudio Bley),<br />
      mention git rename detection (Eric Blake),<br />
      add some more hacking tips (Eric Blake),<br />
      fix typo in isa-serial additions (Laine Stump),<br />
      network: fix typos and docs (Guannan Ren),<br />
      maint: fix comment typo (Eric Blake),<br />
      break longer text into paragraphs in HTML (Claudio Bley),<br />
      remove duplicate check in index.add (Claudio Bley),<br />
      Add missing flags to migrate documentation (Guido Günther),<br />
      Add docs and rng schema for new XML tag sgio (Osier Yang),<br />
      Fix the comment grammar (Osier Yang),<br />
      Remove the inexistent function in comments (Osier Yang),<br />
      fix typo in the word affinities (Martin Kletzander),<br />
      Fix documentation for readonly element (Jiri Denemark),<br />
      Replace &lt;/br&gt; with &lt;br/&gt; in docs/news.html.in (Peter Krempa)<br />
      </li><li> Portability:<br />
      Make sure we only abort without libcurl if $with_esx = yes (Guido Günther),<br />
      build: Fix RPM build errors related to libvirt-lxc API (Viktor Mihajlovski),<br />
      build: fix build on BSD (Eric Blake),<br />
      build: further fixes for broken if_bridge.h (Eric Blake),<br />
      securityselinuxhelper.c: Don't try to include xattr.h if not available (John Ferlan),<br />
      build: work around broken kernel header (Eric Blake),<br />
      build: avoid m4_expand for RHEL 5 (Eric Blake),<br />
      build: move file deleting action from %files list to %install (Yufang Zhang),<br />
      build: libvirt-guests files misplaced in specfile (Viktor Mihajlovski),<br />
      build: fix mingw rpm build (Eric Blake),<br />
      build: fix build with optimization enabled (Eric Blake),<br />
      build: make broken -Wlogical-op test be gcc-only (Eric Blake),<br />
      util: FreeBSD: stub out CPU affinity functions (Roman Bogorodskiy),<br />
      nodeinfo: add FreeBSD support (Roman Bogorodskiy),<br />
      build: Check for broken GCC -Wlogical-op in configure (Viktor Mihajlovski)<br />
      </li><li> Bug fixes:<br />
      conf: Don't format cputune element when not needed (Martin Kletzander),<br />
      conf: Fix cpumask leak in virDomainDefFree (Ján Tomko),<br />
      qemu: Destroy domain on decompression binary error (Michal Privoznik),<br />
      rpc: Fix crash on error paths of message dispatching (Peter Krempa),<br />
      vbox: Address false positive for NULL dereference (John Ferlan),<br />
      libxl: Fix removing non-persistent domain after save (Jim Fehlig),<br />
      libxl: Fix race between destruction of objects (Jim Fehlig),<br />
      libxl: Fix races in libxl event code (Jim Fehlig),<br />
      libxl: Fix handling of timeouts (Jim Fehlig),<br />
      conf: avoid NULL deref for pmsuspended domain state (Eric Blake),<br />
      qemu_monitor: Fix tray-open attribute in query-block (Michal Privoznik),<br />
      Fix bogus reporting of KVM support for non-native emulators (Daniel P. Berrange),<br />
      Move QEMU capabilities initialization later in QEMU startup (Daniel P. Berrange),<br />
      Fix performance &amp; reliability of QMP probing (Daniel P. Berrange),<br />
      qemu: escape ipv6 for rbd network disk hosts (Josh Durgin),<br />
      snapshot: fix state after external snapshot of S3 domain (Eric Blake),<br />
      python: Fix bindings for virDomainSnapshotGet{Domain,Connect} (Jiri Denemark),<br />
      Fix crash free'ing securityDriverNames in QEMU driver (Daniel P. Berrange),<br />
      Fix leak of securityDriverNames (Daniel P. Berrange),<br />
      Avoid use of free'd memory in auto destroy callback (Daniel P. Berrange),<br />
      Ensure nodeinfo struct is initialized to zero (Daniel P. Berrange),<br />
      apparmor: Avoid freeing uninitialized pointer (Jiri Denemark),<br />
      xen: Actually fix the uninitialized variable (Peter Krempa),<br />
      xen: Initialize variable before using (Peter Krempa),<br />
      util: Need to add virCommandFree() (John Ferlan),<br />
      storage: Need to add virCommandFree() (John Ferlan),<br />
      security: Need to add virCommandFree() (John Ferlan),<br />
      parallels: Resolve some resource leaks (John Ferlan),<br />
      qemu: Re-add driver unlock to qemuDomainSendKey (Viktor Mihajlovski),<br />
      conf: Fix usage of virBitmapParse (Peter Krempa),<br />
      virbitmaptest: Resolve Coverity errors (John Ferlan),<br />
      lxc_process: Avoid passing NULL iface-&gt;iname (John Ferlan),<br />
      lxc_driver: Need to check for vm before calling virDomainUnlock(vm) (John Ferlan),<br />
      tests: Remove VIR_FREE() on static/stack buffer (der.data) (John Ferlan),<br />
      Fix nwfilter driver reload/shutdown handling when unprivileged (Daniel P. Berrange),<br />
      conf: Check if number of vCPUs fits in the storage variable (Peter Krempa),<br />
      tests: Need to initialize 'test' properly on error path (John Ferlan),<br />
      virkeepalive: Remove erroneous VIR_FREE(msg) (John Ferlan),<br />
      security: Need to initialize 'sens' (John Ferlan),<br />
      interface: Need to initialize 'ifaces_list' (John Ferlan),<br />
      storage: Need to initialize 'zerobuf' (John Ferlan),<br />
      virsh: Need to intialize 'str' (John Ferlan),<br />
      lxc: Need to initialize 'dst' (John Ferlan),<br />
      virfile: Need to initialize 'looppath' (John Ferlan),<br />
      commandtest: Need to initialize 'errbuf' (John Ferlan),<br />
      virnetdev: Need to initialize 'pciConfigAddr' (John Ferlan),<br />
      virnetsockettest: Need to initialize 'path' (John Ferlan),<br />
      virnetserver: Need to initialize 'sigdata' (John Ferlan),<br />
      conf: Need to initialize variables before VIR_FREE (John Ferlan),<br />
      uml: Avoid resource leak of event in umlInofityEvent (John Ferlan),<br />
      selinux: Resolve resource leak using the default disk label (John Ferlan),<br />
      util: Need to check child JSON allocation before use (John Ferlan),<br />
      parallels: Need to handle virJSONValueObjectGetString error (John Ferlan),<br />
      qemu: Reject attempts to create snapshots with names containing '/' (Peter Krempa),<br />
      qemu: Don't return success if creation of snapshot save file fails (Peter Krempa),<br />
      Fix race condition when destroying guests (Daniel P. Berrange),<br />
      storage: Fix lvcreate parameter for backingStore. (Atsushi Kumagai),<br />
      virobject: Remove the bogus ! from call to virObjectInitialize() (John Ferlan),<br />
      qemu: Check valid activeDev before calling pciDeviceSetUsedBy (John Ferlan),<br />
      Followup fix for integer wraparound in port allocator (Daniel P. Berrange),<br />
      qemu: Double mutex unlock in qemuDomainModifyDeviceFlags (Viktor Mihajlovski),<br />
      fixed xt_physdev warning when defining ip(6)tables rules (Reinier Schoof),<br />
      conf: don't fail to parse &lt;boot&gt; when parsing a single device (Laine Stump),<br />
      Fix inheritance of virNetClient (Daniel P. Berrange),<br />
      Avoid integer wrap on remotePortMax in QEMU driver (Daniel P. Berrange),<br />
      python: Avoid freeing uninitialized new_params pointer (Jiri Denemark),<br />
      Fix typo in variable name (Guido Günther),<br />
      libxl: Fix cleanup on domain start error (Jim Fehlig),<br />
      libxl: Check for libxl_ctx_alloc failure (Jim Fehlig),<br />
      libxl: Don't free domain death event (Jim Fehlig),<br />
      locking: Resolve resource leaks on non error path (John Ferlan),<br />
      conf: fix leak in virDomainVcpuPinAdd (Ján Tomko),<br />
      conf: fix class_id bitmap leak in virNetworkObj (Ján Tomko),<br />
      qemu: fix QEMU_CAPS_NO_ACPI detection (Ján Tomko),<br />
      openvz: Need to check 'vm' first before dereferencing 'def' (John Ferlan),<br />
      interface: Need to check ifacedef-&gt;mac not just ifacedef after strdup() (John Ferlan),<br />
      qemu: Don't update count of vCPUs if hot-unplug has failed (Peter Krempa),<br />
      libvirt: lxc: don't mkdir when selinux is disabled (Gao feng),<br />
      xen: Resolve resource leak with 'cpuset' (John Ferlan),<br />
      interface: Resolve resource leak wth 'tmp_iface_objs' (John Ferlan),<br />
      storage: Resource resource leak using 'tmp_vols' (John Ferlan),<br />
      test: Resource resource leak with 'tmp_vols' (John Ferlan),<br />
      rpc: Avoid resource leak of 'socks' if any object append fails (John Ferlan),<br />
      util: Resolve resource leak for 'res' in virSetInherit error path. (John Ferlan),<br />
      interface: Need to initialize 'add_to_list' (John Ferlan),<br />
      lxc: Initialize dst due to potential cleanup usage before setting (John Ferlan),<br />
      openvz: Need to initialize 'ret' for kb_per_pages error path (John Ferlan),<br />
      parallels: Resolve issues with uninitialized 'ret' value (John Ferlan),<br />
      storage: Need to also VIR_FREE(reg) (John Ferlan),<br />
      Fix typo LIBCURL_{CFLAGS,LIBS} to CURL_{CFLAGS,LIBS} (Daniel P. Berrange),<br />
      Fix build due to previous LXC patch (Daniel P. Berrange),<br />
      build: fix incomplete WITH_SASL conversion (Eric Blake),<br />
      network: bridge: Fix regression when defining persistent networks (Peter Krempa),<br />
      storage: Resolve resource leak using 'vol' buffer (John Ferlan),<br />
      phyp: Resolve some file descriptor leaks (John Ferlan),<br />
      qemu_agent: Remove agent reference only when disposing it (Michal Privoznik),<br />
      libvirt: lxc: fix incorrect parameter of lxcContainerMountProcFuse (Gao feng),<br />
      util: Check for NULL 'dev' on input to usbFreeDevice (John Ferlan),<br />
      maint: avoid potential promotion issues with [ug]id_t (Eric Blake),<br />
      Resolve COPY_PASTE error found by Coverity (John Ferlan),<br />
      storage: fix leak in virStorageBackendLogicalMakeVol (Ján Tomko),<br />
      cpu: Avoid NULL dereference (John Ferlan),<br />
      lxc: Avoid possible NULL dereference on *root prior to opendir(). (John Ferlan),<br />
      remote: Avoid calling virAuthConfigLookup() if 'credname' is NULL. (John Ferlan),<br />
      vmware: Avoid NULL dereference for 'caps' (John Ferlan),<br />
      xen: Avoid possible NULL dereference (John Ferlan),<br />
      Fix virLXCPrepareHostDevices method (Daniel P. Berrange),<br />
      Only initialize capabilities after setting dir permissions (Daniel P. Berrange),<br />
      build: install libvirt sysctl file correctly (Eric Blake),<br />
      snapshot: qemu: Fix segfault and vanishing snapshots when redefining (Peter Krempa),<br />
      qemu: Detect VGA_QXL capability correctly (Michal Privoznik),<br />
      qemu: fix a segfault in qemuProcessWaitForMonitor (Ján Tomko),<br />
      parallels: check and handle error for virAsprintf() calls (John Ferlan),<br />
      udev: check and handle error for virAsprintf() calls (John Ferlan),<br />
      util: fix botched check for new netlink request filters (Laine Stump),<br />
      blockjob: fix memleak that prevented block pivot (Eric Blake),<br />
      util: fix functions that retrieve SRIOV VF info (Laine Stump),<br />
      Fix parsing of arch from domain XML (Daniel P. Berrange),<br />
      Fix CPU baseline to not hardcode arch (Daniel P. Berrange),<br />
      Fix SELinux security label test (Daniel P. Berrange),<br />
      spec: Fix script warning when uninstalling libvirt-client (Cole Robinson),<br />
      network: don't require private addresses if dnsmasq uses SO_BINDTODEVICE (Laine Stump),<br />
      `apparmor: Fix build (Jiri Denemark),<br />
      S390: Fix virSysinfoRead memory corruption (Viktor Mihajlovski)<br />
      </li><li> Improvements:<br />
      Ignore '.trs' files (Martin Kletzander),<br />
      build: Regenerate man pages on version bump (Jiri Denemark),<br />
      rng: Change the datatype for volume name for common use (Osier Yang),<br />
      rng: Remove the duplicate definition (Osier Yang),<br />
      qemu_hotplug: Rework media changing process (Michal Privoznik),<br />
      maint: one missed syms file (Eric Blake),<br />
      vbox: Adjust the UTF FREE macros (John Ferlan),<br />
      virsh: Add --print-xml flag for attach-disk command (Peter Krempa),<br />
      libxl: Domain event handler improvements (Jim Fehlig),<br />
      libxl: Explicitly remove timeouts (Jim Fehlig),<br />
      maint: make it easier to sort syms files (Eric Blake),<br />
      qemuDomainSendKey: Relax the qemu driver locking (Michal Privoznik),<br />
      node_memory: Add '\n' to help message (Satoru Moriya),<br />
      locking: use virStrcpyStatic instead of memcpy (John Ferlan),<br />
      Make python objects inherit from 'object' base class (Daniel P. Berrange),<br />
      selinux: Properly indent preprocessor directives (Jiri Denemark),<br />
      selinux: Only create the selabel_handle once. (Richard W.M. Jones),<br />
      parallels_utils: Check return status properly from virCommandRun() (John Ferlan),<br />
      test: Add support for thread and core information for the test driver (Peter Krempa),<br />
      capabilities: Add additional data to the NUMA topology info (Peter Krempa),<br />
      capabilities: Switch CPU data in NUMA topology to a struct (Peter Krempa),<br />
      conf: Split out NUMA topology formatting to simplify access to data (Peter Krempa),<br />
      schemas: Add schemas for more CPU topology information in the caps XML (Peter Krempa),<br />
      schema: Make the cpuset type reusable across schema files (Peter Krempa),<br />
      S390: Enhance memballoon handling for virtio-s390 (Viktor Mihajlovski),<br />
      qemu_agent: Ignore expected EOFs (Michal Privoznik),<br />
      nodeinfo: Use sa_assert() instead of Coverity error tag (John Ferlan),<br />
      build: allow virObject to have no parent (Eric Blake),<br />
      qemu: Support ram bar size for qxl devices (Alon Levy),<br />
      viralloc: Adjust definition of VIR_FREE() for Coverity (John Ferlan),<br />
      conf: Improve error messages if parsing of vCPU count fails (Peter Krempa),<br />
      virsh-domain: Refactor error paths for cmdCPUStats (Peter Krempa),<br />
      fix typos in comments for VIR_DOMAIN_PROCESS_SIGNAL_{PWR,SYS} (Claudio Bley),<br />
      storage: Add coverity[dead_error_condition] to avoid error (John Ferlan),<br />
      network: Add coverity[leaked_handle] to ignore error (John Ferlan),<br />
      remote: Avoid coverity[leaked_storage] message. (John Ferlan),<br />
      qemu: Add coverity[negative_returns] tag (John Ferlan),<br />
      rpc: Add coverity[dead_error_begin] tag (John Ferlan),<br />
      xen: Add coverity[ptr_arith] and [sign_extension] tags (John Ferlan),<br />
      nodeinfo: Add coverity[dead_error_begin] and [returned_null] tags (John Ferlan),<br />
      lxc: Add coverity[dead_error_begin] tag in switch stmts (John Ferlan),<br />
      xend: Address some Coverity false positives (John Ferlan),<br />
      security: Use virStrcpy to move the label (John Ferlan),<br />
      qemu: Forbid snapshot names starting with '.' (Peter Krempa),<br />
      spec: indent %if to make it easier to see conditions (Eric Blake),<br />
      Log flags passed to qemuMigrationPrepare{Tunnel,Direct} APIs (Michal Privoznik),<br />
      Introduce virTypedParamsClear public API (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in cpu-stats (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in node-memory-tune (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in numatune (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in memtune (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in domblkstat (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in schedinfo (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in domiftune (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in blkiotune (Jiri Denemark),<br />
      virsh: Use virTypedParams* APIs in blkdeviotune (Jiri Denemark),<br />
      Add virTypedParams* APIs (Jiri Denemark),<br />
      qemu: Simplify condition with already extracted flag (Peter Krempa),<br />
      network: use bandwidth from portgroup when appropriate (Laine Stump),<br />
      network: Resolve some issues around vlan copying (John Ferlan),<br />
      lock_daemon: Simplify error handling (Peter Krempa),<br />
      virsh-volume.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-snapshot.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-secret.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-pool.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-nwfilter.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-nodedev.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-network.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-interface.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-host.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-domain-monitor.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh-domain.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      virsh.c: Switch to C99 initialization of vshCmdOptDef (Michal Privoznik),<br />
      libvirt.c: fix typo in comment (Claudio Bley),<br />
      Move comments after enum members (Claudio Bley),<br />
      include virterror_internal.h in threads.h (Hu Tao),<br />
      include util.h in cgroup.h (Hu Tao),<br />
      call virstateCleanup to do the cleanup before libvirtd exits (Hu Tao),<br />
      libxl: Use consistent parameter naming scheme (Jim Fehlig),<br />
      libxl: Use consistent style for function definitions (Jim Fehlig),<br />
      Convert libxl driver over to use virPortAllocator APIs (Daniel P. Berrange),<br />
      Convert QEMU driver over to use virPortAllocator APIs (Daniel P. Berrange),<br />
      Add a port allocator class (Daniel P. Berrange),<br />
      Convert all rpc classes over to virObjectLockable (Daniel P. Berrange),<br />
      Convert virDomainObj, qemuAgent, qemuMonitor, lxcMonitor to virObjectLockable (Daniel P. Berrange),<br />
      util: Check for negative indent in virBufferAdd (John Ferlan),<br />
      tools: Check return status on virBufferTrim() (John Ferlan),<br />
      rpc: Check and message setsockopt() (John Ferlan),<br />
      xen: Ignore return status for TCP_NODELAY (John Ferlan),<br />
      Add a virObjectLockable class holding a mutex (Daniel P. Berrange),<br />
      Allow for multi-level inheritance of virObject classes (Daniel P. Berrange),<br />
      Add 'lxc-enter-namespace' command to virsh (Daniel P. Berrange),<br />
      build: add new file, for lxc_protocol checking (Eric Blake),<br />
      Add implementation of virDomainLxcOpenNamespace to LXC driver (Daniel P. Berrange),<br />
      Implement the RPC protocol for the libvirt-lxc.la library (Daniel P. Berrange),<br />
      .gitignore: Sort alphabetically (Michal Privoznik),<br />
      Add missing stubs to securityselinuxhelper.c (Daniel P. Berrange),<br />
      Introduce an LXC specific public API &amp; library (Daniel P. Berrange),<br />
      Add a test suite for validating SELinux labelling (Daniel P. Berrange),<br />
      Rename HAVE_POLKIT to WITH_POLKIT (Daniel P. Berrange),<br />
      Remove unused XMLRPC_REQUIRED var (Daniel P. Berrange),<br />
      Convert openwsman check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert ssh2 check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Rename HAVE_LIBSSH2 to WITH_SSH2 (Daniel P. Berrange),<br />
      Convert curl check over to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Rename HAVE_LIBCURL to WITH_CURL (Daniel P. Berrange),<br />
      Convert fuse check over to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Rename HAVE_FUSE to WITH_FUSE (Daniel P. Berrange),<br />
      Rename HAVE_GNUTLS to WITH_GNUTLS (Daniel P. Berrange),<br />
      Convert blkid check over to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert HAVE_LIBBLKID to WITH_BLKID (Daniel P. Berrange),<br />
      Convert HAL check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert HAVE_HAL to WITH_HAL (Daniel P. Berrange),<br />
      Convert udev/pciaccess checks to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert HAVE_UDEV to WITH_UDEV (Daniel P. Berrange),<br />
      Convert avahi check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert HAVE_AVAHI to WITH_AVAHI (Daniel P. Berrange),<br />
      Convert DBus check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert HAVE_DBUS to WITH_DBUS (Daniel P. Berrange),<br />
      Convert netcf check to use LIBVIRT_CHECK_PKG (Daniel P. Berrange),<br />
      Convert cap-ng check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),<br />
      Convert HAVE_CAPNG to WITH_CAPNG (Daniel P. Berrange),<br />
      Convert numactl checks to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),<br />
      Convert HAVE_NUMACTL to WITH_NUMACTL (Daniel P. Berrange),<br />
      Convert apparmor check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),<br />
      Convert selinux check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),<br />
      Convert HAVE_SELINUX to WITH_SELINUX (Daniel P. Berrange),<br />
      qemu: Fix grouping of capabilities strings (Peter Krempa),<br />
      network: Report real error if addition of firewall rules fails (Peter Krempa),<br />
      virsh: Reformat output of virsh net-list (Peter Krempa),<br />
      Convert audit check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),<br />
      Convert HAVE_AUDIT to WITH_AUDIT (Daniel P. Berrange),<br />
      Convert sasl check to use LIBVIRT_CHECK_LIB_ALT (Daniel P. Berrange),<br />
      Convert HAVE_SASL to WITH_SASL (Daniel P. Berrange),<br />
      Convert sanlock check to use LIBVIRT_CHECK_LIB (Daniel P. Berrange),<br />
      Convert HAVE_SANLOCK to WITH_SANLOCK (Daniel P. Berrange),<br />
      Convert yajl check to use LIBVIRT_CHECK_LIB_ALT (Daniel P. Berrange),<br />
      Convert HAVE_YAJL into WITH_YAJL (Daniel P. Berrange),<br />
      Add some autoconf helper macros for checking for libraries (Daniel P. Berrange),<br />
      build: require avahi instead of avahi-libs on rhel5. (Yufang Zhang),<br />
      util: reduce syscalls for virGetDeviceID (Eric Blake),<br />
      pass stub driver name instead of pciFindStubDriver (Chunyan Liu),<br />
      qemu: add usb-net caps flag (Guannan Ren),<br />
      qemu: add usb-serial support (Guannan Ren),<br />
      qemu: add usb-serial caps flag (Guannan Ren),<br />
      maint: distribute libvirtd.service.in (Eric Blake),<br />
      Add RESUME event listener to qemu monitor. (Andres Lagar-Cavilla),<br />
      nwfilter: Remove unprivileged code path to set base (John Ferlan),<br />
      Make TLS support conditional (Daniel P. Berrange),<br />
      qemu: Relax hard RSS limit (Michal Privoznik),<br />
      S390: Enable SCLP Console in QEMU driver (J.B. Joret),<br />
      S390: Add SCLP console front end support (J.B. Joret),<br />
      Rename lxc_protocol.x to lxc_monitor_protocol.x (Daniel P. Berrange),<br />
      Add internal APIs for dealing with namespaces (Daniel P. Berrange),<br />
      Add a way to return FDs to the RPC caller (Daniel P. Berrange),<br />
      Fix receiving of file descriptors from server (Daniel P. Berrange),<br />
      Move qemu-XXX commands from virsh-host.c to virsh-domain.c (Daniel P. Berrange),<br />
      Ensure we always setup a private mount namespace for LXC controller (Daniel P. Berrange),<br />
      Speed up fallback to legacy non-QMP probing (Daniel P. Berrange),<br />
      build: Add libxenctrl to LIBXL_LIBS (Jim Fehlig),<br />
      build: .service files don't need to be executable (Eric Blake),<br />
      build: properly substitute virtlockd.socket (Eric Blake),<br />
      build: use common .in replacement mechanism (Eric Blake),<br />
      qemu: Check if the shared disk's cdbfilter conflicts with others (Osier Yang),<br />
      qemu: set unpriv_sgio when starting domain and attaching disk (Osier Yang),<br />
      conf: Parse and format the new XML (Osier Yang),<br />
      qemu: Add a hash table for the shared disks (Osier Yang),<br />
      util: Prepare helpers for unpriv_sgio setting (Osier Yang),<br />
      snapshot: qemu: Allow redefinition of external snapshots (Peter Krempa),<br />
      snapshot: qemu: Separate logic blocks with newlines (Peter Krempa),<br />
      snapshot: conf: Make virDomainSnapshotIsExternal more reusable (Peter Krempa),<br />
      qemu: Implement virDomainOpenChannel API (John Eckersberg),<br />
      conf: Add unix socket support to virChrdevOpen (John Eckersberg),<br />
      conf: Rename console-specific identifiers to be more generic (John Eckersberg),<br />
      conf: Rename virconsole.* to virchrdev.* (John Eckersberg),<br />
      api: Add API to tunnel a guest channel via stream (John Eckersberg),<br />
      network: fix check for ambiguous lookup (Eric Blake),<br />
      Check and handle select() errors from waitsocket(). (John Ferlan),<br />
      tests: check and handle error for virAsprintf() calls (John Ferlan),<br />
      Check return on mkdir for LOCKSPACE_DIR (John Ferlan),<br />
      vmware: silence Coverity warning (John Ferlan),<br />
      Install virtlockd.{socket,service} non executable (Guido Günther),<br />
      qemu: Don't parse log output when starting up a domain (Michal Privoznik),<br />
      build: use autobuild module to make build logs nicer (Eric Blake),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      sanlock: Chown lease files as well (Michal Privoznik),<br />
      python: Adapt to virevent rename (Michal Privoznik),<br />
      qemu: Convert some APIs to use qemuDomObjFromDomain (Michal Privoznik),<br />
      qemu: Relax locking in DomainHasManagedSaveImage and DomainMonitorCommand (Michal Privoznik),<br />
      S390: Re-enable capability probing for virtio devices. (Viktor Mihajlovski),<br />
      Sort util files in Makefile.am alphabetically (Daniel P. Berrange),<br />
      Rename virterror.c virterror_internal.h to virerror.{c,h} (Daniel P. Berrange),<br />
      Rename xml.{c,h} to virxml.{c,h} (Daniel P. Berrange),<br />
      Rename uuid.{c,h} to viruuid.{c,h} (Daniel P. Berrange),<br />
      Rename util.{c,h} to virutil.{c,h} (Daniel P. Berrange),<br />
      Rename threads.{c,h} to virthread.{c,h} (Daniel P. Berrange),<br />
      Rename threadpool.{c,h} to virthreadpool.{c,h} (Daniel P. Berrange),<br />
      Rename sysinfo.{c,h} to virsysinfo.{c,h} (Daniel P. Berrange),<br />
      Rename storage_file.{c,h} to virstoragefile.{c,h} (Daniel P. Berrange),<br />
      Rename stats_linux.{c,h} to virstatslinux.{c,h} (Daniel P. Berrange),<br />
      Rename sexpr.{c,h} to virsexpr.{c,h} (Daniel P. Berrange),<br />
      Merge processinfo.{c,h} into virprocess.{c,h} (Daniel P. Berrange),<br />
      Rename pci.{c,h} to virpci.{c,h} (Daniel P. Berrange),<br />
      Rename memory.{c,h} to viralloc.{c,h} (Daniel P. Berrange),<br />
      Rename logging.{c,h} to virlog.{c,h} (Daniel P. Berrange),<br />
      Rename json.{c,h} to virjson.{c,h} (Daniel P. Berrange),<br />
      Rename iptables.{c,h} to viriptables.{c,h} (Daniel P. Berrange),<br />
      Rename hostusb.{c,h} to virusb.{c,h} (Daniel P. Berrange),<br />
      Rename hooks.{c,h} to virhook.{c,h} (Daniel P. Berrange),<br />
      Rename event_poll.{c,h} to vireventpoll.{c,h} (Daniel P. Berrange),<br />
      Rename event.{c,h} to virevent.{c,h} (Daniel P. Berrange),<br />
      Rename ebtables.{c,h} to virebtables.{c,h} (Daniel P. Berrange),<br />
      Rename dnsmasq.{c,h} to virdnsmasq.{c,h} (Daniel P. Berrange),<br />
      Rename conf.{c,h} to virconf.{c,h} (Daniel P. Berrange),<br />
      Rename command.{c,h} to vircommand.{c,h} (Daniel P. Berrange),<br />
      Rename buf.{c,h} to virbuffer.{c,h} (Daniel P. Berrange),<br />
      Rename bitmap.{c,h} to virbitmap.{c,h} (Daniel P. Berrange),<br />
      Rename cgroup.{h,c} to vircgroup.{h,c} (Daniel P. Berrange),<br />
      Support all backend serial devices for pSeries guest (Li Zhang),<br />
      Remove QEMU_CAPS_NO_ACPI capability for non-x86 platform (Li Zhang),<br />
      Set std VGA model as default model for ppc64. (Li Zhang),<br />
      Add sysinfo data and enable virSysinfoRead test case for POWER (Li Zhang),<br />
      util: add missing error log messages when failing to get netlink VFINFO (Laine Stump),<br />
      security: fix #endif comment in security_stack.h (Ján Tomko),<br />
      build: use strchr now that we can work around broken gcc (Eric Blake),<br />
      Fix arch datatype in vahControl in virt-aa-helper.c (Daniel P. Berrange),<br />
      Change string form of VIR_ARCH_ITANIUM back to ia64 (Daniel P. Berrange),<br />
      conf: eliminate redundant use of VIR_ALLOC (Martin Kletzander),<br />
      Fix libxl driver for virArch changes (Daniel P. Berrange),<br />
      Fix test cases for virArch changes (Daniel P. Berrange),<br />
      Fix XenAPI driver for virArch changes (Daniel P. Berrange),<br />
      Export all symbols from virarch.{c,h} to drivers/tests/etc (Daniel P. Berrange),<br />
      Convert QEMU capabilities code to use virArch (Daniel P. Berrange),<br />
      spec: Do not install *.py[co] in python examples (Jiri Denemark),<br />
      Convert CPU APIs to use virArch (Daniel P. Berrange),<br />
      Convert capabilities / domain_conf to use virArch (Daniel P. Berrange),<br />
      Convert QEMU command line builder to virArch APIs (Daniel P. Berrange),<br />
      Convert nodeGetInfo to virArch APIs (Daniel P. Berrange),<br />
      Introduce a set of APIs for managing architectures (Daniel P. Berrange),<br />
      build: Fix AUTHORS generation (Jiri Denemark),<br />
      network: fix indentation of networkDnsmasqConfContents (Laine Stump),<br />
      .gitignore: add tests/sysinfotest (Cole Robinson),<br />
      hostusb: Move USB_DEVFS define to hostusb.h to fix the build (Cole Robinson),<br />
      daemon: Preface polkit error output with 'polkit:' (Cole Robinson),<br />
      Add support for hotplug/unplug of host misc devices in LXC (Daniel P. Berrange),<br />
      Add support for hotplug/unplug of host storage devices in LXC (Daniel P. Berrange),<br />
      Add support for hotplug/unplug of USB host devices in LXC (Daniel P. Berrange),<br />
      Add support for hotplug/unplug of NIC devices in LXC (Daniel P. Berrange),<br />
      Add support for hotplug/unplug of disk devices in LXC (Daniel P. Berrange),<br />
      Add support for attach/detach/update hostdev devices in config for LXC (Daniel P. Berrange),<br />
      Add support for attach/detach/update disk devices in config for LXC (Daniel P. Berrange),<br />
      Add support for attach/detach/update net devices in config for LXC (Daniel P. Berrange),<br />
      Add basic driver API framework for device attach/detach support in LXC (Daniel P. Berrange),<br />
      Add support for misc host device passthrough with LXC (Daniel P. Berrange),<br />
      Add support for storage host device passthrough with LXC (Daniel P. Berrange),<br />
      Add support for USB host device passthrough with LXC (Daniel P. Berrange),<br />
      Add support for disks with LXC (Daniel P. Berrange),<br />
      Add support for SELinux labelling of hostdev storage/misc devices (Daniel P. Berrange),<br />
      Refactor SELinux security driver hostdev labelling (Daniel P. Berrange),<br />
      Allow passing a vroot into security manager hostdev labelling (Daniel P. Berrange),<br />
      Skip bulk relabelling of resources in SELinux driver when used with LXC (Daniel P. Berrange),<br />
      Refactor LXC NIC creation to allow reuse by hotplug code (Daniel P. Berrange),<br />
      Add support for &lt;hostdev mode="capabilities"&gt; (Daniel P. Berrange),<br />
      tests: Add tests for sysinfo (Viktor Mihajlovski),<br />
      conf: cpu: Break some long lines (Peter Krempa),<br />
      conf: cpu: Refactor parsing of vendor_id and fallback attributes (Peter Krempa),<br />
      conf: cpu: Fix memory leak when specifying cpu vendor_id manually (Peter Krempa),<br />
      conf: cpu: Fix parsing of vendor_id (Ken ICHIKAWA),<br />
      Support custom 'svirt_tcg_t' context for TCG based guests (Daniel P. Berrange),<br />
      tests: add one -device video device testcase (Guannan Ren),<br />
      qemu: use newer -device video device in qemu commandline (Guannan Ren),<br />
      conf: add optional attribte primary to video &lt;model&gt; element (Guannan Ren),<br />
      qemu: add qemu vga devices caps and one cap to mark them usable (Guannan Ren)<br />
      </li><li> Cleanups:<br />
      virlog: remove old code comment (Doug Goldstein),<br />
      rpc: Revert Coverity tag message (John Ferlan),<br />
      rpc: Remove unnecessary calls (John Ferlan),<br />
      network: Remove dead code getting, but not using ipdef (John Ferlan),<br />
      esx: No need to check for objectSpec (John Ferlan),<br />
      parallels: Remove unused JSON fetch of "OS" (John Ferlan),<br />
      virsh: Remove unused setting of 'br_node' and 'if_node' (John Ferlan),<br />
      util: Remove the unused setting of 'res' for virHashLookup return (John Ferlan),<br />
      locking: Remove unnecessary setting of lockspace (John Ferlan),<br />
      maint: don't distribute generated .def files (Eric Blake),<br />
      spec: remove redundant %if (Eric Blake),<br />
      libvirt.h.in: Fix indentation (Michal Privoznik),<br />
      Fix wrong indentation for virDomainState (Claudio Bley),<br />
      tests: Remove remnants of removing the fake emulator output (John Ferlan),<br />
      phyp: Remove deadcode referencing exit_status (John Ferlan),<br />
      build: avoid compiler warning (Eric Blake),<br />
      maint: formatting cleanups in buf.c (Eric Blake),<br />
      conf: minor indentation cleanups (Martin Kletzander)<br />
      </li></ul>
        <h3>1.0.1: Dec 17 2012</h3>
        <ul><li> Features:<br />
      Introduce virtlockd daemon (Daniel P. Berrange),<br />
      parallels: add disk and network device support (Dmitry Guryanov),<br />
      Add virDomainSendProcessSignal API (Daniel P. Berrange),<br />
      Introduce virDomainFSTrim() public API (Michal Privoznik),<br />
      add fuse support for libvirt lxc (Gao feng),<br />
      Add Gluster protocol as supported network disk backend (Harsh Prateek Bora),<br />
      various snapshot improvements (Peter Krempa, Eric Blake)<br />
      </li><li> Documentation:<br />
      fix some typos in examples (Eric Blake),<br />
      Fix location of libvirt.conf and auth.conf (Michał Łomnicki),<br />
      Document offline migration (Jiri Denemark),<br />
      libvirt.c: Fix wording and grammar in virDomainFSTrim (Michal Privoznik),<br />
      Fix a few spaces (Ján Tomko),<br />
      boot order for host and redirected USB devices (Ján Tomko),<br />
      AbortJob: Fix documentation (Michal Privoznik),<br />
      Fix "virsh create" example (Guido Günther)<br />
      </li><li> Portability:<br />
      build: minor build fixes for BSD (Eric Blake),<br />
      Socket identity support for FreeBSD. (Roman Bogorodskiy),<br />
      Require SANLK_INQ_WAIT for inq_lockspace support (Guido Günther),<br />
      locking: Fix VPATH build and distribute generated files (Jiri Denemark),<br />
      build: Fix VPATH build (Jiri Denemark),<br />
      Change virCgroupGetAppRoot stub on non-Linux to avoid unused param warning (Daniel P. Berrange),<br />
      Qemu FreeBSD: fix compilation (Roman Bogorodskiy),<br />
      Drop mntent.h include. (Roman Bogorodskiy),<br />
      virsh: Fix usage of header termios.h (Peter Krempa),<br />
      pci: Fix building of 32bit PCI command array (Peter Krempa),<br />
      spec: require dbus-daemon when using libvirtd in Fedora (Eric Blake),<br />
      systemd: require dbus service (Eric Blake),<br />
      rpc: fix build failure with older dbus (Eric Blake),<br />
      build: fix build --without-network (Ján Tomko),<br />
      build: trivial fix error: implicit declaration of function 'malloc' (Natanael Copa),<br />
      run bootstrap if .gnulib is not present (Hu Tao),<br />
      add ppc64 and s390x to arches where qemu-kvm exists (Dan Horák),<br />
      nodeinfo: port nodecpumap to RHEL5 (Eric Blake),<br />
      spec: don't enable cgconfig under systemd (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      network: fix (non)update of dnsmasq config during virDomainUpdateDeviceFlags (Laine Stump),<br />
      sanlock: Re-add lockspace unconditionally (Michal Privoznik),<br />
      install: fix virtlockd installation (Eric Blake),<br />
      qemu: don't fail update netdev on bridge detach failure (Laine Stump),<br />
      selinux: fix NULL dereference in GetSecurityMountOptions (Ján Tomko),<br />
      network: prevent dnsmasq from listening on localhost (Laine Stump),<br />
      Fix error reporting when fetching SCSI/LVM keys (Daniel P. Berrange),<br />
      Fix probing of QED file format (Daniel P. Berrange),<br />
      Fix memory leak in QEMU QMP capabilities initialization (Daniel P. Berrange),<br />
      qemu: snapshot: Remove memory image if external checkpoint fails (Peter Krempa),<br />
      qemu: snapshot: Don't leak XML definition if restarting of CPUs fails (Peter Krempa),<br />
      qemu: fix uninitialized variable warning in doPeer2PeerMigrate (Ján Tomko),<br />
      conf: Remove duplicate declaration of virNetworkDNSDefPtr (Jiri Denemark),<br />
      qemu: Restart CPUs with valid async job type when doing external snapshots (Peter Krempa),<br />
      qemu: eliminate bogus error log when changing netdev's bridge (Laine Stump),<br />
      qemu: capabilities: fix machine name/canonical swappage (Cole Robinson),<br />
      Inhibit daemon shutdown during driver initialization (Guido Günther),<br />
      util: Don't fail virGetGroupIDByName when group not found (Christophe Fergeau),<br />
      util: Don't fail virGetUserIDByName when user not found (Christophe Fergeau),<br />
      storage: Error out earlier if the volume target path already exists (Osier Yang),<br />
      remote: Avoid the thread race condition (Daniel P. Berrange),<br />
      qemu: Fix memory (and FD) leak on PCI device detach (Jiri Denemark),<br />
      qemu: Don't free PCI device if adding it to activePciHostdevs fails (Jiri Denemark),<br />
      qemu: Fix error code when attaching existing device (Jiri Denemark),<br />
      Fix memory leak introduced by commit 501bfad1 (Jim Fehlig),<br />
      Shut down session libvirtd cleanly on host shutdown/user logout (Alexander Larsson),<br />
      Inhibit desktop shutdown while any virtual machines are running (Daniel P. Berrange),<br />
      conf: prevent crash with no uuid in cephx auth secret (Ján Tomko),<br />
      virsh: don't crash if shutdown --mode not provided (Eric Blake),<br />
      qemu: Fix up the default machine type for QMP probing (Viktor Mihajlovski),<br />
      Fix uninitialized variables (Guido Günther),<br />
      qemu: don't attempt undefined QMP commands (Eric Blake),<br />
      storage: fix scsi detach regression with cgroup ACLs (Eric Blake),<br />
      nwfilter: report an error on OOM (Ján Tomko),<br />
      virsh: check the return value of virStoragePoolGetAutostart (Ján Tomko),<br />
      conf: fix uninitialized variable in virDomainListSnapshots (Ján Tomko),<br />
      rpc: don't destroy xdr before creating it in virNetMessageEncodeHeader (Ján Tomko),<br />
      virsh: use correct sizeof when allocating cpumap (Ján Tomko),<br />
      util: fix virBitmap allocation in virProcessInfoGetAffinity (Ján Tomko),<br />
      conf: fix NULL check in virNetDevBandwidthParse (Ján Tomko),<br />
      Don't fail hard when we can't connect to the monitor (Guido Günther),<br />
      node_memory: Fix bug of node_memory_tune (Osier Yang),<br />
      node_memory: Do not fail if there is parameter unsupported (Osier Yang),<br />
      network: fix crash when portgroup has no name (Laine Stump),<br />
      maint: Fix use of invalid reboot flags (Michal Privoznik),<br />
      util: check for NULL parameter in virFileWrapperFdCatchError (Ján Tomko),<br />
      conf: snapshot: check return value of virDomainSnapshotObjListNum (Ján Tomko),<br />
      conf: check the return value of virXPathNodeSet (Ján Tomko),<br />
      cgroup: fix impossible overrun in virCgroupAddTaskController (Ján Tomko),<br />
      nwfilter: fix NULL pointer check in virNWFilterSnoopReqNew (Ján Tomko),<br />
      qemu: Fix error messages when dispatching guest agent commands (Peter Krempa),<br />
      qemu: Fix QMP Capabability Probing Failure (Viktor Mihajlovski),<br />
      qemu: Wait for monitor socket even without pid (Viktor Mihajlovski),<br />
      bitmap: fix typo to use UL type of integer constant in virBitmapIsAllSet (Guannan Ren),<br />
      qemu: fix a crash when save file can't be opened (Ján Tomko),<br />
      Fix leak of virNetworkPtr in LXC startup failure path (Daniel P. Berrange),<br />
      Fix error reporting in virNetDevVethDelete (Daniel P. Berrange),<br />
      Ensure transient def is removed if LXC start fails (Daniel P. Berrange),<br />
      Ensure failure to create macvtap device aborts LXC start (Daniel P. Berrange),<br />
      Avoid crash when LXC start fails with no interface target (Daniel P. Berrange),<br />
      Treat missing driver cgroup as fatal in LXC driver (Daniel P. Berrange),<br />
      Ensure LXC container exits if cgroups setup fails (Daniel P. Berrange),<br />
      Fix error handling in virSecurityManagerGetMountOptions (Daniel P. Berrange),<br />
      storage: fix device detach regression with cgroup ACLs (Eric Blake),<br />
      lxc: Don't crash if no security driver is specified in libvirt_lxc (Peter Krempa),<br />
      lxc: Avoid segfault of libvirt_lxc helper on early cleanup paths (Peter Krempa),<br />
      storage: fix logical volume cloning (Ján Tomko),<br />
      Fix exiting of libvirt_lxc program on container quit (Daniel P. Berrange),<br />
      Skip deleted timers when calculting next timeout (Daniel P. Berrange),<br />
      Fix virDiskNameToIndex to actually ignore partition numbers (Daniel P. Berrange),<br />
      qemu: Stop recursive detection of image chains when an image is missing (Peter Krempa),<br />
      storage: Fix bug of fs pool destroying (Osier Yang),<br />
      qemu: fix RBD attach regression (Scott Sullivan),<br />
      qemu: allow larger discrepency between memory &amp; currentMemory in domain xml (Laine Stump),<br />
      sanlock: Retry after EINPROGRESS (Michal Privoznik),<br />
      virsh: fix uninitialized variable in cmdSnapshotEdit (Ján Tomko),<br />
      util: fix index when building lock owners array (Laine Stump),<br />
      Fix uninitialized variable in virLXCControllerSetupDevPTS (Daniel P. Berrange),<br />
      tests: Remove temporary directories in qemumonitorjsontest (Peter Krempa),<br />
      tests: Fix qemumonitorjsontest deadlock when the machine is under load (Peter Krempa),<br />
      qemu: Fix domain ID numbering race condition (Peter Krempa),<br />
      storage: fix broken backing chain (Philipp Hahn),<br />
      qemu: Don't corrupt pointer in qemuDomainSaveMemory() (Peter Krempa),<br />
      esx: Yet another connection fix for 5.1 (Martin Kletzander),<br />
      iohelper: Don't report errors on special FDs (Michal Privoznik),<br />
      qemu: Fix possible race when pausing guest (Peter Krempa),<br />
      conf: net: Fix deadlock if assignment of network def fails (Peter Krempa),<br />
      conf: net: Fix helper for applying new network definition (Peter Krempa)<br />
      </li><li> Improvements:<br />
      spec: Include lockd files in libvirt-daemon package (Jiri Denemark),<br />
      build: Install both qemu-lockd.conf and qemu-sanlock.conf (Jiri Denemark),<br />
      build: use fewer cat processes (Eric Blake),<br />
      build: Distribute more files (Jiri Denemark),<br />
      virsh: use vshReconnect for non-default connections too (Ján Tomko),<br />
      virsh: don't lie about reconnection in vshReconnect (Ján Tomko),<br />
      Add support for locking based on SCSI volume ID (Daniel P. Berrange),<br />
      Add support for locking based on LVM volume uuid (Daniel P. Berrange),<br />
      Add ability to maintain disk leases indirectly (Daniel P. Berrange),<br />
      Add a virtlockd client as a lock driver impl (Daniel P. Berrange),<br />
      Add support for re-exec() of virtlockd upon SIGUSR1 (Daniel P. Berrange),<br />
      Enable systemd socket activation with virtlockd (Daniel P. Berrange),<br />
      Implement dispatch functions for lock protocol in virtlockd (Daniel P. Berrange),<br />
      Define a wire protocol for talking to the virtlockd daemon (Daniel P. Berrange),<br />
      Introduce basic infrastructure for virtlockd daemon (Daniel P. Berrange),<br />
      Refactor creation of lock manager plugins (Daniel P. Berrange),<br />
      Support network boot for HVM guests in libxl (Jim Fehlig),<br />
      Add lots of debugging to storage file probing code (Daniel P. Berrange),<br />
      Log warning if storage magic matches, but version does not (Daniel P. Berrange),<br />
      network: match xml warning message (Eric Blake),<br />
      Fix make check with different object directory (Viktor Mihajlovski),<br />
      qemu: Improve error reporting from qemuDomainManagedSaveRemove (Peter Krempa),<br />
      qemu: Small code cleanups in the managedsave functions (Peter Krempa),<br />
      qemu: Refactor managed save functions to use domain lookup helpers (Peter Krempa),<br />
      qemu: Add a new domain lookup helper and improve the docs (Peter Krempa),<br />
      util: Fix warning message in previous patch (Peter Krempa),<br />
      util: rework error reporting in virGet(User|Group)IDByName (Peter Krempa),<br />
      Refactor virDomainHostdevFind method (Daniel P. Berrange),<br />
      Slightly refactor hostdev parsing / formating (Daniel P. Berrange),<br />
      Remove bogus const return values in storage file APIs (Daniel P. Berrange),<br />
      Add missing export of virStorageFileGetLVMKey &amp; virStorageFileGetSCSIKey (Daniel P. Berrange),<br />
      Fix sorting of libvirt_private.syms and add syntax check rule (Daniel P. Berrange),<br />
      uml: Report error if inotify fails on driver startup (Cole Robinson),<br />
      tools: Only install guests init script if --with-init=script=redhat (Cole Robinson),<br />
      add vnc unix sockets to apparmor policy (Serge Hallyn),<br />
      add security hook for permitting hugetlbfs access (Serge Hallyn),<br />
      maint: mention when HACKING is rebuilt during make (Eric Blake),<br />
      qemu: reuse qemuMigrationIsAllowed when doing save and managedsave (Peter Krempa),<br />
      qemu: snapshot: Report better error message if migration isn't allowed (Peter Krempa),<br />
      qemu: Make qemuMigrationIsAllowed more reusable (Peter Krempa),<br />
      qemu: assume seccomp sandbox is supported since qemu 1.2 (Ján Tomko),<br />
      domain: Keep assigned class_id in domstatus XML (Michal Privoznik),<br />
      network: Create real network status files (Michal Privoznik),<br />
      bandwidth: Create network bandwidth (un)plug functions (Michal Privoznik),<br />
      bandwidth: Create rate update function (Michal Privoznik),<br />
      bandwidth: Create (un)plug functions (Michal Privoznik),<br />
      bandwidth: Create hierarchical shaping classes (Michal Privoznik),<br />
      bandwidth: add new 'floor' attribute (Michal Privoznik),<br />
      bandwidth: Attach sfq to leaf node (Michal Privoznik),<br />
      parallels: handle network adapters of type 'routed' (Dmitry Guryanov),<br />
      parallels: add routed pseudo network (Dmitry Guryanov),<br />
      parallels: parse virtual network properties (Dmitry Guryanov),<br />
      parallels: add network driver (Dmitry Guryanov),<br />
      parallels: move parallelsParseError to parallels_utils.h (Dmitry Guryanov),<br />
      parallels: add support of network interfaces to parallelsDomainDefineXML (Dmitry Guryanov),<br />
      parallels: parse information about network interfaces (Dmitry Guryanov),<br />
      examples: Fix balloon event callback (Jiri Denemark),<br />
      network: put dnsmasq parameters in conf-file instead of command line (Gene Czarcinski),<br />
      network: add support for DHCPv6 (Gene Czarcinski),<br />
      conf: split &lt;forward&gt; parser/clear into separate functions (Laine Stump),<br />
      conf: put data for network &lt;forward&gt; element into its own struct (Laine Stump),<br />
      conf: make virNetworkIpDefClear consistent with other functions (Laine Stump),<br />
      conf: rename some labels and functions in network_conf (Laine Stump),<br />
      network: backend functions for updating network dns host/srv/txt (Laine Stump),<br />
      conf: clear and parse functions for dns host/srv/txt records (Laine Stump),<br />
      conf: rename network dns host/srv/txt arrays (Laine Stump),<br />
      conf: use VIR_(INSERT|DELETE)_ELEMENT in virNetworkUpdate backend (Laine Stump),<br />
      util: add VIR_(APPEND|INSERT|DELETE)_ELEMENT (Laine Stump),<br />
      parallels: add support of removing disks (Dmitry Guryanov),<br />
      parallels: apply config after VM creation (Dmitry Guryanov),<br />
      parallels: add support of disks creation (Dmitry Guryanov),<br />
      parallels: add function parallelsGetDiskBusName (Dmitry Guryanov),<br />
      parallels: split parallelsStorageVolumeDelete function (Dmitry Guryanov),<br />
      parallels: fill volumes capacity parameter (Dmitry Guryanov),<br />
      parallels: add info about volumes (Dmitry Guryanov),<br />
      parallels: fix leaks in parallelsFindVolumes (Dmitry Guryanov),<br />
      parallels: create storage pools by VM list (Dmitry Guryanov),<br />
      parallels: remove unused code from storage driver (Dmitry Guryanov),<br />
      parallels: split parallelsStorageOpen function (Dmitry Guryanov),<br />
      parallels: handle disk devices in parallelsDomainDefineXML (Dmitry Guryanov),<br />
      parallels: add info about hard disk devices (Dmitry Guryanov),<br />
      Add support for offline migration (liguang),<br />
      S390: Assign default model "virtio" for network interfaces (Viktor Mihajlovski),<br />
      virsh: allow metadata preallocation when creating volumes (Ján Tomko),<br />
      storage: allow metadata preallocation when creating qcow2 images (Ján Tomko),<br />
      qemu: Allow the user to specify vendor and product for disk (Osier Yang),<br />
      Convert libxl driver to Xen 4.2 (Jim Fehlig),<br />
      network: prevent a few invalid configuration combinations (Laine Stump),<br />
      network: allow guest to guest IPv6 without gateway definition (Gene Czarcinski),<br />
      util: Do not keep PCI device config file open (Jiri Denemark),<br />
      util: Slightly refactor PCI list functions (Jiri Denemark),<br />
      qemu: Simplify the code (Osier Yang),<br />
      qemu: improve error for failed JSON commands (Eric Blake),<br />
      qemu: nicer error message if live disk snapshot unsupported (Eric Blake),<br />
      implement managedsave in libvirt xen legacy driver (Bamvor Jian Zhang),<br />
      Bind connection close callback APIs to python binding (Daniel P. Berrange),<br />
      Replace polling for active VMs with signalling by drivers (Daniel P. Berrange),<br />
      Only let VM drivers block libvirtd timed shutdown (Daniel P. Berrange),<br />
      Make QEMU perform managed save of all VMs on stop of libvirtd (Daniel P. Berrange),<br />
      build: fix incremental autogen.sh when no AUTHORS is present (Eric Blake),<br />
      Add iSCSI backend storage driver for ESX (Ata E Husain Bohra),<br />
      qemu: support live update of an interface's filter (Laine Stump),<br />
      nwfilter: utility function virNWFilterVarValueEqual (Stefan Berger),<br />
      conf: fix virDomainNetGetActualDirect*() and BridgeName() (Laine Stump),<br />
      virsh: Report errors if arguments of the schedinfo command are incorrect (Peter Krempa),<br />
      logging: more API needing to log flags (Eric Blake),<br />
      s/flags=%u/flags=%x/ in earlier commit (Daniel P. Berrange),<br />
      Allow duration=0 for virsh nodesuspend (Daniel P. Berrange),<br />
      Allow comma separated list of shutdown/reboot modes with virsh (Daniel P. Berrange),<br />
      Introduce APIs for splitting/joining strings (Daniel P. Berrange),<br />
      Add support for shutdown / reboot APIs in LXC driver (Daniel P. Berrange),<br />
      Introduce two new methods for triggering controlled shutdown/reboot (Daniel P. Berrange),<br />
      Move reboot/shutdown flags combination check into QEMU driver (Daniel P. Berrange),<br />
      Add APIs for talking to init via /dev/initctl (Daniel P. Berrange),<br />
      Ensure virDomainShutdownFlags logs flags parameter (Daniel P. Berrange),<br />
      Quote client identity in SASL whitelist log message (Daniel P. Berrange),<br />
      qemu: Refactor error reporting in qemu driver configuration parser (Peter Krempa),<br />
      qemu: Refactor config parameter retrieval (Peter Krempa),<br />
      network: use dnsmasq --bind-dynamic when available (Laine Stump),<br />
      util: new virSocketAddrIsPrivate function (Laine Stump),<br />
      util: capabilities detection for dnsmasq (Laine Stump),<br />
      virsh: do timing even for unusable connections (Ján Tomko),<br />
      Turn some dual-state int parameters into booleans (Daniel P. Berrange),<br />
      Introduce a 'stop' method to virDriverState (Daniel P. Berrange),<br />
      Implement virDomainSendProcessSignal for LXC driver (Daniel P. Berrange),<br />
      Add a 'send-process-signal' command to virsh (Daniel P. Berrange),<br />
      Specify remote protocol for virDomainSendProcessSignal (Daniel P. Berrange),<br />
      Rename misc QEMU structs/enums to use normal naming style (Daniel P. Berrange),<br />
      Replace 'struct qemud_driver *' with virQEMUDriverPtr (Daniel P. Berrange),<br />
      virsh: fix error messages in iface-bridge (Ján Tomko),<br />
      libssh2_session: support DSS keys as well (Ján Tomko),<br />
      virsh: Rewrite cmdDomDisplay (Martin Kletzander),<br />
      virsh: Expose new virDomainFSTrim API (Michal Privoznik),<br />
      qemu: Implement virDomainFSTrim (Michal Privoznik),<br />
      remote: Implement virDomainFSTrim (Michal Privoznik),<br />
      qemu: Add QEMU version computation to QMP probing (Viktor Mihajlovski),<br />
      mount fuse's meminfo file to container's /proc/meminfo (Gao feng),<br />
      make /proc/meminfo isolate with host through fuse (Gao feng),<br />
      add interface virCgroupGetAppRoot (Gao feng),<br />
      add interface virCgroupGetMemSwapUsage (Gao feng),<br />
      Add a configure option for fuse support in LXC driver (Gao feng),<br />
      Alphabetically sort libvirt_daemon.syms (Daniel P. Berrange),<br />
      Change bridge driver to use named initializers with virDriverState (Daniel P. Berrange),<br />
      virdbus: Add virDBusGetSessionBus helper (Alexander Larsson),<br />
      Specify name of target interface with macvlan error (Daniel P. Berrange),<br />
      Store initpid in the domain status XML for LXC (Daniel P. Berrange),<br />
      Pass virSecurityManagerPtr object further down into LXC setup code (Daniel P. Berrange),<br />
      tests: Add tests for gluster protocol based network disks support (Harsh Prateek Bora),<br />
      qemu: Add support for gluster protocol based network storage backend. (Harsh Prateek Bora),<br />
      Refactor ESX storage driver to implement facade pattern (Ata E Husain Bohra),<br />
      Add private data pointer to virStoragePool and virStorageVol (Ata E Husain Bohra),<br />
      cpu: Add Intel Haswell cpu model (Peter Krempa),<br />
      util: Use virReportSystemError for system error in pci.c (Osier Yang),<br />
      virsh: Report error when taking a snapshot with empty --memspec argument (Peter Krempa),<br />
      Warn if requesting update to non-existent timer/handle watch (Daniel P. Berrange),<br />
      qemuhelpdata: Revert my 'fix' (Michal Privoznik),<br />
      conf: Report sensible error for invalid disk name (Martin Kletzander),<br />
      Log an audit message with the LXC init pid (Daniel P. Berrange),<br />
      Use virNetServerRun instead of custom main loop (Daniel P. Berrange),<br />
      storage: Improve virStorageBackendFileSystemStop (Osier Yang),<br />
      tests: update qemuhelptest data (Ján Tomko),<br />
      tests: add boot order for host and redirected USB to qemu argv test (Ján Tomko),<br />
      conf: add support for booting from redirected USB devices (Ján Tomko),<br />
      qemu: graphics support for simultaneous one of each sdl, vnc, spice (Alon Levy),<br />
      qemu: refactor graphics code to not hardcode a single display (Alon Levy),<br />
      snapshot: make cloning of domain definition easier (Eric Blake),<br />
      snapshot: expose location through virsh snapshot-info (Eric Blake),<br />
      snapshot: implement new filter sets (Eric Blake),<br />
      snapshot: add virsh back-compat support for new filters (Eric Blake),<br />
      snapshot: add two more filter sets to API (Eric Blake),<br />
      nodeinfo: support kernels that lack socket information (Eric Blake),<br />
      snapshot: require user to supply external memory file name (Eric Blake),<br />
      virsh: save: report an error if XML file can't be read (Ján Tomko),<br />
      virsh: Use virNodeGetCPUMap if possible (Viktor Mihajlovski),<br />
      python: Use virNodeGetCPUMap where possible (Viktor Mihajlovski),<br />
      qemu, lxc: Change host CPU number detection logic. (Viktor Mihajlovski),<br />
      nodeinfo: enable nodeGetCPUCount for older kernels (Viktor Mihajlovski),<br />
      Use helper functions to format the journal iov array (Miloslav Trmač),<br />
      Add metadata to virLogOutputFunc (Miloslav Trmač),<br />
      Add a metadata parameter to virLog{, V}Message (Miloslav Trmač),<br />
      qemu: add bootindex for usb-host and usb-redir devices (Ján Tomko),<br />
      build: rerun bootstrap if AUTHORS is missing (Eric Blake),<br />
      qemu: Don't force port=0 for SPICE (Michal Privoznik),<br />
      snapshot: qemu: Fix detection of external snapshots when deleting (Peter Krempa),<br />
      nodeinfotest: Add test data from a AMD bulldozer machine. (Peter Krempa),<br />
      nodeinfotest: Add test data for 2 processor host with broken NUMA (Peter Krempa),<br />
      nodeinfo: Add check and workaround to guarantee valid cpu topologies (Peter Krempa),<br />
      qemu: Allow migration to be cancelled at prepare phase (Michal Privoznik),<br />
      capabilities: defaultConsoleTargetType can depend on architecture (Viktor Mihajlovski),<br />
      snapshot: qemu: Add support for external inactive snapshots (Peter Krempa),<br />
      virsh: add snapshot-create-as memspec support (Eric Blake),<br />
      virsh: make ,, escape parsing common (Eric Blake),<br />
      qemu: Emit event if 'cont' fails (Michal Privoznik),<br />
      Introduce new VIR_DOMAIN_EVENT_SUSPENDED_API_ERROR event (Michal Privoznik),<br />
      virsh: document which term is older (Eric Blake),<br />
      tests: Add test for controller order (Michal Privoznik),<br />
      qemu: Add controllers in specified order (Michal Privoznik),<br />
      qemu: Wrap controllers code into dummy loop (Michal Privoznik),<br />
      spec: replace scriptlets with new systemd macros (Václav Pavlín),<br />
      gitignore: ignore more files (liguang),<br />
      snapshot: qemu: Remove restrictions preventing external checkpoints (Peter Krempa),<br />
      snapshot: qemu: Add support for external checkpoints (Peter Krempa),<br />
      snapshot: qemu: Rename qemuDomainSnapshotCreateActive (Peter Krempa),<br />
      snapshot: qemu: Add async job type for snapshots (Peter Krempa),<br />
      snapshot: Add flag to enable creating checkpoints in live state (Peter Krempa),<br />
      qemu: Split out domain memory saving code to allow reuse (Peter Krempa),<br />
      qemu: Clean up snapshot retrieval to use the new helper (Peter Krempa),<br />
      cpu: Add AMD Opteron G5 cpu model (Peter Krempa),<br />
      cpu: Add newly added cpu flags (Peter Krempa),<br />
      snapshot: merge pre-snapshot checks (Eric Blake),<br />
      snapshot: populate new XML info for qemu snapshots (Eric Blake),<br />
      snapshot: improve disk align checking (Eric Blake),<br />
      snapshot: new XML for external system checkpoint (Eric Blake),<br />
      snapshot: simplify OOM checking during parse (Eric Blake),<br />
      Document bracket whitespace rules &amp; add syntax-check rule (Daniel P. Berrange),<br />
      net: Mark network persistent when assigning persistent definition (Peter Krempa),<br />
      net: Add support for changing persistent networks to transient (Peter Krempa),<br />
      net: Re-use checks when creating transient networks (Peter Krempa),<br />
      net: Remove dnsmasq and radvd files also when destroying transient nets (Peter Krempa),<br />
      net: Move creation of dnsmasq hosts file to function starting dnsmasq (Peter Krempa),<br />
      net: Change argument type of virNetworkObjIsDuplicate() (Peter Krempa),<br />
      build: Do not ignore logging.c in sc_prohibit_mkstemp (Jiri Denemark),<br />
      qemu: use default machine type if missing it in qemu command line (Guannan Ren)<br />
      </li><li> Cleanups:<br />
      storage: Remove the redundant white lines (Osier Yang),<br />
      Fix the indention (Osier Yang),<br />
      Do not export symbol virStateActive anymore (Osier Yang),<br />
      maint: Misc whitespace cleanups (Peter Krempa),<br />
      Fix the coding style (Osier Yang),<br />
      Fix indentions (Osier Yang),<br />
      qemu: Remove full stop from error messages (Jiri Denemark),<br />
      build: more fix to avoid C99 for loop (Hu Tao),<br />
      nwfilter: drop dead code (Eric Blake),<br />
      qemu: Drop word "either" from comments for agent monitor functions (Peter Krempa),<br />
      s/qemud/qemu/ in QEMU driver sources (Daniel P. Berrange),<br />
      Remove bogus newline at end of debug log message (Daniel P. Berrange),<br />
      build: avoid C99 for loop (Eric Blake),<br />
      util: Fix the indention (Osier Yang),<br />
      qemu/qemu_command.c: fix indent of label (Alon Levy),<br />
      qemu: Beautify code indent in migration codes (liguang),<br />
      qemu: Fix function header formating of 2 functions (Peter Krempa),<br />
      Remove spurious whitespace between function name &amp; open brackets (Daniel P. Berrange),<br />
      Remove a chunk which should not have been pushed as part of 1.0.0 (Daniel Veillard),<br />
      logging.c: Properly indent and ignore one syntax-check rule (Michal Privoznik)<br />
      </li></ul>
        <h3>1.0.0: Nov 2 2012</h3>
        <ul><li> Features:<br />
      virNodeGetCPUMap: Define public API. (Viktor Mihajlovski),<br />
      Add systemd journal support (Daniel P. Berrange),<br />
      Add a qemu capabilities cache manager (Daniel P. Berrange),<br />
      USB migration support (Jiri Denemark),<br />
      various improvement and fixes when using QMP QEmu interface
      Support for Xen 4.2 (Jim Fehlig),<br />
      Lot of localization enhancements (Transifex teams)<br />
      </li><li> Documentation:<br />
      net-update docs: s/domain/network/ (Michal Privoznik),<br />
      libvirtd no longer uses abstract namespace (Eric Blake),<br />
      documentation: HTML tag fix (Philipp Hahn),<br />
      virsh: Fix POD syntax (Jiri Denemark),<br />
      Fix installation of internals/*.html (Cole Robinson),<br />
      virsh: clarify behavior of send-key (Cole Robinson),<br />
      maint: fix license on polkit script (Eric Blake),<br />
      Sort out the relationship between &lt;vcpu&gt;, &lt;vcpupin&gt;, and &lt;emulatorpin&gt; (Osier Yang),<br />
      Tweak comments in the policykit rules file (Cole Robinson),<br />
      Various typos and misspellings (Ján Tomko),<br />
      qemu: Fix misleading comment for qemuDomainObjBeginJobWithDriver() (Peter Krempa),<br />
      Correct name of domain/pm/suspend-to-mem in docs (Zeeshan Ali (Khattak)),<br />
      update description about user/group in qemu.conf (Marcelo Cerri),<br />
      Drop useless &lt;/p&gt; in drvphyp.html.in (Michal Privoznik),<br />
      fix links in migration.html TOC (Eric Blake),<br />
      Add Maven repository to Java bindings documentation (Wido den Hollander),<br />
      rudimentary phyp documentation (Eric Blake),<br />
      update description about security labels on formatdomain.html (Marcelo Cerri),<br />
      Add note about numeric domain names to manpage (Dave Allan),<br />
      Fix typo in header file comment (Daniel P. Berrange),<br />
      Update how to compile with -Werror (Doug Goldstein),<br />
      node_memory: Improve the docs (Osier Yang)<br />
      </li><li> Portability:<br />
      Don't assume pid_t is the same size as an int (Daniel P. Berrange),<br />
      build: Fix RPM build for non-x86 platforms (Viktor Mihajlovski),<br />
      build: fix linking with systemtap probes (Eric Blake),<br />
      parallels: fix build for some older compilers (Laine Stump),<br />
      Fix build with apparmor (Jiri Denemark),<br />
      build: use correct printf types for uid/gid (Eric Blake),<br />
      spec: Fix multilib issue with systemtap tapsets (Cole Robinson),<br />
      spec: Require newer sanlock on recent distros 2 (Jiri Denemark),<br />
      spec: Add runtime requirement for libssh2 (Peter Krempa),<br />
      spec: Require newer sanlock on recent distros (Jiri Denemark),<br />
      locking: Fix build with sanlock &lt; 2.4 (Jiri Denemark),<br />
      Fix virProcessKillPainfully on Win32 (Daniel P. Berrange),<br />
      Properly parse (unsigned) long long (Guido Günther),<br />
      win32: Pretend that close-on-exec works (Matthias Bolte),<br />
      build: fix VPATH builds (Eric Blake),<br />
      build: avoid journald on rhel 5 (Eric Blake),<br />
      build: fix bitmap conversion when !CPU_ALLOC (Eric Blake),<br />
      Fix compilation of legacy xen driver with Xen 4.2 (Jim Fehlig),<br />
      build: fix detection of netcf linked with libnl1 (Christophe Fergeau)<br />
      </li><li> Bug Fixes:<br />
      qemu: QMP capabilities support starts with 1.2 (Doug Goldstein),<br />
      Linux Containers are not allowed to create device nodes. (Dan Walsh),<br />
      qemu: Fix name comparison in qemuMonitorJSONBlockIoThrottleInfo() (Stefan Hajnoczi),<br />
      qemu: Keep QEMU host drive prefix in BlkIoTune (Stefan Hajnoczi),<br />
      iohelper: fdatasync() at the end (Michal Privoznik),<br />
      conf: Fix private symbols exported by files in conf (Peter Krempa),<br />
      Fix arch detection for qemu-system-i386 with QMP (Daniel P. Berrange),<br />
      build: prefer mkostemp for multi-thread safety (Eric Blake),<br />
      qemu: Fix EmulatorPinInfo without emulatorpin (Martin Kletzander),<br />
      ip6tables rule removal (Gene Czarcinski),<br />
      Create temporary dir for socket (Guido Günther),<br />
      cpu: Fix definition of flag smap (Peter Krempa),<br />
      nodeinfotest: Delete NUL bytes from test data (Peter Krempa),<br />
      qemu: Do not ignore address for USB disks (Vladislav Bogdanov),<br />
      esx: Fix connection to ESX 5.1 (Martin Kletzander),<br />
      build: place attributes in correct location (Eric Blake),<br />
      qemu: Fix domxml-to-native network model conversion (Cole Robinson),<br />
      build: typo fix for qemu cpu affinity (Eric Blake),<br />
      qemu: fix attach/detach of netdevs with matching mac addrs (Laine Stump),<br />
      cpustat: fix regression when cpus are offline (Eric Blake),<br />
      build: fix type-punning bug (Eric Blake),<br />
      network: fix networkValidate check for default portgroup and vlan (Laine Stump),<br />
      Fix detection of Xen sysctl version 9 (Jim Fehlig),<br />
      selinux: Don't fail RestoreAll if file doesn't have a default label (Cole Robinson),<br />
      xml: omit domain name from comment if it contains double hyphen (Ján Tomko),<br />
      Fix disabling of apparmor/selinux security drivers (Christophe Fergeau),<br />
      storage: Don't do wait loops from VolLookupByPath (Cole Robinson),<br />
      qemu: Don't use -enable-nesting with qemu 1.2.0+ (Cole Robinson),<br />
      qemu: Don't blindly assume VNC is supported (Doug Goldstein),<br />
      test: Don't assume VNC is always available (Doug Goldstein),<br />
      virsh: Fix segfault of snapshot-list (Osier Yang),<br />
      qemu: Fix the unused parameter which causes the build failure (Osier Yang),<br />
      daemon: Avoid 'Could not find keytab file' in syslog (Cole Robinson),<br />
      network: don't allow multiple default portgroups (Laine Stump),<br />
      network: always create dnsmasq hosts and addnhosts files, even if empty (Laine Stump),<br />
      network: free/null newDef if network fails to start (Laine Stump),<br />
      blockjob: avoid segv on early error (Eric Blake),<br />
      selinux: relabel tapfd in qemuPhysIfaceConnect (Guannan Ren),<br />
      qemu: Set arch to i686 if qemu-system-i386 is found (Guido Günther),<br />
      qemu: Don't fail without emulatorpin or cpumask (Guido Günther),<br />
      network: Set to NULL after virNetworkDefFree() (Michal Privoznik),<br />
      spec: Fix dependency for lock-sanlock subpackage (Jiri Denemark),<br />
      qemu: Correctly wait for spice to migrate (Michal Privoznik),<br />
      qemu: Clear async job when p2p migration fails early (Jiri Denemark),<br />
      selinux: fix wrong tapfd relablling (Guannan Ren),<br />
      storage: lvm: lvcreate fails with allocation=0, don't do that (Cole Robinson),<br />
      conf: Fix crash with cleanup (Martin Kletzander),<br />
      Avoid straying &lt;/cpuset&gt; (Guido Günther),<br />
      conf: fix virDevicePCIAddressEqual args (Laine Stump),<br />
      virsh: block SIGINT while getting BlockJobInfo (Ján Tomko),<br />
      esx: Fix dynamic dispatch for types with more than one level of inheritance (Matthias Bolte),<br />
      qemu: Fix QMP detection of QXL graphics (Jiri Denemark),<br />
      Call curl_global_init from virInitialize to avoid thread-safety issues (Matthias Bolte),<br />
      fix kvm_pv_eoi with kvmclock (Martin Kletzander),<br />
      Fix typo in HAVE_DBUS automake conditional (Alexander Larsson),<br />
      esx: Disable libcurl's use of signals to fix a segfault (Matthias Bolte),<br />
      S390: Buffer too small for large CPU numbers. (Viktor Mihajlovski),<br />
      Correct checking of virStrcpyStatic() return value (Kyle Mestery),<br />
      qemu: Kill processes used for QMP caps probing (Jiri Denemark),<br />
      qemu: Use proper agent entering function when freezing filesystems (Peter Krempa),<br />
      lxc: Correctly report active cgroups (Michal Privoznik),<br />
      build: avoid infinite autogen loop (Eric Blake),<br />
      Avoid bogus I/O event errors when closing the QEMU monitor (Daniel P. Berrange),<br />
      Fix QEMU test with 1.2.0 help output (Daniel P. Berrange),<br />
      network: fix dnsmasq/radvd binding to IPv6 on recent kernels (Benjamin Cama),<br />
      Fix regression starting QEMU instances without query-events (Daniel P. Berrange),<br />
      Fix handling of itanium arch name in QEMU driver (Daniel P. Berrange),<br />
      Fix potential deadlock when agent is closed (Daniel P. Berrange),<br />
      Fix (rare) deadlock in QEMU monitor callbacks (Daniel P. Berrange),<br />
      Don't skip over socket label cleanup (Daniel P. Berrange),<br />
      Don't ignore return value of qemuProcessKill (Daniel P. Berrange),<br />
      Fix deadlock in handling EOF in LXC monitor (Daniel P. Berrange),<br />
      parallels: don't give null pointers to virBitmapEqual (Dmitry Guryanov),<br />
      parallels: fix memory allocation (Dmitry Guryanov),<br />
      qemu: wait for SPICE to migrate (Michal Privoznik),<br />
      Don't use O_TRUNC when opening QEMU logfiles (Daniel P. Berrange),<br />
      Fix start of containers with custom root filesystem (Daniel P. Berrange)<br />
      </li><li> Improvements:<br />
      cpumap: optimize for clients that don't need online count (Eric Blake),<br />
      daemon: Make the default PolicyKit policy auth_admin_keep. (Richard W.M. Jones),<br />
      util: Improve error reporting from absolutePathFromBaseFile helper (Peter Krempa),<br />
      Make non-KVM machines work with QMP probing (Martin Kletzander),<br />
      maint: log xml during volume creation (Eric Blake),<br />
      util: do a better job of matching up pids with their binaries (Laine Stump),<br />
      sanlock: Introduce 'user' and 'group' conf variables (Michal Privoznik),<br />
      qemu: pass -usb and usb hubs earlier, so USB disks with static address are handled properly (Vladislav Bogdanov),<br />
      qemu: Report errors from iohelper (Michal Privoznik),<br />
      util: Re-format literal strings in virXMLEmitWarning (Peter Krempa),<br />
      xml: print uuids in the warning (Ján Tomko),<br />
      blockjob: relabel entire existing chain (Eric Blake),<br />
      blockjob: allow mirroring under SELinux and cgroup (Eric Blake),<br />
      blockjob: allow for existing files in block-copy (Eric Blake),<br />
      blockjob: implement block copy for qemu (Eric Blake),<br />
      blockjob: make block pivot safer (Eric Blake),<br />
      blockjob: support pivot operation on cancel (Eric Blake),<br />
      blockjob: return appropriate event and info (Eric Blake),<br />
      blockjob: react to active block copy (Eric Blake),<br />
      blockjob: add qemu capabilities related to block jobs (Eric Blake),<br />
      build: check for pod errors (Eric Blake),<br />
      build: silence compiler warning about signedness (Eric Blake),<br />
      maint: Sort .gitignore (Peter Krempa),<br />
      virsh: Remove --flags from nodesuspend (Jiri Denemark),<br />
      snapshot: improve snapshot-list error message (Eric Blake),<br />
      maint: ignore unsaved emacs files (Eric Blake),<br />
      daemon: Fix LIBVIRT_DEBUG=1 default output (Cole Robinson),<br />
      virNodeGetCPUMap: Add python binding (Viktor Mihajlovski),<br />
      virNodeGetCPUMap: Implement driver support (Viktor Mihajlovski),<br />
      virNodeGetCPUMap: Implement support function in nodeinfo (Viktor Mihajlovski),<br />
      nodeinfo: improve probing node cpu bitmap (Eric Blake),<br />
      bitmap: add virBitmapCountBits (Eric Blake),<br />
      esx: Update version checks for vSphere 5.1 (Matthias Bolte),<br />
      cpu: Add recently added cpu feature flags. (Peter Krempa),<br />
      qemu: Prohibit changing affinity of domain process if placement is 'auto' (Osier Yang),<br />
      qemu: Keep the affinity when creating cgroup for emulator thread (Osier Yang),<br />
      qemu: Add helper to prepare cpumap for affinity setting (Osier Yang),<br />
      virNodeGetCPUMap: Implement virsh support. (Viktor Mihajlovski),<br />
      libvirt.h.in: Add new cpumap macro VIR_CPU_USED (Viktor Mihajlovski),<br />
      virNodeGetCPUMap: Implement wire protocol. (Viktor Mihajlovski),<br />
      header: declare node memory parameter handling earlier (Eric Blake),<br />
      header: declare typed parameter handling earlier (Eric Blake),<br />
      build: improve FORTIFY_SOURCE usage (Eric Blake),<br />
      qemu_migration: Transport OVS per-port data during live migration (Kyle Mestery),<br />
      openvswitch: Add utility functions for getting and setting Open vSwitch per-port data (Kyle Mestery),<br />
      qemu_migration: Add hooks to transport network data during migration (Kyle Mestery),<br />
      build: print uids as unsigned (Eric Blake),<br />
      storage: don't shadow global 'wait' declaration (Ján Tomko),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      snapshot: sanity check when reusing file for snapshot (Eric Blake),<br />
      storage: let format probing work on root-squash NFS (Eric Blake),<br />
      migrate: v2: use VIR_DOMAIN_XML_MIGRATABLE when available (Ján Tomko),<br />
      qemu: set seamless migration capability (Michal Privoznik),<br />
      Log parameters passed to virFileMakePath (Cole Robinson),<br />
      Log file name passed to virConfReadFile (Cole Robinson),<br />
      blockjob: properly label disks for qemu block-commit (Eric Blake),<br />
      blockjob: refactor qemu disk chain permission grants (Eric Blake),<br />
      blockjob: implement shallow commit flag in qemu (Eric Blake),<br />
      blockjob: wire up online qemu block-commit (Eric Blake),<br />
      blockjob: manage qemu block-commit monitor command (Eric Blake),<br />
      blockjob: remove unused parameters after previous patch (Eric Blake),<br />
      storage: use cache to walk backing chain (Eric Blake),<br />
      storage: cache backing chain while qemu domain is live (Eric Blake),<br />
      storage: make it easier to find file within chain (Eric Blake),<br />
      storage: remember relative names in backing chain (Eric Blake),<br />
      storage: don't require caller to pre-allocate metadata struct (Eric Blake),<br />
      storage: get entire metadata chain in one call (Eric Blake),<br />
      storage: don't probe non-files (Eric Blake),<br />
      storage: use enum for snapshot driver type (Eric Blake),<br />
      storage: use enum for disk driver type (Eric Blake),<br />
      storage: use enum for default driver type (Eric Blake),<br />
      storage: match RNG to supported driver types (Eric Blake),<br />
      storage: treat 'aio' like 'raw' at parse time (Eric Blake),<br />
      storage: list more file types (Eric Blake),<br />
      Autogenerate AUTHORS (Cole Robinson),<br />
      qemu: Allow migration with host USB devices (Jiri Denemark),<br />
      dist: added cpu/cpu_ppc_data.h to Makefile.am (Viktor Mihajlovski),<br />
      qemu: Always format CPU topology (Jiri Denemark),<br />
      qemu: Add support for HyperV Enlightenment feature "relaxed" (Peter Krempa),<br />
      conf: Add support for HyperV Enlightenment features (Peter Krempa),<br />
      conf: Make tri-state feature options more universal (Peter Krempa),<br />
      qemu: Fixed default machine detection in qemuCapsParseMachineTypesStr (Viktor Mihajlovski),<br />
      qemu: Pin the emulator when only cpuset is specified (Martin Kletzander),<br />
      interface: add virInterfaceGetXMLDesc() in udev (Doug Goldstein),<br />
      Implement CPU model driver for PowerPC (Li Zhang),<br />
      Add one file cpu_ppc_data.h to define CPU data for PPC (Li Zhang),<br />
      selinux: remove unused variables in socket labelling (Guannan Ren),<br />
      storage: lvm: Don't overwrite lvcreate errors (Cole Robinson),<br />
      Make virInitialize thread safe (Daniel P. Berrange),<br />
      Add JSON serialization of virNetServerPtr objects for process re-exec() (Daniel P. Berrange),<br />
      Add JSON serialization of virNetServerClientPtr objects for process re-exec() (Daniel P. Berrange),<br />
      Add JSON serialization of virNetServerServicePtr objects for process re-exec() (Daniel P. Berrange),<br />
      Add JSON serialization of virNetSocketPtr objects for process re-exec() (Daniel P. Berrange),<br />
      Add JSON serialization of virLockSpacePtr objects for process re-exec() (Daniel P. Berrange),<br />
      Introduce an internal API for handling file based lockspaces (Daniel P. Berrange),<br />
      tests: Fix domain-events python test (Martin Kletzander),<br />
      maint: prepare for next release number (Eric Blake),<br />
      conf: add test for boot dev and order (Martin Kletzander),<br />
      selinux: Use raw contexts 2 (Martin Kletzander),<br />
      selinux: add security selinux function to label tapfd (Guannan Ren),<br />
      Add support for SUSPEND_DISK event (Martin Kletzander),<br />
      util: switch virLogEatParams to virLogSource (Ján Tomko),<br />
      node_memory: Add new parameter field to tune the new sysfs knob (Osier Yang),<br />
      qemu: reorganize qemuDomainChangeNet and qemuDomainChangeNetBridge (Laine Stump),<br />
      conf: virDomainDeviceInfoCopy utility function (Laine Stump),<br />
      qemu: Ignore def-&gt;cpumask if emulatorpin is specified (Osier Yang),<br />
      conf: Ignore emulatorpin if vcpu placement is auto (Osier Yang),<br />
      qemu: Initialize cpuset for hotplugged vcpu as def-&gt;cpuset (Osier Yang),<br />
      qemu: Create or remove cgroup when doing vcpu hotpluging (Osier Yang),<br />
      conf: Initialize the pinning policy for vcpus (Osier Yang),<br />
      conf: Ignore vcpupin for not onlined vcpus when parsing (Osier Yang),<br />
      Only keep one polkit rules file (Cole Robinson),<br />
      daemon: Use $(AM_V_GEN) in a few more places (Cole Robinson),<br />
      spec: Add support for libssh2 transport (Peter Krempa),<br />
      selinux: Use raw contexts (Martin Kletzander),<br />
      conf: Mark missing optional USB devices in domain XML (Jiri Denemark),<br />
      virsh: remove reference to migration in blockcopy (Ján Tomko),<br />
      qemu: Make save/restore with USB devices usable (Jiri Denemark),<br />
      Add MIGRATABLE flag for virDomainGetXMLDesc (Jiri Denemark),<br />
      qemu: Implement startupPolicy for USB passed through devices (Jiri Denemark),<br />
      qemu: Add option to treat missing USB devices as success (Jiri Denemark),<br />
      qemu: Introduce qemuFindHostdevUSBDevice (Jiri Denemark),<br />
      conf: Add support for startupPolicy for USB devices (Jiri Denemark),<br />
      locking: Implement lock failure action in sanlock driver (Jiri Denemark),<br />
      locking: Add support for lock failure action (Jiri Denemark),<br />
      locking: Pass hypervisor driver name when acquiring locks (Jiri Denemark),<br />
      locking: Add const char * parameter to avoid ugly typecasts (Jiri Denemark),<br />
      conf: Add on_lockfailure event configuration (Jiri Denemark),<br />
      conf: Rename life cycle actions to event actions (Jiri Denemark),<br />
      storage: Report UUID/name consistently in driver errors (Cole Robinson),<br />
      Change qemuSetSchedularParameters to use AFFECT_CURRENT (Daniel P. Berrange),<br />
      interface: add udevIfaceIsActive() to udev backend (Doug Goldstein),<br />
      interface: always build all available backends (Doug Goldstein),<br />
      interface: fix netcf based backend naming (Doug Goldstein),<br />
      interface: add udev based backend for virInterface (Doug Goldstein),<br />
      hooks: let virCommand do the error reporting (Eric Blake),<br />
      nodeinfo: Fully convert to new virReportError (Michal Privoznik),<br />
      virsh: add qemu-monitor-command --pretty (Eric Blake),<br />
      security: update user and group parsing in security_dac.c (Marcelo Cerri),<br />
      util: extend virGetUserID and virGetGroupID to support names and IDs (Marcelo Cerri),<br />
      python: keep consistent handling of Python integer conversion (Guannan Ren),<br />
      python: cleanup vcpu related binding APIs (Guannan Ren),<br />
      Check for private symbols presence as well (Michal Privoznik),<br />
      spec: prefer canonical name of util-linux (Eric Blake),<br />
      build: update gnulib for FreeBSD build (Eric Blake),<br />
      security: also parse user/group names instead of just IDs for DAC labels (Marcelo Cerri),<br />
      build: avoid -Wno-format on new-enough gcc (Eric Blake),<br />
      build: fix typo in debug message (Eric Blake),<br />
      hyperv: Fix and improve hypervListAllDomains (Matthias Bolte),<br />
      esx: Fix and improve esxListAllDomains function (Matthias Bolte),<br />
      build: default selinuxfs mount point to /sys/fs/selinux (Daniel J Walsh),<br />
      Add support for detecting capablities using QMP commands (Daniel P. Berrange),<br />
      Ignore error from query-cpu-definitions (Daniel P. Berrange),<br />
      Remove need to pass in a virDomainObjPtr instance to qemuMonitorOpen (Daniel P. Berrange),<br />
      ARMHF: implement /proc/cpuinfo parsing (Chuck Short),<br />
      Automatically enable systemd journal logging (Daniel P. Berrange),<br />
      Refactor qemuCapsParseDeviceStr to work from data tables (Daniel P. Berrange),<br />
      Don't initialize logging twice in libvirtd (Daniel P. Berrange),<br />
      Change logging category parameter into an enum (Daniel P. Berrange),<br />
      Include filename explicitly in logging APIs (Daniel P. Berrange),<br />
      Whitespace cleanup in logging files (Daniel P. Berrange),<br />
      s/int/virLogDestination/ in logging code (Daniel P. Berrange),<br />
      s/long long/size_t/ for file line numbers in logging code (Daniel P. Berrange),<br />
      s/int/virLogPriority/ in logging code (Daniel P. Berrange),<br />
      python: return error if PyObject obj is NULL for unwrapper helper functions (Guannan Ren),<br />
      Pass the "raw" log message to each virLogOutputFunc (Miloslav Trmač),<br />
      Split priority conversion from virLogOutputToSyslog (Miloslav Trmač),<br />
      Move command/event capabilities detection out of QEMU monitor code (Daniel P. Berrange),<br />
      Remove some unused includes in QEMU code (Daniel P. Berrange),<br />
      Add a qemuMonitorGetTargetArch() method for QMP query-target command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetObjectProps() method for QMP device-list-properties command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetObjectTypes() method for QMP qom-list-types command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetEvents() method for QMP query-events command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetCommands() method for QMP query-commands command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetCPUDefinitions method for QMP query-cpu-definitions command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetMachines() method for QMP query-machines command (Daniel P. Berrange),<br />
      Add a qemuMonitorGetVersion() method for QMP query-version command (Daniel P. Berrange),<br />
      Refactor guest init to support qemu-system-i386 binary too (Daniel P. Berrange),<br />
      Make qemuCapsProbeMachineTypes &amp; qemuCapsProbeCPUModels static (Daniel P. Berrange),<br />
      Remove probing of CPU models when launching QEMU guests (Daniel P. Berrange),<br />
      Remove probing of machine types when canonicalizing XML (Daniel P. Berrange),<br />
      Remove probing of flags when launching QEMU guests (Daniel P. Berrange),<br />
      Switch over to use cache for building QEMU capabilities (Daniel P. Berrange),<br />
      Use size_t instead of int for virDomainDefPtr struct (Daniel P. Berrange),<br />
      Move most of qemuProcessKill into virProcessKillPainfully (Daniel P. Berrange),<br />
      Support Xen sysctl version 9 in Xen 4.2 (Jim Fehlig),<br />
      network: backend for virNetworkUpdate of interface list (Laine Stump),<br />
      build: avoid older gcc warning (Eric Blake),<br />
      Simplify some redundant locking while unref'ing objects (Daniel P. Berrange),<br />
      Convert virLXCMonitor to use virObject (Daniel P. Berrange),<br />
      Move virProcess{Kill,Abort,TranslateStatus} into virprocess.{c,h} (Daniel P. Berrange),<br />
      Move virProcessKill into virprocess.{h,c} (Daniel P. Berrange),<br />
      Rename virCommandTranslateStatus to virProcessTranslateStatus (Daniel P. Berrange),<br />
      Rename virPid{Abort,Wait} to virProcess{Abort,Wait} (Daniel P. Berrange),<br />
      Rename virKillProcess to virProcessKill (Daniel P. Berrange),<br />
      qemu: Avoid holding the driver lock in trivial snapshot API's (Peter Krempa),<br />
      storage: Add timeout for iscsi volume's stable path discovery (Osier Yang),<br />
      tests: test previous commit (Eric Blake),<br />
      command: Change virCommandAddEnv so it replaces existing environment variables. (Richard W.M. Jones),<br />
      command: Move environ-adding code to common function virCommandAddEnv. (Richard W.M. Jones)<br />
      </li><li> Cleanups:<br />
      gitignore: Ignore 'tags' (Michal Privoznik),<br />
      build: fix syntax-check tab violation (Eric Blake),<br />
      maint: consistent whitespace after 'if' (Eric Blake),<br />
      Remove a couple duplicates from AUTHORS.in (Cole Robinson),<br />
      qemu: Cleanup the unused 'nodeinfo' (Osier Yang),<br />
      AUTHORS: Remove double entry (Michal Privoznik),<br />
      Doc-fix for PowerPC CPU model driver (Li Zhang),<br />
      Fix typo in previous commit s/lik/like/ (Daniel P. Berrange),<br />
      maint: drop spurious semicolons (Eric Blake),<br />
      Fix tab vs space (Guido Günther),<br />
      private.syms: Drop virKillProcess (Michal Privoznik),<br />
      Remove xenner support (Daniel P. Berrange),<br />
      parallels: remove unneded code from parallelsDoCmdRun (Dmitry Guryanov),<br />
      parallels: remove unused member 'os' from parallelsDomObj (Dmitry Guryanov),<br />
      Remove pointless virLXCProcessMonitorDestroy method (Daniel P. Berrange)<br />
      </li></ul>
        <h3>0.10.2: September 24 2012</h3>
        <ul><li> Features:<br />
      network: define new API virNetworkUpdate (Laine Stump),<br />
      add support for QEmu sandbox support (Ján Tomko),<br />
      blockjob: add virDomainBlockCommit (Eric Blake),<br />
      node_memory: Define the APIs to get/set memory parameters (Osier Yang),<br />
      list: Define new API virConnectListAllSecrets (Osier Yang),<br />
      list: Define new API virConnectListAllNWFilters (Osier Yang),<br />
      list: Define new API virConnectListAllNodeDevices (Osier Yang),<br />
      parallels: add support of containers to the driver (Dmitry Guryanov),<br />
      list: Define new API virConnectListAllInterfaces (Osier Yang),<br />
      list: Define new API virConnectListAllNetworks (Osier Yang),<br />
      list: Define new API virStoragePoolListAllVolumes (Osier Yang),<br />
      Add PMSUSPENDED life cycle event (Jiri Denemark),<br />
      list: Define new API virStorageListAllStoragePools (Osier Yang),<br />
      Add per-guest S3/S4 state configuration (Martin Kletzander),<br />
      qemu: Support for Block Device IO Limits (Viktor Mihajlovski)<br />
      </li><li> Documentation:<br />
      locking: Remove README file in favor of internals/locking.html (Jiri Denemark),<br />
      fix typo in filesystem docs (Eric Blake),<br />
      include article about libvirt+audit in relatedlinks.html (Marcelo Cerri),<br />
      virsh: Clarify behavior of domain list filtering (Peter Krempa),<br />
      update usb redirection filter infomation on formatdomain.html (Guannan Ren),<br />
      mention another iaas app built on libvirt (Eric Blake),<br />
      page.xsl: fix FAQ link in subdirectories (Ján Tomko),<br />
      hacking.html.in: fix table of contents (Ján Tomko),<br />
      point out git send-email location, be more stern about make check (Laine Stump),<br />
      examples: Fix event detail printing in python test (Jiri Denemark),<br />
      virsh: Improve the document for pool-list (Osier Yang),<br />
      conf: describe security_driver behavior (Martin Kletzander),<br />
      correct dompmwakeup description (Martin Kletzander)<br />
      </li><li> Portability:<br />
      build: fix nodeinfo build on non-Linux platforms (Eric Blake),<br />
      virBitmap: fix build without HAVE_NUMACTL (Ján Tomko),<br />
      build: Fix build failure on non-linux platform (Osier Yang),<br />
      build: fix missing include (Dwight Engen),<br />
      Look in Debian's multiarch libs too (Guido Günther),<br />
      build: don't fail if libnl-3 is not found (Eric Blake),<br />
      build: Fix typo which causes build failure (Osier Yang),<br />
      build: force libnl1 if netcf also used libnl1 (Eric Blake),<br />
      build: fix build on older gcc (Eric Blake),<br />
      Fix location of SELinux mount during RPM builds (Daniel P. Berrange),<br />
      nwfilter: drop use of awk (Eric Blake),<br />
      build: improved handling of &lt;execinfo.h&gt;, BSD &lt;net/if.h&gt; (Eric Blake),<br />
      Define DYNLIB_NAME on OpenBSD (Jasper Lievisse Adriaanse),<br />
      build: avoid test failure when sasl was not compiled in (Eric Blake),<br />
      build: avoid check-symfile on non-Linux (Eric Blake),<br />
      build: require netcf-0.2.2 when installing on Fedora18+ (Laine Stump),<br />
      build: don't fail when xsltproc is missing (Eric Blake),<br />
      build: avoid warnings from gcc 4.2.1 (Eric Blake),<br />
      Remove explicit dependency on ceph RPM (Daniel P. Berrange),<br />
      Pass a correct pointer type to localtime_r(3) (Paul Eggert),<br />
      build: use correct libraries for clock_gettime (Eric Blake),<br />
      Include an extra header needed for OpenBSD (Jasper Lievisse Adriaanse),<br />
      Fix mingw64 build by using intptr_t for int-&gt;void* casts (Daniel P. Berrange)<br />
      </li><li> Bug fixes:<br />
      network: don't "refresh" iptables rules on rule-less networks (Laine Stump),<br />
      qemu: Fix failure path in disk hotplug (Jiri Denemark),<br />
      Ensure existing selinux mount is removed before mounting new one in LXC (Daniel P. Berrange),<br />
      Fix crash accessing a NULL URI when looking up auth credentials (Daniel P. Berrange),<br />
      Ensure autogen.sh exists if bootstrap fails (Daniel P. Berrange),<br />
      security: Don't ignore errors when parsing DAC security labels (Peter Krempa),<br />
      qemu: Transition domain to PAUSED after 'stop' command (Michal Privoznik),<br />
      network: fix element size / length in memmove (Laine Stump),<br />
      network: fix incorrect VIR_NETWORK_UPDATE_COMMAND_* values (Laine Stump),<br />
      virsh: Fix resource leaks when editing files (Peter Krempa),<br />
      util: don't print free'd dmidecode path (Eric Blake),<br />
      rpc: Fix name of member in remote_protocol-structs (Peter Krempa),<br />
      qemu: Avoid deadlock on HandleAgentEOF (Michal Privoznik),<br />
      conf: avoid freeing network object with undestroyed mutex (Laine Stump),<br />
      Add missing 'goto error' in QEMU command line building (Daniel P. Berrange),<br />
      Fix initialization of virCommandPtr when creating QEMU argv (Daniel P. Berrange),<br />
      Fix 3 broken test cases which were mistakenly raising errors (Daniel P. Berrange),<br />
      qemu: fix uninitialized variable in qemuParseCommandLine (Ján Tomko),<br />
      security: Fix libvirtd crash possibility (Martin Kletzander),<br />
      snapshot: fix rollback failure in transaction mode (Guannan Ren),<br />
      conf: avoid libvirt crash with empty address guestfwd channel (Alex Jia),<br />
      Wait to receive QMP greeting before sending any monitor commands (Daniel P. Berrange),<br />
      parallels: fix parallelsDomainDefineXML for domains with VNC and autoport (Dmitry Guryanov),<br />
      parallels: fix parallelsDoCmdRun in case of command failure (Dmitry Guryanov),<br />
      Backcompt for console devices in virDomainDeviceInfoIterate (Li Zhang),<br />
      fix bug in qemuSetupCgroupForEmulator (Hu Tao),<br />
      python: Initialize new_params in virDomainSetSchedulerParameters (Federico Simoncelli),<br />
      Don't invoke the auth callback if all credentials were in config file (Daniel P. Berrange),<br />
      Call virResetLastError in all virConnectOpen* functions (Daniel P. Berrange),<br />
      Check against python None type when filling in auth parameters (Daniel P. Berrange),<br />
      Fix crash passing an empty list to python openAuth() API (Daniel P. Berrange),<br />
      Fix unwanted closing of libvirt client connection (Christophe Fergeau),<br />
      Fix RPM spec conditional when %{rhel} is not defined (Daniel P. Berrange),<br />
      events: Fix domain event race on client disconnect (Christophe Fergeau),<br />
      Don't assume use of /sys/fs/cgroup (Daniel P. Berrange),<br />
      remove dnsmasq command line parameter "--filterwin2k" (Gene Czarcinski),<br />
      network: prevent infinite hang if ovs-vswitchd isn't running (Laine Stump),<br />
      qemu: don't pin all the cpus (Martin Kletzander),<br />
      build: use re-entrant functions in virsh (Eric Blake),<br />
      qemu: Do not require auth scheme in graphics events (Jiri Denemark),<br />
      qemu: Fix reboot with guest agent (Jiri Denemark),<br />
      qemu: Don't update graphic definitions on password change failure (Peter Krempa),<br />
      python: don't mask libvirt errors (Eric Blake),<br />
      command: shell-quote when logging commands (Eric Blake),<br />
      qemu: fix remote port searching (Martin Kletzander),<br />
      schemas: Fix wwn pattern (Osier Yang)<br />
      </li><li> Improvements:<br />
      Don't install legacy initscripts at same time as systemd ones (Daniel P. Berrange),<br />
      network: log error for unknown virNetworkUpdate command codes (Laine Stump),<br />
      network: make virNetworkObjUpdate error detection/recovery better (Laine Stump),<br />
      Drop unused return value of virLogOutputFunc (Miloslav Trmač),<br />
      Add &lt;lt;seclabel&gt; to character devices (Richard W.M. Jones),<br />
      Make virSecurityDeviceLabelDefParseXML into generic device &lt;lt;seclabel&gt; parser (Richard W.M. Jones),<br />
      Improve some debugging log messages in LXC mount setup (Daniel P. Berrange),<br />
      network: backend for virNetworkUpdate of portgroups (Laine Stump),<br />
      network: backend for virNetworkUpdate of dhcp range (Laine Stump),<br />
      virsh: new net-update command (Laine Stump),<br />
      tests: Add tests for dump-core option (Martin Kletzander),<br />
      qemu: add support for dump-guest-core option (Martin Kletzander),<br />
      Add support for limiting guest coredump (Martin Kletzander),<br />
      QEMU Tests for reboot-timeout (Martin Kletzander),<br />
      qemu: Add support for reboot-timeout (Martin Kletzander),<br />
      Add support for reboot-timeout (Martin Kletzander),<br />
      simplify xenXMDomainPinVcpu function (liguang),<br />
      Cleanup of domain_conf sentinels (Martin Kletzander),<br />
      qemu: Cleanup boot parameter building (Martin Kletzander),<br />
      virsh: Move daemon to misc since its not a network (Doug Goldstein),<br />
      build: define WITH_INTERFACE for the driver (Doug Goldstein),<br />
      virsh: Rename QEmu to QEMU to match upstream (Doug Goldstein),<br />
      bitmap: fix problems in previous commit (Eric Blake),<br />
      build: avoid non-portable byte-swapping (Eric Blake),<br />
      Fix minor details not only in apic eoi (Martin Kletzander),<br />
      secret: Fix error for private secrets (Martin Kletzander),<br />
      virNetDevBandwidthClear: Improve error handling (Martin Kletzander),<br />
      syntax-check: fix run.in (Martin Kletzander),<br />
      Add a ./run script for running programs from the local directory (Richard W.M. Jones),<br />
      daemon: Fix error message when libvirtd is missing (Richard W.M. Jones),<br />
      gitignore: Ignore .gdb_history file (Richard W.M. Jones),<br />
      Fix the augea test for qemu libvirtd options (Daniel Veillard),<br />
      network: implement backend of virNetworkUpdate(IP_DHCP_HOST) (Laine Stump),<br />
      network: restart radvd/dnsmasq if needed when libvirtd is restarted (Laine Stump),<br />
      network: implement virNetworkUpdate for test_driver (Laine Stump),<br />
      network: implement virNetworkUpdate for bridge_driver (Laine Stump),<br />
      network: reorganize dnsmasq and radvd config file / startup (Laine Stump),<br />
      conf: implement NetworkObj backend of virNetworkUpdate API (Laine Stump),<br />
      network: utility functions for updating network config (Laine Stump),<br />
      network: implement RPC calls for virNetworkUpdate (Laine Stump),<br />
      tests: add qemu-1.2.0 help data (Ján Tomko),<br />
      qemu: add -sandbox to command line if requested (Ján Tomko),<br />
      qemu: conf: add seccomp_sandbox option (Ján Tomko),<br />
      qemu: add capability flag for seccomp sandbox (Ján Tomko),<br />
      qemu: Use disk wwn in qemu command line (Osier Yang),<br />
      qemu: Add caps to indentify if setting wwn is supported by qemu (Osier Yang),<br />
      conf: Parse and format disk &lt;lt;wwn&gt; (Osier Yang),<br />
      schema: Add schema for disk &lt;lt;wwn&gt; (Osier Yang),<br />
      blockjob: add blockcommit support to rpc (Eric Blake),<br />
      blockjob: add virsh blockcommit (Eric Blake),<br />
      conf: separate functions to parse DHCPHostDef and DHCPRangeDef (Laine Stump),<br />
      remove virDomainCpuSetFormat and virDomainCpuSetParse (Hu Tao),<br />
      xen: eliminate remaining uses of virDomainCpuSetParse (Laine Stump),<br />
      use virBitmap to store nodeinfo (Hu Tao),<br />
      use virBitmap to store cells' cpumask info (Hu Tao),<br />
      use virBitmap to store cpumask info (Hu Tao),<br />
      use virBitmap to store numa nodemask info (Hu Tao),<br />
      use virBitmap to store cpu affinity info (Hu Tao),<br />
      use virBitmap to store cpupin info (Hu Tao),<br />
      New functions for virBitmap (Hu Tao),<br />
      bitmap: new member variable and function renaming (Hu Tao),<br />
      Build: Fix typos which cause build failure (Osier Yang),<br />
      node_memory: Expose the APIs to Python bindings (Osier Yang),<br />
      node_memory: Expose the APIs to virsh (Osier Yang),<br />
      node_memory: Support get/set memory parameters for drivers (Osier Yang),<br />
      node_memory: Implement the internal APIs (Osier Yang),<br />
      node_memory: Wire up the RPC protocol (Osier Yang),<br />
      list: Use virConnectListAllSecrets in virsh (Osier Yang),<br />
      list: Expose virConnectListAllSecrets to Python binding (Osier Yang),<br />
      list: Implement listAllSecrets (Osier Yang),<br />
      list: Implement RPC calls for virConnectListAllSecrets (Osier Yang),<br />
      list: Use virConnectListAllNWFilters in virsh (Osier Yang),<br />
      list: Expose virConnectListAllNWFilters to Python binding (Osier Yang),<br />
      list: Implement listAllNWFilters (Osier Yang),<br />
      list: Implement RPC calls for virConnectListAllNWFilters (Osier Yang),<br />
      list: Use virConnectListAllNodeDevices in virsh (Osier Yang),<br />
      virsh: Don't modify the const string (Osier Yang),<br />
      list: Expose virConnectListAllNodeDevices to Python binding (Osier Yang),<br />
      list: Implement listAllNodeDevices (Osier Yang),<br />
      list: Add helpers for listing node devices (Osier Yang),<br />
      list: Implement RPC calls for virConnectListAllNodeDevices (Osier Yang),<br />
      Introduce a API for creating QEMU capabilities for a binary (Daniel P. Berrange),<br />
      Remove upfront check for hmp - just try it cope with failure (Daniel P. Berrange),<br />
      Don't overwrite errors raised by qemuMonitorHMPCommand (Daniel P. Berrange),<br />
      qemu: Add support for EOI with APIC (Martin Kletzander),<br />
      Add support for EOI with APIC (Martin Kletzander),<br />
      Improve virTypedParameterValidateSet (Osier Yang),<br />
      parallels: implement containers creation (Dmitry Guryanov),<br />
      parallels: fix parallelsDomainDefineXML for existing containers (Dmitry Guryanov),<br />
      parallels: handle unlimited cpus on containers (Dmitry Guryanov),<br />
      Fix data types used for list sizes in QEMU capabilities (Daniel P. Berrange),<br />
      Add API for copying instances of the qemuCapsPtr object (Daniel P. Berrange),<br />
      Add ability to store other metadata in the qemu capabilities object (Daniel P. Berrange),<br />
      Make qemuCapsProbeCommand static (Daniel P. Berrange),<br />
      Turn QEMU capabilities object into a full virObjectPtr (Daniel P. Berrange),<br />
      Allow caps to be NULL when creating virDomainObjPtr instances (Daniel P. Berrange),<br />
      Add a virBitmapCopy API (Daniel P. Berrange),<br />
      test: add xml2argvtest for usb-redir filter and update xml schema (Guannan Ren),<br />
      qemu: build USB redirection filter qemu command line (Guannan Ren),<br />
      qemu: define and parse USB redirection filter XML (Guannan Ren),<br />
      virsh: Fix version numbers in comments (Osier Yang),<br />
      qemu: add usb-redir.filter qemu capability flag (Guannan Ren),<br />
      maint: fix missing spaces in message (Eric Blake),<br />
      build: avoid confusing make with raw name 'undefine' (Eric Blake),<br />
      Add API for opening a QEMU monitor from a socket FD (Daniel P. Berrange),<br />
      list: Expose virConnectListAllInterfaces to Python binding (Osier Yang),<br />
      list: Use virConnectListAllInterfaces in virsh (Osier Yang),<br />
      list: Implement listAllInterfaces (Osier Yang),<br />
      list: Implemente RPC calls for virConnectListAllInterfaces (Osier Yang),<br />
      build: avoid dirty docs on fresh bootstrap (Eric Blake),<br />
      Print any exception that occurs in authentication callback (Daniel P. Berrange),<br />
      virsh: Fix the typos (Osier Yang),<br />
      list: Expose virConnectListAllNetworks to Python binding (Osier Yang),<br />
      list: Use virConnectListAllNetworks in virsh (Osier Yang),<br />
      list: Implement listAllNetworks for test driver (Osier Yang),<br />
      list: Implement listAllNetworks for network driver (Osier Yang),<br />
      list: Add helpers to list network objects (Osier Yang),<br />
      list: Implement RPC calls for virConnectListAllNetworks (Osier Yang),<br />
      list: Expose virStoragePoolListAllVolumes to Python binding (Osier Yang),<br />
      list: Use virStoragePoolListAllVolumes in virsh (Osier Yang),<br />
      list: Implement virStoragePoolListAllVolumes for test driver (Osier Yang),<br />
      list: Implement virStoragePoolListAllVolumes for storage driver (Osier Yang),<br />
      list: Implement RPC calls for virStoragePoolListAllVolumes (Osier Yang),<br />
      Introduce a test suite for the JSON monitor (Daniel P. Berrange),<br />
      Add helper library for testing the qemu monitor code (Daniel P. Berrange),<br />
      Add non-null annotations to qemuMonitorOpen (Daniel P. Berrange),<br />
      Fix PMSuspend and PMWakeup events (Jiri Denemark),<br />
      virsh: Update only changed scheduler tunables (Peter Krempa),<br />
      util: Add helper to assign typed params from string (Peter Krempa),<br />
      qemu: Add range checking for scheduler tunables when changed by API (Peter Krempa),<br />
      qemu: clean up qemuSetSchedulerParametersFlags() (Peter Krempa),<br />
      list: fix typo in virsh patch (Eric Blake),<br />
      Remove duplicate symbols and add test case (Daniel P. Berrange),<br />
      python: Expose virStorageListAllStoragePools to python binding (Osier Yang),<br />
      list: Use virConnectListAllStoragePools in virsh (Osier Yang),<br />
      list: Change MATCH for common use in virsh (Osier Yang),<br />
      virsh: Fix the wrong doc for pool-list (Osier Yang),<br />
      list: Add helper to convert strings separated by ',' to array (Osier Yang),<br />
      list: Implement listAllStoragePools for test driver (Osier Yang),<br />
      list: Implement listAllStoragePools for storage driver (Osier Yang),<br />
      list: Implement the RPC calls for virConnectListAllStoragePools (Osier Yang),<br />
      list: Add helpers for listing storage pool objects (Osier Yang),<br />
      esx: Add implementation for virConnectListAllDomains() (Peter Krempa),<br />
      hyperv: Add implementation for virConnectListAllDomains() (Peter Krempa),<br />
      maint: avoid doubled name in syntax check failures (Eric Blake),<br />
      Rename iolimit to blockio (Viktor Mihajlovski),<br />
      tests: Add tests for qemu S3/S4 state configuration (Martin Kletzander),<br />
      qemu: Add support for S3/S4 state configuration (Martin Kletzander),<br />
      conf: Support for Block Device IO Limits (Viktor Mihajlovski),<br />
      virsh: Improve checking for connection when running commands (Peter Krempa),<br />
      util: Update the inconsistent and outdated comments (Osier Yang)<br />
      </li><li> Cleanups:<br />
      Remove redundant lines in src/qemu/qemu_driver.c (Tang Chen),<br />
      Remove a redundant line in src/qemu/qemu_driver.c (Tang Chen),<br />
      maint: fix up copyright notice inconsistencies (Eric Blake),<br />
      build: avoid unused symbol (Eric Blake),<br />
      Adhere to copyright_address check (Guido Günther),<br />
      qemuhelptest: convert runaway tab to spaces (Ján Tomko),<br />
      qemu: drop unused arguments for dump-guest-memory (Eric Blake),<br />
      Build: Fix typos which cause build failure (Osier Yang),<br />
      esx: Remove unused variable from esxDomainGetAutostart (Matthias Bolte),<br />
      build: avoid tabs that failed syntax-check (Eric Blake),<br />
      virsh: remove unneeded usage of vshConnectionUsability() (Peter Krempa)<br />
      </li></ul>
        <h3>0.10.1: August 31 2012</h3>
        <ul><li> Bug Fixes:<br />
      conf: Avoid formatting auto-generated DAC labels (Marcelo Cerri),<br />
      conf: Fix parsing of seclabels without model (Marcelo Cerri),<br />
      virsh: fixed incorrect timing report (Viktor Mihajlovski),<br />
      qemu: Don't ignore CPU tuning config if required cgroups are missing (Jiri Denemark),<br />
      cgroup: fix libvirtd crash caused by messed memory (Guannan Ren),<br />
      cgroup: fix a typo on extracting data from vcpu cgroup (Guannan Ren),<br />
      cgroup: read more data from cgroup cpuacct.usage_percpu (Guannan Ren),<br />
      nwfilter: adapt IP learning for broadcasted DHCP replies (Stefan Berger),<br />
      nwfilter: accept broadcasted DHCP replies in DHCP snooping code (Stefan Berger),<br />
      Fix adding ports to OVS bridges without VLAN tags (Kyle Mestery),<br />
      Fix xen driver following changes to make it stateful (Jim Fehlig),<br />
      Fix issue of PF brought down if VF is 8021.Qbh and pci passthrough (Nishank Trivedi),<br />
      nwfilter: loop generated too many rules (Stefan Berger),<br />
      security: Re-apply commit ce53382ba28179d3a504b29b4f888b6e130d53f0 (Peter Krempa),<br />
      vcpupin: Fix returning of arrays from virDomainVcpuPinAdd (Peter Krempa),<br />
      qemu: Fix possible infinite loop and segfault on error path. (Peter Krempa),<br />
      qemu: Clean up security driver initialisation and config file (Peter Krempa),<br />
      qemu: Revert to blocking behavior of qemuAgentCommand (Jiri Denemark),<br />
      qemu: Remove redundant parameter from qemuAgentSend (Jiri Denemark),<br />
      network: get vlan info for Open vSwitch interfaces from proper source (Laine Stump),<br />
      Small cleanup on previous patch (Daniel Veillard),<br />
      Fix a crash when using Open vSwitch virtual ports (Kyle Mestery),<br />
      qemu: Sort the numa params only when it affects the live config (Osier Yang),<br />
      Fix configuration of QEMU security drivers (Daniel P. Berrange),<br />
      qemu: Refactor initialisation of security drivers. (Peter Krempa),<br />
      Revert "security: Add DAC to security_drivers" (Peter Krempa),<br />
      qemu: Fix starting domains with no cpu cgroup (Jiri Denemark)<br />
      </li><li> Documentation:<br />
      virsh: Document subdriver option of attach-disk (Jiri Denemark),<br />
      update option force to subcommand change-media (Guannan Ren),<br />
      Fix typo in CPU tuning (Jiri Denemark),<br />
      Fix emulator pinning example in formatdomain.html (Peter Krempa)<br />
      </li><li> Improvement:<br />
      Implement virMacAddrIsBroadcastRaw (Stefan Berger)<br />
      </li><li> Cleanup:<br />
      security: remove dead code from virSecurityDACGenLabel (Alex Jia)<br />
      </li></ul>
        <h3>0.10.0: August 29 2012</h3>
        <ul><li> Features:<br />
      agent: add qemuAgentArbitraryCommand() for general qemu agent command (MATSUDA Daiki),<br />
      Introduce virDomainPinEmulator and virDomainGetEmulatorPinInfo functions. (Tang Chen),<br />
      network: use firewalld instead of iptables, when available (Thomas Woerner),<br />
      network: make network driver vlan-aware (Laine Stump),<br />
      esx: Implement network driver (Matthias Bolte),<br />
      driver for parallels hypervisor (Dmitry Guryanov),<br />
      Various LXC improvements (Daniel P. Berrange),<br />
      Add virDomainGetHostname (Guido Günther)<br />
      </li><li> Documentation:<br />
      CPU allocation and pinning clarification (Martin Kletzander),<br />
      libssh2_transport: Add docs to remote.html (Peter Krempa),<br />
      Fix some typos in messages, docs and comments. (Yuri Chornoivan),<br />
      fix blockpull/blockcopy bandwidth Mbps -&gt; MiB/s (Stefan Hajnoczi),<br />
      qemu: modify 3 error messages (Martin Kletzander),<br />
      Enhance documentation of log_filters (Jiri Denemark),<br />
      Update libvirtd --help output to match code (Doug Goldstein),<br />
      Update paths in man page to reflect libvirtd code (Doug Goldstein),<br />
      Fix man page file paths to real paths (Doug Goldstein),<br />
      Update documentation for CPU quota/period support for LXC (Sukadev Bhattiprolu),<br />
      docs/virsh: various minor fixes (Martin Kletzander),<br />
      autogenerate search.php (Martin Kletzander),<br />
      fix 404 page when fetched from different location (Martin Kletzander),<br />
      Add method to print warnings in docBuilder class (Peter Krempa),<br />
      maint: avoid regression on copyright listings (Eric Blake),<br />
      maint: Use consistent copyright. (Osier Yang),<br />
      add more description on libvirtd option timeout (Guannan Ren),<br />
      virsh man page - domain-id consistency (Jan Tomko),<br />
      Fixup manpage names and copyright dates (Laine Stump),<br />
      conf: Fix typo in virDomainHostdevSubsys comment (Jiri Denemark),<br />
      maint: spelling correction in AUTHORS (Eric Blake),<br />
      virsh: Clarify that memtune parameters may be rounded in the man page (Jan Tomko),<br />
      Fix time keeping example for the guest clock (Doug Goldstein),<br />
      Desert the FSF address in copyright (Osier Yang),<br />
      Improve patch submission guidelines (Michal Privoznik),<br />
      Clarify direct migration (Jiri Denemark),<br />
      added description of the vendor_id attribute (Hendrik Schwartke),<br />
      virsh: Clarify documentation for virsh dompmsuspend command (Peter Krempa)<br />
      </li><li> Portability:<br />
      Don't require gawk for a simple print expression (Guido Günther),<br />
      Portability fixes for non-linux or old linux platforms (Daniel Veillard),<br />
      build: define 'inline' iff HAVE_LIBNL1 (Michal Privoznik),<br />
      build: work with older libnl1 headers (Eric Blake),<br />
      specfile: require libnl3 for Fedora &gt;= 18 and RHEL &gt;= 7 (Laine Stump),<br />
      build: add LIBNL_CFLAGS to build of libvirt_lxc (Laine Stump),<br />
      Fix a missing build requirement on dbus-devel (Daniel Veillard),<br />
      Fix parameter list in virNetlinkEvent{Add,Remove}Client Win32 stubs (Daniel P. Berrange),<br />
      build: avoid $(builddir) in Makefile (Eric Blake),<br />
      build: network requires location of dbus headers (Eric Blake),<br />
      atomic: mark header functions static (Eric Blake),<br />
      build: work with glibc that lacks CPU_COUNT (Eric Blake),<br />
      build: work with older RHEL 5 kernel (Eric Blake),<br />
      build: silence stupid gcc warning on STREQ_NULLABLE (Eric Blake),<br />
      Fix parsing of uid/gid on Mingw32 (Daniel P. Berrange),<br />
      build: fix build with autoconf 2.59 (Eric Blake),<br />
      Fix build of virsh on Win32 by moving SA_SIGINFO stub (Daniel P. Berrange),<br />
      Make Win32 stub of vshAskReedit non-static (Daniel P. Berrange),<br />
      Fix WIN32 conditional for disabling console command (Daniel P. Berrange),<br />
      build: avoid warnings on older gcc (Eric Blake),<br />
      Fix virJSONValueToString prototype for Mingw32 (Daniel P. Berrange),<br />
      random: link with -lm when needed (Eric Blake),<br />
      build: fix link error with appArmor (Eric Blake),<br />
      virsh.c: Fix compiler warning (Cole Robinson),<br />
      Avoid clash of base64 symbols (Daniel P. Berrange),<br />
      build: fix build without HAVE_CAPNG (Eric Blake),<br />
      Fix libnl CFLAGS/LIBS inclusion (Doug Goldstein),<br />
      build: fix compilation without struct ifreq (Eric Blake),<br />
      configure: rbd doesn't need -lcrypto (Cole Robinson),<br />
      build: fix typo that breaks non-Linux builds (Eric Blake)<br />
      </li><li> BugFixes:<br />
      nwfilter: Don't try to acquire DBus context when DBus is disabled (Peter Krempa),<br />
      util: Prevent libvirtd crash (Alex Jia),<br />
      security_dac: Don't return uninitialised uid and gid for image labels (Peter Krempa),<br />
      security_dac: Don't return uninitialised value when parsing seclabels (Peter Krempa),<br />
      security_dac: Avoid segfault when no label is requested (Peter Krempa),<br />
      util: Fix error message when getpwuid_r fails to find the user (Peter Krempa),<br />
      conf: Fix the problem which cause libvirtd to crash (Osier Yang),<br />
      qemu: Fix define logic (Michal Privoznik),<br />
      qemu_agent: Switch to virReportSystemError() on system error (Michal Privoznik),<br />
      conf: prevent NULL pointer access in virSecurityLabelDefsParseXML (Ján Tomko),<br />
      rpc: fix segmentation fault caused by null client-sock (Guannan Ren),<br />
      qemu: fix regression with spice tls port allocation (Martin Kletzander),<br />
      qemu: fix regression with pinning (Martin Kletzander),<br />
      virsh: fix missing return value (Alex Jia),<br />
      xen-xs: fix uuid of renamed domain (Philipp Hahn),<br />
      openvz: check the exitstatus of vzlist (Laine Stump),<br />
      network: fix virtual network bridge delay setting (Laine Stump),<br />
      qemu: forbid suspend if already pmsuspended (Michal Privoznik),<br />
      fix check of vcpuid in virDomainVcpuPinDefParseXML (Hu Tao),<br />
      util: eliminate erroneous VIR_WARNs in (eb|ip)tables.c (Laine Stump),<br />
      dnsmasq: avoid forwarding queries without a domain (Gene Czarcinski),<br />
      virsh: don't print error info when snapshot xml is not changed (Guannan Ren),<br />
      Fix typo in Makefile.am  s/LDFOAGS/LDFLAGS/ (Daniel P. Berrange),<br />
      client: Change default location of known_hosts file for libssh2 layer (Peter Krempa),<br />
      command: avoid double close in virExecWithHook (Ján Tomko),<br />
      Fix regression generating image context (Daniel P. Berrange),<br />
      selinux: Fix incorrect object label generation. (Viktor Mihajlovski),<br />
      conf: log error when encountering multiple filterrefs in interface (Laine Stump),<br />
      openvz: unlock virDomainObj objects in openvzOpen (Dmitry Guryanov),<br />
      util: typos in fallback code fo virDoubleToStr (Martin Kletzander),<br />
      Fix timebomb in LIBVIRT_VERSION_INFO calculation (Daniel P. Berrange),<br />
      json: fix interface locale dependency (Martin Kletzander),<br />
      virsh: say save-image-edit failed only when it does (Ján Tomko),<br />
      sanlock: don't unlink lockspace if registration fails (Asad Saeed),<br />
      build: Distribute check-symfile.pl (Cole Robinson),<br />
      Release only specific sanlock resource (Frido Roose),<br />
      build: fix binary location in stap files --with-driver-modules (Laine Stump),<br />
      nwfilter: fix crash during filter define when lxc driver failed startup (Laine Stump),<br />
      nwfilter: remove target table before renaming it (Stefan Berger),<br />
      qemu: Fix debug message in p2p migration (Jiri Denemark),<br />
      Fix errno check, prevent spurious errors under heavy load (Peter Feiner),<br />
      rpc: fix a virObject typo error in struct _virNetServer (Guannan Ren),<br />
      Set LIBVIRT_AUTOSTART=0 when running test suites (Daniel P. Berrange),<br />
      qemu: Set reasonable RSS limit on domain startup (Michal Privoznik),<br />
      conf: Remove console stream callback only when freeing console helper (Peter Krempa),<br />
      client: Free message when freeing client (Peter Krempa),<br />
      build: fix "make rpm" (Laine Stump),<br />
      Fix typo s/AM_CLFAGS/AM_CFLAGS/ in sanlock link (Daniel P. Berrange),<br />
      virsh: console: Avoid using stream after being freed. (Peter Krempa),<br />
      remote: Fill snapshot argument in remoteDomainSnapshotListAllChildren (Peter Krempa),<br />
      qemu: Fix typo in qemuDomainModifyDeviceFlags (Michal Privoznik),<br />
      build: commit to 0.10.0 release naming (Eric Blake),<br />
      build: Link security driver into daemon (Jiri Denemark),<br />
      Fix rpm build failures (Daniel Veillard),<br />
      Add missing parallels_utils.h to Makefile.am (Daniel Veillard),<br />
      qemu: syntax fix (Marc-André Lureau),<br />
      qemu: fix use after free (Eric Blake),<br />
      build: distribute virsh related source files (Guannan Ren),<br />
      daemon: Fix crash in virTypedParameterArrayClear (Jiri Denemark),<br />
      conf: Remove callback from stream when freeing entries in console hash (Peter Krempa),<br />
      Process all pending I/O for a RPC client before checking EOF (Daniel P. Berrange),<br />
      libvirt-guests: systemd host shutdown does not work (Gerd v. Egidy),<br />
      virsh: Fix error resetting on fallback paths (Peter Krempa),<br />
      virsh: Check for existence of storage before undefining the domain (Peter Krempa),<br />
      util: Fix typoes on return value and comments (Guannan Ren),<br />
      fixed SegFault in virauth (Martin Kletzander),<br />
      virsh: fixed domdisplay command (Martin Kletzander),<br />
      building: fix deps error when some drivers are not built (Wen Congyang),<br />
      ESX: Fix ESX_VI__TEMPLATE__DYNAMIC_DEEP_COPY (Ata E Husain Bohra),<br />
      tests: avoid seclabeltest crash (Eric Blake),<br />
      Only enforce check for YAJL when starting a VM (Daniel P. Berrange),<br />
      Make the 'lxc_driver' global variable non-static (Gao feng),<br />
      Reset the 'quit' flag in virNetServerRun (Daniel P. Berrange),<br />
      Don't autostart domains when reloading config (Daniel P. Berrange),<br />
      esx: Fix esxVI_String_Deserialize (Matthias Bolte),<br />
      nodeinfo: deal with offline cpus in a node (Eric Blake),<br />
      lxcContainerMountCGroups also mounts a tmpfs that needs to be labeled. (Dan Walsh),<br />
      remote: Fix locking in stream APIs (Jiri Denemark),<br />
      qemu: Do not fail virConnectCompareCPU if host CPU is not known (Jiri Denemark),<br />
      qemu: Fix probing for guest capabilities (Jiri Denemark),<br />
      fix failure when building with --disable-debug (Hu Tao),<br />
      virsh: remove unnecessary sleep for nodecpustats --percent (Viktor Mihajlovski),<br />
      Fix daemon auto-spawning (Christophe Fergeau),<br />
      Fix directory removal in filesystem storage driver (Sascha Peilicke),<br />
      storage: Default pool permission mode to 0755 (Osier Yang),<br />
      Fix shutdown of LXC controller (Daniel P. Berrange),<br />
      openvz: Handle domain obj hash map errors (Guido Günther),<br />
      Fix /domain/features setting in qemuParseCommandLine (Christophe Fergeau),<br />
      systemd: start libvirtd after network (Jim Fehlig),<br />
      util: Use current uid and gid if they are passed as -1 for virDirCreate (Osier Yang),<br />
      virsh: Ensure the parents of the readline history path exists (Osier Yang),<br />
      Fix a string format bug in qemu_cgroup.c (tangchen),<br />
      storage_backend_fs: Allocate entry for host before accessing it (Peter Krempa),<br />
      storage_backend_fs: Don't free a part of a structure on error (Peter Krempa),<br />
      Only ummount /proc, /sys, /dev if the root source is '/' (Daniel P. Berrange),<br />
      Fix one test regression on auth Ceph support (Daniel Veillard),<br />
      Avoid build shared source files again for libvirt_lxc (Daniel P. Berrange),<br />
      qemu: Always set auth_supported for Ceph disks. (Wido den Hollander),<br />
      virsh: Fix ordering of arguments when calling vshCalloc. (Peter Krempa),<br />
      remote: Fill remote parameters in remoteDomainListAllSnapshots() (Peter Krempa),<br />
      qemu: Mark domains as having managed state image only on managed save (Peter Krempa),<br />
      fix key error for qemuMonitorGetBlockStatsInfo (lvroyce)<br />
      </li><li> Improvements:<br />
      Introduce new VIR_ERR_AGENT_UNRESPONSIVE error code (Michal Privoznik),<br />
      qemu: Switch to unified func name (Michal Privoznik),<br />
      snapshot: rename an enum (Eric Blake),<br />
      snapshot: split snapshot conf code into own file (Eric Blake),<br />
      snapshot: make virDomainSnapshotObjList opaque (Eric Blake),<br />
      conf: Don't always require security/@model (Michal Privoznik),<br />
      security: Add DAC to security_drivers (Michal Privoznik),<br />
      nwfilter: don't log error if firewalld is disabled, improve diagnostics (Laine Stump),<br />
      qemu-agent: available in 0.10.0 (Eric Blake),<br />
      agent: add qemu-agent-command to virsh (MATSUDA Daiki),<br />
      agent: add python module support (MATSUDA Daiki),<br />
      agent: add remote driver support (MATSUDA Daiki),<br />
      agent: add qemu driver support (MATSUDA Daiki),<br />
      agent: add virDrvDomainQemuAgentCommand prototype for drivers. (MATSUDA Daiki),<br />
      agent : add @seconds variable to qemuAgentSend(). (MATSUDA Daiki),<br />
      Add uevent netlink service. (Tang Chen),<br />
      Introduce virNetlinkEventServiceStopAll() to stop all netlink services. (Tang Chen),<br />
      Improve netlink to support all protocol. (Tang Chen),<br />
      libssh2_session: Add support for creating known_hosts file (Peter Krempa),<br />
      qemu: support of emulator_period and emulator_quota's modification (Wen Congyang),<br />
      new interface to control emulator_period/emulator_quota (Hu Tao),<br />
      qemu: introduce period/quota tuning for emulator (Hu Tao),<br />
      limit cpu bandwidth only for vcpus (Hu Tao),<br />
      new command emulatorpin (Hu Tao),<br />
      Add a new function vshPrintPinInfo. (Hu Tao),<br />
      remote: introduce emulator pinning RPCs (Tang Chen),<br />
      qemu: support emulator pinning (Hu Tao),<br />
      Introduce virDomainEmulatorPinAdd and virDomainEmulatorPinDel functions (Tang Chen),<br />
      Add qemuProcessSetEmulatorAffinites and set emulator threads affinities (Tang Chen),<br />
      qemu: synchronize emulatorpin info to cgroup (Tang Chen),<br />
      Support emulatorpin xml parse. (Tang Chen),<br />
      Change virDomainVcpuPinDefParseXML to support parsing emulatorpin (Hu Tao),<br />
      Enable cpuset cgroup and synchronous vcpupin info to cgroup. (Hu Tao),<br />
      updates of some vcpupin related functions (Hu Tao),<br />
      refactor virDomainVcpuPinAdd() (Hu Tao),<br />
      add function bitmapFromBytemap() to convert bytemap to bitmap (Hu Tao),<br />
      create a new cgroup and move all emulator threads to the new cgroup (Wen Congyang),<br />
      Introduce the function virCgroupMoveTask (Hu Tao),<br />
      Introduce the function virCgroupForEmulator (Wen Congyang),<br />
      output status information during guest shutdown again (Gerd v. Egidy),<br />
      qemu: Disk Geometry Override Support (J.B. Joret),<br />
      Support for Disk Geometry Override (J.B. Joret),<br />
      nwfilter: provide basic support for firewalld (Stefan Berger),<br />
      sanlock: Provide better error if lockspace directory is missing (Jiri Denemark),<br />
      daemon: Autodetect lock driver directory (Jiri Denemark),<br />
      build: split driver_storage into convenience library (Eric Blake),<br />
      libssh2_transport: Use libssh2 driver code in remote driver (Peter Krempa),<br />
      libssh2_transport: Add libssh2 session support to net client code (Peter Krempa),<br />
      libssh2_transport: add ssh context support to virNetSocket (Peter Krempa),<br />
      libssh2_transport: add main libssh2 transport implementation (Peter Krempa),<br />
      Add test case for SELinux label generation (Daniel P. Berrange),<br />
      Honour current sensitivity and category ranges in SELinux label generation (Daniel P. Berrange),<br />
      qemu: configurable remote display port boundaries (Martin Kletzander),<br />
      qemu: Unify port-wise SPICE and VNC behavior (Martin Kletzander),<br />
      virsh: split out virsh-volume.c (Eric Blake),<br />
      virsh: split out virsh-snapshot.c (Eric Blake),<br />
      virsh: split out virsh-secret.c (Eric Blake),<br />
      virsh: split out virsh-pool.c (Eric Blake),<br />
      virsh: split out virsh-nwfilter.c (Eric Blake),<br />
      virsh: split out virsh-nodedev.c (Eric Blake),<br />
      virsh: split out virsh-network.c (Eric Blake),<br />
      virsh: split out virsh-interface.c (Eric Blake),<br />
      virsh: declare more common functions (Eric Blake),<br />
      virsh: split out virsh-host.c (Eric Blake),<br />
      virsh: split out virsh-domain-monitor.c (Eric Blake),<br />
      Update the remote API (Marcelo Cerri),<br />
      Support for multiple default security drivers in QEMU config (Marcelo Cerri),<br />
      Update security layer to handle many security labels (Marcelo Cerri),<br />
      Multiple security drivers in XML data (Marcelo Cerri),<br />
      Internal refactory of data structures (Marcelo Cerri),<br />
      virsh: use common namespacing (Eric Blake),<br />
      Add support for creating sockets &amp; RPC servers from a pre-opened fd (Daniel P. Berrange),<br />
      Refactor impl of the virNetServerClientNew method (Daniel P. Berrange),<br />
      Refactor the way new clients are registered with the server (Daniel P. Berrange),<br />
      virsh: split out virsh-domain.c (Eric Blake),<br />
      virsh: split out virsh.h (Eric Blake),<br />
      virsh: move vshWatchJob earlier (Eric Blake),<br />
      qemu: support netdevs from &lt;forward mode='hostdev'&gt; networks (Shradha Shah),<br />
      network: support &lt;forward mode='hostdev'&gt; in network driver (Shradha Shah),<br />
      conf: add function virDevicePCIAddressEqual (Shradha Shah),<br />
      network: return netdev name or pci addr of the VF in actualDevice (Shradha Shah),<br />
      conf: parser/formatter/rng for &lt;forward mode='hostdev'&gt; (Shradha Shah),<br />
      network: helper function to create interface pool from PF (Shradha Shah),<br />
      conf: move DevicePCIAddress functions to separate file (Shradha Shah),<br />
      conf: Fix ABI stability check for spicevmc channel (Jiri Denemark),<br />
      network: add support for setting VLANs on Open vSwitch ports (Kyle Mestery),<br />
      qemu: Set swap_hard_limit before hard_limit (Osier Yang),<br />
      build: ship stamp files (Eric Blake),<br />
      qemu: support setting vlan tag for &lt;interface type='hostdev'&gt; (Laine Stump),<br />
      util: properly save/restore original vlan tag for VFs (Laine Stump),<br />
      qemu: Ensure the cpuset is formatted as expected before passing to cgroup (Osier Yang),<br />
      conf: add &lt;vlan&gt; element to network and domain interface elements (Laine Stump),<br />
      util: add virNetDevVlanType (Laine Stump),<br />
      schema: fix some problems in network/interface schemas (Laine Stump),<br />
      util: include memory.h even if WITH_VIRTUALPORT isn't defined (Laine Stump),<br />
      Replace unset REMOTE_PID_FILE with proper value (Doug Goldstein),<br />
      Refactor RPC client private data setup (Daniel P. Berrange),<br />
      Add further debugging lines to domain lock manager (Daniel P. Berrange),<br />
      Allow sync IO and keepalives to be skipped in RPC client setup (Daniel P. Berrange),<br />
      Change interaction when accepting new RPC client connections (Daniel P. Berrange),<br />
      Add APIs for virThreadPoolPtr to query some config params (Daniel P. Berrange),<br />
      Allow control over JSON string pretty printing (Daniel P. Berrange),<br />
      Change function signature for creating new lock manager instances (Daniel P. Berrange),<br />
      parallels: add domain configuration example (Dmitry Guryanov),<br />
      parallels: cleanup parallelsOpen and fix error message (Dmitry Guryanov),<br />
      parallels: change URI to parallels:///system (Dmitry Guryanov),<br />
      virsh: Add helper to avoid the strcase check for virsh-*.c (Osier Yang),<br />
      network: add connections counter to networks (Laine Stump),<br />
      network: change cleanup: to success/cleanup/error: in network*() functions (Laine Stump),<br />
      conf: output forward device connections count in network XML (Laine Stump),<br />
      conf: rename interface "usageCount" to "connections" (Laine Stump),<br />
      conf: use a unique data type for PF array in virDomainNetDef (Laine Stump),<br />
      network: merge relevant virtualports rather than choosing one (Laine Stump),<br />
      conf: support partially-specified &lt;virtualport&gt; in parser and formatter (Laine Stump),<br />
      conf: simplify Buffer Indentation in virDomainNetDefFormat (Laine Stump),<br />
      conf: make error returns from virDomainActualNetDefFormat consistent (Laine Stump),<br />
      conf: move virtPortProfile out of unions in virDomainNetDef (Laine Stump),<br />
      util: utility functions for virNetDevVPortProfile (Laine Stump),<br />
      util: add openvswitch case to virNetDevVPortProfileEqual (Laine Stump),<br />
      util: eliminate union in virNetDevVPortProfile (Laine Stump),<br />
      util: make return value of virUUIDFormat and virMacAddrFormat useful (Laine Stump),<br />
      Pull code which finds a free MCS label out into its own method (Daniel P. Berrange),<br />
      Honour current user and role in SELinux label generation (Daniel P. Berrange),<br />
      Fix error reporting in virSecuritySELinuxGenNewContext (Daniel P. Berrange),<br />
      Use VIR_ERR_CONFIG_UNSUPPORTED if requested security driver is disabled (Daniel P. Berrange),<br />
      Add missing domain_conf.h include in security_manager.h (Daniel P. Berrange),<br />
      Add virRandom() API to generate numbers with non-power-of-2 limit (Daniel P. Berrange),<br />
      virsh: make 'help' command ignore spurious options (Cole Robinson),<br />
      virsh: Convert '&lt;cmd&gt; --help' to 'help &lt;cmd&gt;' (Cole Robinson),<br />
      virterror: Add error message for unsupported operations. (Peter Krempa),<br />
      build: fix PROBE() usage of intptr_t (Eric Blake),<br />
      esx: Remove redundant checks for esxVI_LookupHostSystemProperties result (Matthias Bolte),<br />
      esx: Fix dynamic deep copy (Matthias Bolte),<br />
      esx: Implement interface driver (Matthias Bolte),<br />
      Add APIs for obtaining the unique ID of LVM &amp; SCSI volumes (Daniel P. Berrange),<br />
      examples: Update strings for event details (Jiri Denemark),<br />
      qemu: Migrate at unlimited speed by default (Jiri Denemark),<br />
      qemu: Refactor parsing of block device IO tuning parameters. (Peter Krempa),<br />
      remote: Clean up coding style and refactor remote connection opening (Peter Krempa),<br />
      Allow rbd backing stores (Peter Feiner),<br />
      qemu: add two qemu caps for lsi and virtio-scsi SCSI controllers (Guannan Ren),<br />
      qemu: add capabilities flags related to scsi controller (Guannan Ren),<br />
      util: include stderr in log message when an external command fails (Laine Stump),<br />
      Turn virNetClient* into virObject instances (Daniel P. Berrange),<br />
      Turn virNetServer* into virObject instances (Daniel P. Berrange),<br />
      Turn virSocket into a virObject (Daniel P. Berrange),<br />
      Turn virKeepAlive into a virObject (Daniel P. Berrange),<br />
      Turn virNetSASLContext and virNetSASLSession into virObject instances (Daniel P. Berrange),<br />
      Turn virNetTLSContext and virNetTLSSession into virObject instances (Daniel P. Berrange),<br />
      Turn qemuAgentPtr and qemuMonitorPtr into virObjectPtr instances (Daniel P. Berrange),<br />
      Turn virDomainObjPtr into a virObjectPtr (Daniel P. Berrange),<br />
      Convert public datatypes to inherit from virObject (Daniel P. Berrange),<br />
      Add a generic reference counted virObject type (Daniel P. Berrange),<br />
      apparmor: QEMU bridge helper policy updates (Richa Marwaha),<br />
      Add -netdev bridge support (Richa Marwaha),<br />
      Add -netdev bridge capabilities (Richa Marwaha),<br />
      virrandom: make virRandomInitialize an automatic one-shot (Eric Blake),<br />
      virsh: Use vshPrint instead of printf (Osier Yang),<br />
      xen-xm: Generate UUID if not specified (Jim Fehlig),<br />
      ESX: Add "Byte" datatype (Ata E Husain Bohra),<br />
      parallels: translate error message (Eric Blake),<br />
      Export virUUIDIsValid to libvirt internal code (Daniel P. Berrange),<br />
      qemu: Allow to attach/detach controller device persistently (Osier Yang),<br />
      Added timestamps to storage volumes (Hendrik Schwartke),<br />
      Update xml schemas according to libvirt source (Ján Tomko),<br />
      build: add stubs so mdns code can be unconditionally compiled (Eric Blake),<br />
      virsh: Switch to close callback (Michal Privoznik),<br />
      daemon: Portable auto-detection of driver module directory (Jiri Denemark),<br />
      build: Rename security manager library (Jiri Denemark),<br />
      build: Link security manager into libvirt.so (Jiri Denemark),<br />
      Rewrite virAtomic APIs using GLib's atomic ops code (Daniel P. Berrange),<br />
      Remove manual one-shot global initializers (Daniel P. Berrange),<br />
      qemu: Add support for "none" USB controller (Peter Krempa),<br />
      domain_conf: Add helpers to verify if device configuration is valid (Peter Krempa),<br />
      domain_conf: Add USB controler model "none" (Peter Krempa),<br />
      storage: netfs and iscsi need option srcSpec for resource discovery (Guannan Ren),<br />
      maint: consolidate AUTHOR listings for Gerd von Egidy (Gerd v. Egidy),<br />
      parallels: implement VM creation (Dmitry Guryanov),<br />
      parallels: add storage driver (Dmitry Guryanov),<br />
      parallels: implement virDomainDefineXML operation for existing domains (Dmitry Guryanov),<br />
      parallels: add support of VNC remote display (Dmitry Guryanov),<br />
      parallels: get info about serial ports (Dmitry Guryanov),<br />
      parallels: implement functions for domain life cycle management (Dmitry Guryanov),<br />
      parallels: add functions to list domains and get info (Dmitry Guryanov),<br />
      add function virCommandNewVAList (Dmitry Guryanov),<br />
      parallels: add driver skeleton (Dmitry Guryanov),<br />
      Only perform symbol check against libvirt.so (Daniel P. Berrange),<br />
      Don't link nwfilter or secrets driver to libvirt.so (Daniel P. Berrange),<br />
      Remove bogus libvirt_network.syms file (Daniel P. Berrange),<br />
      build: Don't export xenLinuxDomainBlockStats symbol (Jiri Denemark),<br />
      Improve error message in LXC startup with network is not active (Daniel P. Berrange),<br />
      Remove tabs from all perl files &amp; enforce this (Daniel P. Berrange),<br />
      Add handling for reboots of LXC containers (Daniel P. Berrange),<br />
      Allow CAP_SYS_REBOOT on new enough kernels (Daniel P. Berrange),<br />
      Run an RPC protocol over the LXC controller monitor (Daniel P. Berrange),<br />
      Make RPC code generator a little more flexible (Daniel P. Berrange),<br />
      Move LXC monitor code out into separate file (Daniel P. Berrange),<br />
      Convert the LXC driver to use virNetClient (Daniel P. Berrange),<br />
      Replace use of lxcError with virReportError (Daniel P. Berrange),<br />
      Rename lxc_driver_t to virLXCDriver (Daniel P. Berrange),<br />
      Rename all APIs in lxc_domain.c to have a virLXCDomain prefix (Daniel P. Berrange),<br />
      Rename all APIs in lxc_process.c to have a virLXCProcess prefix (Daniel P. Berrange),<br />
      Extend events demo to show close callbacks in use (Daniel P. Berrange),<br />
      Update remote driver to support the connection close callbacks (Daniel P. Berrange),<br />
      Add callback to virNetClient to be invoked on connection close (Daniel P. Berrange),<br />
      Ensure client is marked for close in all error paths (Daniel P. Berrange),<br />
      Add public API to register a callback to be invoked on connection close (Daniel P. Berrange),<br />
      esx: Improve error reporting for unknown VI types (Matthias Bolte),<br />
      security: Skip labeling resources when seclabel defaults to none (Jiri Denemark),<br />
      lib: Revert removing of Summary and Description fields in headers (Peter Krempa),<br />
      Add a test case that checks there are no bogus entries in .syms (Daniel P. Berrange),<br />
      virsh: Refactor error clearing on graceful fallback paths (Peter Krempa),<br />
      maint: don't permit format strings without % (Eric Blake),<br />
      maint: avoid empty regex in syntax checker (Eric Blake),<br />
      virsh: check if specified debug level is in range (Ján Tomko),<br />
      build: update to latest gnulib, for secure tarball (Eric Blake),<br />
      util: set minimum value of nodesuspend duration to 60 seconds (Guannan Ren),<br />
      virsh: Move command group definition into its own file (Osier Yang),<br />
      virsh: Split cmds in node device group from virsh.c (Osier Yang),<br />
      virsh: Split cmds in host group from virsh.c (Osier Yang),<br />
      virsh: Split cmds to manage domain snapshot from virsh.c (Osier Yang),<br />
      virsh: Split cmds to manage secret from virsh.c (Osier Yang),<br />
      virsh: Split cmds to manage network filter from virsh.c (Osier Yang),<br />
      virsh: Split cmds to manage host interface from virsh.c (Osier Yang),<br />
      virsh: Split cmds to manage network from virsh.c (Osier Yang),<br />
      virsh: Split cmds of storage pool group from virsh.c (Osier Yang),<br />
      virsh: Split cmds of storage volume group from virsh.c (Osier Yang),<br />
      virsh: Split cmds of domain group from virsh.c (Osier Yang),<br />
      virsh: Split cmds for domain monitoring from virsh.c (Osier Yang),<br />
      virsh: Move definition of cmds and cmd groups right at the top of main (Osier Yang),<br />
      daemon: Fix the wrong macro name (Osier Yang),<br />
      More advanced auto-detection of driver module directory (Daniel P. Berrange),<br />
      adding handling EINTR to poll to make it more robust (Royce Lv),<br />
      build: regenerate .png files (Eric Blake),<br />
      Make ESX &amp; Hyper-V code generator safe with parallel builds (Daniel P. Berrange),<br />
      tests: Add support for catching domain XML parsing errors (Peter Krempa),<br />
      maint: Clean up coding style and fix error message spelling (Peter Krempa),<br />
      Fix test failure when no IPv6 is avail (Doug Goldstein),<br />
      vmx: handle shared folders parsing (Jean-Baptiste Rouault),<br />
      vmx: handle shared folders formatting (Jean-Baptiste Rouault),<br />
      openvz: Implement domainGetHostname (Guido Günther),<br />
      openvz: Add openvzVEGetStringParam (Guido Günther),<br />
      remote: Provide RPC call for domainGetHostname (Guido Günther),<br />
      virsh: Add domhostname (Guido Günther),<br />
      Report 'errno' in int1 field of virErrorPtr (Daniel P. Berrange),<br />
      Use a hash table for storing MCS labels (Daniel P. Berrange),<br />
      Fix error handling when adding MCS labels (Daniel P. Berrange),<br />
      Use standard naming prefix for SELinux driver function names (Daniel P. Berrange),<br />
      Disable NWFilter driver completely when unprivileged (Daniel P. Berrange),<br />
      Replace use of custom macros with virReportError in the Xen drivers (Daniel P. Berrange),<br />
      Make sure xenHypervisorInit correctly reports errors (Daniel P. Berrange),<br />
      Ensure failure to talk to Xen hypervisor is fatal when privileged (Daniel P. Berrange),<br />
      Using virOnce for global initialization (Daniel P. Berrange),<br />
      Replace use of VMX_ERROR with virReportError (Daniel P. Berrange),<br />
      Replace use of virNetError with virReportError (Daniel P. Berrange),<br />
      Replace use of virConfError with virReportError (Daniel P. Berrange),<br />
      Replace use of nodeReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of virSecurityReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of PHYP_ERROR with virReportError (Daniel P. Berrange),<br />
      Replace use of HYPERV_ERROR with virReportError (Daniel P. Berrange),<br />
      Replace use of ESX_ERROR &amp; ESX_VI_ERROR with virReportError (Daniel P. Berrange),<br />
      Replace use of virLockError with virReportError (Daniel P. Berrange),<br />
      Replace use of libxlError with virReportError (Daniel P. Berrange),<br />
      Add missing "%s" format string to constant error messages in lock manager (Jiri Denemark),<br />
      Add missing "%s" format string to constant error messages in libxl driver (Jiri Denemark),<br />
      Replace use of streamsReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of remoteError with virReportError (Daniel P. Berrange),<br />
      Replace use of XENXS_ERROR with virReportError (Daniel P. Berrange),<br />
      Replace use of openvzError with virReportError (Daniel P. Berrange),<br />
      Fix Xen driver to have sensible error messages (Daniel P. Berrange),<br />
      Move LXC process management code into separate file (Daniel P. Berrange),<br />
      Move cgroup setup code out of lxc_controller.c (Daniel P. Berrange),<br />
      Move LXC domain private data into separate file (Daniel P. Berrange),<br />
      Replace use of vmwareError with virReportError (Daniel P. Berrange),<br />
      Replace use of virCPUReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of testError with virReportError (Daniel P. Berrange),<br />
      Replace use of vboxError with virReportError (Daniel P. Berrange),<br />
      Replace use of xenapiError with virReportError (Daniel P. Berrange),<br />
      Replace use of qemuReportError with virReportError (Daniel P. Berrange),<br />
      qemu: Add missing "%s" before translation macros (Peter Krempa),<br />
      Replace use of umlReportError with virReportError (Daniel P. Berrange),<br />
      Add lots of internal symbols to libvirt_private.syms (Daniel P. Berrange),<br />
      If in delay close mode for an RPC client, don't read further data (Daniel P. Berrange),<br />
      Add missing deps on driver modules in libvirt RPM (Daniel P. Berrange),<br />
      Replace use of networkReportError with virReportError (Daniel P. Berrange),<br />
      maint: add mailmap entry for Dan Walsh (Eric Blake),<br />
      esx: Extend esxVI_CURL_Download for partial downloads (Matthias Bolte),<br />
      Replace use of interfaceReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of virNWFilterReportError with virReportError (Daniel P. Berrange)i Add missing "%s" with constant string error message in nwfilter_dhcpsnoop.c (Daniel P. Berrange),<br />
      Add a sheepdog backend for the storage driver (Sebastian Wiedenroth),<br />
      Mount all tmpfs filesystems with correct SELinux label (Daniel J Walsh),<br />
      Replace use of virNodeDeviceReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of virSecretReportError with virReportError (Daniel P. Berrange),<br />
      Replace use of virStorageReportError with virReportError (Daniel P. Berrange),<br />
      Add missing "%s" format to const error message in RBD storage driver (Daniel P. Berrange),<br />
      Convert all files in src/conf/ to use virReportError() (Daniel P. Berrange),<br />
      Add missing _(...) around 2 error messages in test driver (Daniel P. Berrange),<br />
      Fix parameter passed with VIR_ERR_INVALID_ARG in sanlock driver (Daniel P. Berrange),<br />
      Convert all files in src/rpc/ to use virReportError() (Daniel P. Berrange),<br />
      Convert (nearly) all files in src/util/ to use virReportError() (Daniel P. Berrange),<br />
      Fix bogus cast to (int) in virNetServerMDNSTimeoutNew (Daniel P. Berrange),<br />
      Add missing "%s" with constant string error message in stats_linux.c (Daniel P. Berrange),<br />
      Remove newline from end of error message in virnodesuspend.c (Daniel P. Berrange),<br />
      Add _(...) around two error messages in src/util/ (Daniel P. Berrange),<br />
      Introduce virReportError macro for general error reporting (Daniel P. Berrange),<br />
      xenapi: Convert to virMacAddr (Jiri Denemark),<br />
      nwfilter: Convert to virMacAddrPtr not virMacAddrPtr* (Michal Privoznik),<br />
      nwfilter: Convert to virMacAddrPtr completely (Michal Privoznik),<br />
      Convert 'raw MAC address' usages to use virMacAddr (Stefan Berger),<br />
      Wire up handling for QMP's BALLOON_EVENT (Daniel P. Berrange),<br />
      Define public API for receiving guest memory balloon events (Daniel P. Berrange),<br />
      ARMHF: CPU Support for armhf. (Chuck Short),<br />
      Support creation of sparse LVM volumes (Daniel P. Berrange),<br />
      Remove all use of virRun in storage code (Daniel P. Berrange),<br />
      test: Add test case for nodeinfotest if host machine doesn't have NUMA (Peter Krempa),<br />
      test: Add new test case for nodeinfotest (Peter Krempa),<br />
      nodeinfo: Fix gathering of nodeinfo data structure (Peter Krempa),<br />
      nodeinfo_test: Enhance test data before changing nodeinfo gathering (Peter Krempa),<br />
      S390: Adding testcases for s390 (Viktor Mihajlovski),<br />
      S390: Domain Schema for s390-virtio machines. (Viktor Mihajlovski),<br />
      S390: Add support for virtio-s390 devices. (Viktor Mihajlovski),<br />
      qemu: Change tests to use (modified) qemuDomainAssignAddresses (Viktor Mihajlovski),<br />
      qemu: Extended qemuDomainAssignAddresses to be callable from everywhere. (Viktor Mihajlovski),<br />
      build: detect all improper uses of _("%s") (Eric Blake),<br />
      maint: update preferred contributor name (Eric Blake),<br />
      storage_conf: Break long line and polish coding style (Peter Krempa),<br />
      esx: Wrap libcurl multi handle (Matthias Bolte),<br />
      Switch to using virNetServer APIs for monitor socket (Daniel P. Berrange),<br />
      Move loop device setup code into virfile.{c,h} (Daniel P. Berrange),<br />
      Move cgroup objects into virLXCControllerPtr (Daniel P. Berrange),<br />
      Move monitor into virLXCControllerPtr (Daniel P. Berrange),<br />
      Move /dev/pts setup out of virLXCControllerRun (Daniel P. Berrange),<br />
      Move security manager into virLXCControllerPtr object (Daniel P. Berrange),<br />
      Move loop device FDs into virLXCControllerPtr object (Daniel P. Berrange),<br />
      Move daemon handshake FD into virLXCControllerPtr (Daniel P. Berrange),<br />
      Make console handling part of virLXCControllerPtr (Daniel P. Berrange),<br />
      Store the init PID in the virLXCController object (Daniel P. Berrange),<br />
      Move veth device management into virLXCControllerPtr object (Daniel P. Berrange),<br />
      Introduce a virLXCControllerPtr object to hold LXC controller state (Daniel P. Berrange),<br />
      Allow RPC server to run single threaded (Daniel P. Berrange),<br />
      Add a opaque parameter to the RPC client init callback (Daniel P. Berrange),<br />
      vmware: detect when a domain was shut down from the inside (Jean-Baptiste Rouault),<br />
      Added the attribute vendor_id to the cpu model (Hendrik Schwartke),<br />
      qemu: add rbd to whitelist of migration-safe formats (Josh Durgin)<br />
      </li><li> Cleanups:<br />
      atomic: fix whitespace in previous patch (Eric Blake),<br />
      virsh: drop unused headers (Eric Blake),<br />
      maint: prohibit translations in testsuite (Eric Blake),<br />
      Fix syntax-check failures wrt virsh (Daniel P. Berrange),<br />
      virsh: kill some double underscores (Eric Blake),<br />
      Fix the indentions of libvirt.h.in (Osier Yang),<br />
      build: fix syntax check during 'make distcheck' (Eric Blake),<br />
      Move some SASL symbols into libvirt_sasl.syms (Daniel P. Berrange),<br />
      Remove unused qemuProcessAutoDestroyRun decl from header (Daniel P. Berrange),<br />
      maint: drop a leftover comment line (Eric Blake),<br />
      Destroy virdomainlist.[ch] (Osier Yang),<br />
      qemu:rename qemuCheckScsiControllerModel function (Guannan Ren),<br />
      Don't check the 'connect' command in virsh-all test (Daniel P. Berrange),<br />
      build: drop conditional use of mdns code (Eric Blake),<br />
      Remove unused uuidstr variable from datatypes.c (Daniel P. Berrange),<br />
      Fix indentions (Osier Yang),<br />
      gitignore: Reorder alphabetically (Michal Privoznik),<br />
      spec: Remove extra () with return statement (Jiri Denemark),<br />
      conf: Remove dead code from virConsoleOpen() (Peter Krempa),<br />
      python: Don't generate bodies for close callback functions (Peter Krempa),<br />
      maint: regenerate bootstrap (Eric Blake),<br />
      Remove accidentally committed virNetClientSetEOFNotify symbol (Daniel P. Berrange),<br />
      Remove two non-existent NWFilter driver symbols from .syms (Daniel P. Berrange),<br />
      tests: reduce length of nodeinfodata test names (Eric Blake),<br />
      rpc: remove trailing whitespace character in error string (Guannan Ren),<br />
      po: avoid spurious double spaces in messages (Eric Blake),<br />
      virsh: remove extra space between function name and opening brace (Guido Günther),<br />
      maint: revert gnulib update, until fixed automake is in more distros (Eric Blake),<br />
      maint: use full author name for previous commit (Eric Blake)<br />
      </li></ul>
        <h3>0.9.13: July 2 2012</h3>
        <ul><li> Features:<br />
      S390: support for s390(x) (Thang Pham and Viktor Mihajlovski),<br />
      snapshot: implement new APIs for esx and vbox (Eric Blake),<br />
      snapshot: new query APIs and many improvements (Eric Blake),<br />
      virsh: Allow users to reedit rejected XML (Michal Privoznik),<br />
      nwfilter: add DHCP snooping (Stefan Berger),<br />
      Enable driver modules in libvirt RPM (Daniel P. Berrange),<br />
      Default to enable driver modules for libvirtd (Daniel P. Berrange),<br />
      storage backend: Add RBD (RADOS Block Device) support (Wido den Hollander),<br />
      sVirt support for LXC domains inprovement (Daniel P. Berrange and Daniel J Walsh)<br />
      </li><li> Documentation:<br />
      virsh: Cleanup virsh -V output (Doug Goldstein),<br />
      configure: show correct default argument in help (Marc-André Lureau),<br />
      fix typo in virDomainDestroy API doc (Christophe Fergeau),<br />
      virsh: fix few typos on desc command (Martin Kletzander),<br />
      virsh: Update vol-create-as manpage (Michal Privoznik),<br />
      virsh: Tweak attach-* documentation (Michal Privoznik),<br />
      small typo in formatdomain.html (Laine Stump),<br />
      client rpc: Improve debug messages in virNetClientIO (Jiri Denemark),<br />
      minor fixes to domain interface documentation (Laine Stump),<br />
      link to FLOSS Weekly podcast, virt blogs (Eric Blake),<br />
      examples: add consolecallback example python script (Dave Allan),<br />
      Fix typo in comment start (Daniel P. Berrange),<br />
      typo in acceleration element (Martin Kletzander),<br />
      Improve docs about compiling libvirt from GIT (Daniel P. Berrange)<br />
      </li><li> Portability:<br />
      Fix compilation on older sanlock (Daniel Veillard),<br />
      Fix unused parameters / functions in virsh on Win32 (Daniel P. Berrange),<br />
      Update to latest GNULIB to fix compat with Mingw64 toolchain (Daniel P. Berrange),<br />
      winsock2.h must always be included before windows.h (Daniel P. Berrange),<br />
      Switch automated builds to use Mingw64 toolchain instead of Mingw32 (Daniel P. Berrange),<br />
      openvz: Fix wordsize on 64 bit architectures (Guido Günther),<br />
      Fixes for check and rpm builds without sanlock (and qemu) (Martin Kletzander),<br />
      Fix Win32 build by linking to ole32 (Daniel P. Berrange),<br />
      Add impl of APIs to get user directories on Win32 (Daniel P. Berrange),<br />
      fix building error on non fedora system (Wen Congyang),<br />
      Add stub impl of virNetlinkEventServiceLocalPid for Win32 (Daniel P. Berrange),<br />
      Fix build when configuring with polkit0 (Jim Fehlig),<br />
      build: fix virnetlink on glibc 2.11 (Eric Blake),<br />
      Fix build compat with older libselinux for LXC (Daniel P. Berrange),<br />
      build: really silence the 32-bit warning (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      build: use correct limit for unsigned long long (Eric Blake),<br />
      nwfilter: Fix memory leak (Stefan Berger),<br />
      network_conf: Don't free uninitialized pointers while parsing DNS SRV (Peter Krempa),<br />
      storage: Error out if the target is already mounted for netfs pool (Osier Yang),<br />
      events: Don't fail on registering events for two different domains (Michal Privoznik),<br />
      Don't install systemd service files executable (Guido Günther),<br />
      fix a bug of ref count in virnetserver.c (Hu Tao),<br />
      Fix deadlock on libvirtd shutdown (Jim Fehlig),<br />
      openvz: check pointer size instead of int (Guido Günther),<br />
      domain_conf: fix possible memory leak (Martin Kletzander),<br />
      error: Fix typos in argument checking macros (Peter Krempa),<br />
      LXC: fix incorrect DEBUG info (Gao feng),<br />
      LXC: fix memory leak in lxcContainerSetupExtraMounts (Gao feng),<br />
      LXC: fix memory leak in lxcContainerGetSubtree (Gao feng),<br />
      LXC: fix memory leak in lxcContainerMountFSBlockHelper (Gao feng),<br />
      qemu_agent: Wait for events instead of agent response (Michal Privoznik),<br />
      Fix launch of libvirtd when DHCP snooping support is not available. (Daniel P. Berrange),<br />
      qemu: fix potential dead lock (Wen Congyang),<br />
      virsh: Null terminated the string memcpy from buffer explicitly (Osier Yang),<br />
      qemu: Fix off-by-one error while unescaping monitor strings (Peter Krempa),<br />
      virsh: Don't generate invalid XML in attach-disk command (Peter Krempa),<br />
      client rpc: Fix error checking after poll() (Daniel P. Berrange),<br />
      client rpc: Send keepalive requests from IO event loop (Jiri Denemark),<br />
      Fix typo in RPM specfile (Daniel P. Berrange),<br />
      python: fix snapshot listing bugs (Eric Blake),<br />
      qemu: Don't overwrite security labels (Michal Privoznik),<br />
      rpc: Fix memleak in virNetMessageEncodeHeader (Michal Privoznik),<br />
      Fix privileges on /var/run/libvirt directory (Daniel P. Berrange),<br />
      Only migrate profile in non-privileged libvirtd instance (Daniel P. Berrange),<br />
      snapshot: avoid virsh crash with older servers (Eric Blake),<br />
      LXC: fix memory leak in lxcContainerMountFSBlockAuto (Gao feng),<br />
      LXC: fix incorrect parameter of mount in lxcContainerMountFSBind (Gao feng),<br />
      util: Fix deadlock in virLogReset (Jiri Denemark),<br />
      Assign correct address type to spapr-vlan and spapr-vty. (Li Zhang),<br />
      command: avoid potential deadlock on handshake (Eric Blake),<br />
      qemu: better detection of crashed domains (Martin Kletzander),<br />
      command: avoid deadlock on EPIPE situation (Eric Blake),<br />
      Fix sync issue in virNetClientStreamEventRemoveCallback (Radu Caragea),<br />
      qemu: avoid closing fd more than once (Wen Congyang),<br />
      command: check for fork error before closing fd (Wen Congyang),<br />
      fdstream: avoid double close bug (Eric Blake),<br />
      command: avoid double close bugs (Eric Blake),<br />
      avoid fd leak (Wen Congyang),<br />
      avoid closing uninitialized fd (Wen Congyang),<br />
      lxc: return correct number of CPUs (Martin Kletzander),<br />
      leak_fix.diff (Stefan Berger),<br />
      Fix typos in RPM dependencies (Daniel P. Berrange),<br />
      Remove more bogus systemd service dependencies (Daniel P. Berrange),<br />
      qemu_hotplug: Don't free the PCI device structure after hot-unplug (Peter Krempa),<br />
      Fix potential events deadlock when unref'ing virConnectPtr (Daniel P. Berrange),<br />
      qemu: Don't delete USB device on failed qemuPrepareHostdevUSBDevices (Michal Privoznik),<br />
      nodeinfo: Get the correct CPU number on AMD Magny Cours platform (Osier Yang),<br />
      nodeinfo: avoid probing host filesystem during test (Eric Blake)<br />
      </li><li> Improvements:<br />
      Remove sub-mounts under /dev when starting an LXC container (Daniel P. Berrange),<br />
      Fix vm's outbound traffic control problem (Eiichi Tsukata),<br />
      conf: Don't shadow error from virGetDomain() (Peter Krempa),<br />
      maint: include ignore-value in internal.h (Peter Krempa),<br />
      vbox: Add support for virConnectListAllDomains() (Peter Krempa),<br />
      virsh: Add domdisplay cmd for VNC, SPICE and RDP (Doug Goldstein),<br />
      AUTHORS: Update (Michal Privoznik),<br />
      S390: Added sysinfo for host on s390(x). (Thang Pham),<br />
      S390: Fixed core identification for s390 (Viktor Mihajlovski),<br />
      S390: Fixed Parser for /proc/cpuinfo needs to be adapted for your architecture (Thang Pham),<br />
      S390: Override QEMU_CAPS_NO_ACPI for s390x (Viktor Mihajlovski),<br />
      storage backend rbd: Do not prefix rbd: on volume names. (Wido den Hollander),<br />
      qemu: Improve error if setmem fails for lacking of balloon support (Osier Yang),<br />
      Include the default listen address in the live guest XML (Daniel P. Berrange),<br />
      storage: Introduce --inactive for pool-dumpxml (Michal Privoznik),<br />
      storage: Switch to new def on pool-destroy (Michal Privoznik),<br />
      Support bind mounting host files, as well as directories in LXC (Daniel J Walsh),<br />
      Allow NOCONFIGURE=1 to make autogen.sh skip ./configure (Daniel P. Berrange),<br />
      virsh: Use virXPath wrappers for vncdisplay cmd (Doug Goldstein),<br />
      Add support for shared sanlock leases (Daniel P. Berrange),<br />
      Add support for guest bind mounts with LXC (Daniel P. Berrange),<br />
      Add support for RAM filesystems for LXC (Daniel P. Berrange),<br />
      virsh: Improve error when trying to change vm's cpu count 0 (Peter Krempa),<br />
      qemu: Add xhci support (Gerd Hoffmann),<br />
      virsh: add support for virConnectListAllDomains and clean up cmdList (Peter Krempa),<br />
      virsh: Rename namesorter to vshNameSorter and clean up indentation (Peter Krempa),<br />
      Initialize random generator in lxc controller (Jim Fehlig),<br />
      storage: Set the perms if the pool target already exists for fs pools (Osier Yang),<br />
      snapshot: require existence before returning success (Eric Blake),<br />
      drivers: Implement virListAllDomains for drivers using virDomainObj (Peter Krempa),<br />
      Fix default USB controller for ppc64 (Dipankar Sarma),<br />
      list: add qemu snapshot list support (Eric Blake),<br />
      list: new helper function to collect snapshots (Eric Blake),<br />
      list: provide RPC call for snapshots (Eric Blake),<br />
      list: provide python bindings for snapshots (Eric Blake),<br />
      list: use the new snapshot API in virsh when possible (Eric Blake),<br />
      snapshot: expose new flags in virsh (Eric Blake),<br />
      snapshot: add additional filters when getting lists (Eric Blake),<br />
      virsh: make domiftune interface help string consistent (Martin Kletzander),<br />
      snapshot: merge count and name collection (Eric Blake),<br />
      snapshot: merge domain and snapshot computation (Eric Blake),<br />
      snapshot: use metaroot node to simplify management (Eric Blake),<br />
      conf: Add helper for listing domains on drivers supporting virDomainObj (Peter Krempa),<br />
      conf: Store managed save image existence in virDomainObj (Peter Krempa),<br />
      remote: implement remote protocol for virConnectListAllDomains() (Peter Krempa),<br />
      python: add API exports for virConnectListAllDomains() (Peter Krempa),<br />
      lib: Add public api to enable atomic listing of guest (Peter Krempa),<br />
      Add a custom 404 error page for the website (Daniel P. Berrange),<br />
      qemu_agent: Add some more debug prints (Michal Privoznik),<br />
      snapshot: use new virsh function for snapshot-list (Eric Blake),<br />
      snapshot: new virsh function factored from snapshot-list (Eric Blake),<br />
      autogen: Always abide --system (Cole Robinson),<br />
      Check for errors when parsing bridge interface XML (Jim Fehlig),<br />
      Add more debug logging for libvirtd startup (Daniel P. Berrange),<br />
      schema: Update domain XML schema (Osier Yang),<br />
      virsh: allow the user to specify vmcore's format (Wen Congyang),<br />
      qemu: allow the client to choose the vmcore's format (Wen Congyang),<br />
      qemu: implement qemu's dump-guest-memory (Wen Congyang),<br />
      Always pivot_root event if the new root source is '/' (Daniel P. Berrange),<br />
      Improve error message diagnosing incorrect XML CPU mode (Daniel P. Berrange),<br />
      qemu: Enable disconnecting SPICE clients without changing password (Peter Krempa),<br />
      virsh: Report name from edited object (Michal Privoznik),<br />
      virsh: Honor reedit opts printing to a function (Michal Privoznik),<br />
      network: fully support/use VIR_NETWORK_XML_INACTIVE flag (Laine Stump),<br />
      Add some missing hook functions (Daniel P. Berrange),<br />
      server rpc: Remove APIs for manipulating filters on locked client (Jiri Denemark),<br />
      rpc: Remove unused parameter in virKeepAliveStopInternal (Jiri Denemark),<br />
      rpc: Do not use timer for sending keepalive responses (Jiri Denemark),<br />
      client rpc: Separate call creation from running IO loop (Jiri Denemark),<br />
      rpc: Add APIs for direct triggering of keepalive timer (Jiri Denemark),<br />
      rpc: Refactor keepalive timer code (Jiri Denemark),<br />
      client rpc: Drop unused return value of virNetClientSendNonBlock (Jiri Denemark),<br />
      client rpc: Just queue non-blocking call if another thread has the buck (Jiri Denemark),<br />
      client rpc: Don't drop non-blocking calls (Jiri Denemark),<br />
      client rpc: Use event loop for writing (Jiri Denemark),<br />
      build: fix 'make dist' on virgin checkout (Eric Blake),<br />
      build: silence gettext warning (Eric Blake),<br />
      openvz: wire up domainUpdateDeviceFlags (Guido Günther),<br />
      openvz: add persist parameter to openvzSetDiskQuota (Guido Günther),<br />
      Introduce virDomainFSIndexByName (Guido Günther),<br />
      python: use simpler methods (Eric Blake),<br />
      qemuProcessStop: Switch to flags (Michal Privoznik),<br />
      snapshot: implement new APIs for qemu (Eric Blake),<br />
      snapshot: RPC for new query APIs (Eric Blake),<br />
      snapshot: add 'virsh snapshot-info' (Eric Blake),<br />
      Two RPM conditional fixes for RHEL-7 (Daniel P. Berrange),<br />
      snapshot: virsh indentation cleanup (Eric Blake),<br />
      virsh: make tree listing more flexible (Eric Blake),<br />
      virsh: remove limits on tree listing (Eric Blake),<br />
      buf: support peeking at string contents (Eric Blake),<br />
      Update AUTHORS (Osier Yang),<br />
      LXC: Delete unused variable src in lxcContainerMountBasicFS (Gao feng),<br />
      msg_buf_size is unsigned long not size_t (Guido Günther),<br />
      Only check for cluster fs if we're using a filesystem (Guido Günther),<br />
      snapshot: add virDomainSnapshotRef API (Eric Blake),<br />
      Fix missing ) in 2 strings (Cole Robinson),<br />
      maint: make it easier to copy FORTIFY_SOURCE snippet (Eric Blake),<br />
      build: fix build without i18n (Eric Blake),<br />
      spec: Build against systemd for udev (Cole Robinson),<br />
      build: fix build of fresh checkout (Eric Blake),<br />
      build: ensure storage driver is used (Eric Blake),<br />
      rpc: Size up RPC limits (Michal Privoznik),<br />
      rpc: Switch to dynamically allocated message buffer (Michal Privoznik),<br />
      build: fix 'make distcheck' issues (Eric Blake),<br />
      tests: Refresh qemu-1.1.0 data (Jiri Denemark),<br />
      virsh: Back out if the argument for vol-create-as is malformed (Osier Yang),<br />
      virsh: Accept UUID as an argument for net-info and net-start (Osier Yang),<br />
      virsh: Accept UUID as an argument for storage commands (Osier Yang),<br />
      Fix for parallel port passthrough for QEMU (Beat Jörg),<br />
      util: fix "make rpm" when viratomic.h is used (Laine Stump),<br />
      build: allow building with newer glibc-headers and -O0 (Eric Blake),<br />
      fix make syntax-check failed (Wen Congyang),<br />
      build: fix sc_prohibit_readlink (Eric Blake),<br />
      file: Log closing filedescriptors (Jiri Denemark),<br />
      command: Fix debug message during handshake (Jiri Denemark),<br />
      virsh: Switch from generated cmd*Edit commands to nongenerated (Michal Privoznik),<br />
      nwfilter: Add multiple IP address support to DHCP snooping (Stefan Berger),<br />
      nwfilter: move code for IP address map into separate file (Stefan Berger),<br />
      qemu: move -name arg to be 1st in "ps x" output (Marti Raudsepp),<br />
      qemu: fix netdev alias name assignment wrt type='hostdev' (Laine Stump),<br />
      tools: make virt-pki-validate work with acls and xattrs (Martin Kletzander),<br />
      build: include augeas-gentest.pl into dist file (Wen Congyang),<br />
      build: use same perl binary throughout build (Eric Blake),<br />
      build: fix testing of augeas files in VPATH builds (Eric Blake),<br />
      build: silence warning from autoconf (Eric Blake),<br />
      virCommand: Extend debug message for handshake (Michal Privoznik),<br />
      build: Fixed generating of libvirt_qemu_probes.h (Martin Kletzander),<br />
      build: don't lose probes.o files (Eric Blake),<br />
      build: fix missing dependencies for libvirt-qemu.so (Eric Blake),<br />
      build: don't clean a file that belongs in the tarball (Eric Blake),<br />
      virsh: avoid strncpy (Eric Blake),<br />
      build: update to latest gnulib (Eric Blake),<br />
      Introduce virMacAddr typedef (Stefan Berger),<br />
      Santize the reporting of VIR_ERR_INVALID_ERROR (Daniel P. Berrange),<br />
      build: silence libtool during tests (Eric Blake),<br />
      Fix linking to DTrace probes file (Daniel P. Berrange),<br />
      Autogenerate augeas test case from default config files (Daniel P. Berrange),<br />
      Re-order config options in qemu driver augeas lens (Daniel P. Berrange),<br />
      Fix mistakes in augeas lens (Daniel P. Berrange),<br />
      Standardize whitespace used in example config files (Daniel P. Berrange),<br />
      Remove uid param from directory lookup APIs (Daniel P. Berrange),<br />
      Fix check for socket existence / daemon spawn (Daniel P. Berrange),<br />
      Remove last usage of PATH_MAX and ban its future use (Daniel P. Berrange),<br />
      maint: avoid new automake warning about AM_PROG_CC_STDC (Jim Meyering),<br />
      build: silence libtool warning on probes.o (Eric Blake),<br />
      tests: run valgrind on real executables, not libtool wrappers (Eric Blake),<br />
      qemu augeas: Add spice_tls/spice_tls_x509_cert_dir (Douglas Schilling Landgraf),<br />
      tests: back to short test names (Eric Blake),<br />
      maint: ignore more files from version control (Eric Blake),<br />
      Add sentinel for virErrorDomain enum (Daniel P. Berrange),<br />
      Add parsing for VIR_ENUM_IMPL &amp; VIR_ENUM_DECL in apibuild.py (Daniel P. Berrange),<br />
      security: Switch to C99-style struct initialization (Michal Privoznik),<br />
      Add test case for loading driver modules (Daniel P. Berrange),<br />
      Override default driver dir when running from GIT (Daniel P. Berrange),<br />
      Split QEMU dtrace probes into separate file (Daniel P. Berrange),<br />
      Replace RTLD_LOCAL with RTLD_GLOBAL (Daniel P. Berrange),<br />
      Ensure LXC driver links against libblkid explicitly. (Daniel P. Berrange),<br />
      Remove libvirt_test.la library (Daniel P. Berrange),<br />
      Fix broken linkage of libvirt_driver_nodedev.la (Daniel P. Berrange),<br />
      Only build server side drivers as modules (Daniel P. Berrange),<br />
      Fix dep from libvirt-lock-sanlock RPM (Daniel P. Berrange),<br />
      openvz: add quota argument when creating container (Guido Günther),<br />
      openvz: support file system quota reporting (Guido Günther),<br />
      Introduce filesystem limits to virDomainFSDef (Guido Günther),<br />
      Introduce virDomainParseScaledValue (Guido Günther),<br />
      util: export virBufferTrim (Laine Stump),<br />
      virBuffer: add way to trim back extra text (Eric Blake),<br />
      build: fix unused variable after last patch (Eric Blake),<br />
      nwfilter: Add support for ipset (Stefan Berger),<br />
      Adds support to param 'vcpu_time' in qemu_driver. (Hu Tao),<br />
      Add a new param 'vcpu_time' to virDomainGetCPUStats (Hu Tao),<br />
      tests: add ich6 codec type test to qemuxml2argv-sound-device (Marc-André Lureau),<br />
      qemu: honour sound &lt;codec&gt; sub-elements (Marc-André Lureau),<br />
      domain: add &lt;codec&gt; sound sub-element (Marc-André Lureau),<br />
      qemu: test CAPS_HDA_MICRO (Marc-André Lureau),<br />
      nodeinfo: test more details (Eric Blake),<br />
      Add a virLogMessage alternative taking va_list args (Daniel P. Berrange),<br />
      build: fix recent syntax-check breakage (Eric Blake),<br />
      qemu: Rollback on used USB devices (Michal Privoznik),<br />
      Reject any non-option command line arguments (Daniel P. Berrange),<br />
      Remount cgroups controllers after setting up new /sys in LXC (Daniel P. Berrange),<br />
      Trim /proc &amp; /sys subtrees before mounting new instances (Daniel P. Berrange),<br />
      Avoid LXC pivot root in the root source is still / (Daniel P. Berrange),<br />
      Mount fresh instance of sysfs/selinux in LXC (Daniel P. Berrange),<br />
      Convert the LXC driver to use the security driver API for mount options (Daniel Walsh),<br />
      Add security driver APIs for getting mount options (Daniel Walsh),<br />
      Add support for LXC specific SELinux configuration (Daniel Walsh),<br />
      Use private data struct in SELinux driver (Daniel Walsh),<br />
      Don't enable the AppArmour security driver with LXC (Daniel Walsh),<br />
      Pass the virt driver name into security drivers (Daniel Walsh),<br />
      Remove bogus udev.target dep from libvirtd unit (Daniel P. Berrange),<br />
      qemu: Add support for -no-user-config (Jiri Denemark),<br />
      Set a sensible default master start port for ehci companion controllers (Daniel P. Berrange),<br />
      Fix logic for assigning PCI addresses to USB2 companion controllers (Daniel P. Berrange),<br />
      Fix virDomainDeviceInfoIsSet() to check all struct fields (Daniel P. Berrange),<br />
      Remove redundant trailing slash in user dir paths (Daniel P. Berrange),<br />
      Allow stack traces to be included with log messages (Daniel P. Berrange),<br />
      Move user libvirtd socket out of abstract namespace (Daniel P. Berrange),<br />
      Add openvz_util.c to POTFILES (Daniel P. Berrange),<br />
      Add bundled(gnulib) to RPM specfile (Daniel P. Berrange),<br />
      openvz: determine kb/pages only once (Guido Günther),<br />
      libvirt-guests: Remove LISTFILE if it's empty when stopping service (Osier Yang),<br />
      qemu: Set memory policy using cgroup if placement is auto (Osier Yang),<br />
      qemu: Use the CPU index in capabilities to map NUMA node to cpu list. (Osier Yang),<br />
      Assign spapr-vio bus address to ibmvscsi controller (Li Zhang),<br />
      sanlock: fix locking for readonly devices (David Weber),<br />
      nodeinfo: add some more tests (Eric Blake),<br />
      nodeinfo: drop static variable (Eric Blake),<br />
      maint: fix AUTHORS (Eric Blake),<br />
      Use XDG Base Directories instead of storing in home directory (William Jon McCann)<br />
      </li><li> Cleanups:<br />
      Remove accidentally added Patch: lines from mingw-libvirt.spec.in (Daniel P. Berrange),<br />
      Add /tools/libvirt-guests.service to .gitignore (Guido Günther),<br />
      sanlock: Properly indent (Michal Privoznik),<br />
      Remove stray debug fprintf in XML parser (Daniel P. Berrange),<br />
      util: Fix the indention (Osier Yang),<br />
      LXC: avoid useless duplicate memory free (Gao feng),<br />
      driver: Clean up driver header to space indentation (Peter Krempa),<br />
      build: fix whitespace damage (Eric Blake),<br />
      build: hoist qemu dependence on yajl to configure (Eric Blake),<br />
      maint: command.c whitespace cleanups (Eric Blake),<br />
      Revert "rpc: Discard non-blocking calls only when necessary" (Jiri Denemark<br />
      </li></ul>
        <h3>0.9.12: May 14 2012</h3>
        <ul><li> Features:<br />
      qemu: allow snapshotting of sheepdog and rbd disks (Josh Durgin),<br />
      blockjob: add new APIs (Eric Blake)<br />
      </li><li> Documentation:<br />
      mention migration issue of which credentials are used (Eric Blake),<br />
      Add 'maintenance releases' link in 'News' sidebar (Cole Robinson),<br />
      Added Snooze cloud manager to the IaaS section (Eugen Feller),<br />
      python: Fix doc directory name for stable releases (Cole Robinson),<br />
      virsh: Fix and clarify the --title flag for the list command in man page (Peter Krempa),<br />
      Improve the schema for fs device (Osier Yang),<br />
      openvz: Correct the comments for new node APIs (Osier Yang),<br />
      fix 'omitted' typo in &lt;cputune&gt; doc (Christophe Fergeau),<br />
      add missing &lt;span&gt; in &lt;vcpu placement&gt; doc (Christophe Fergeau),<br />
      fix path to openvz network configuration file (Guido Günther),<br />
      Fix comment about GNUTLS initialization/cleanup (Daniel P. Berrange),<br />
      fix typo in previous patch (Eric Blake),<br />
      news.html.in: Fix &lt;br&gt; void tag (Michal Privoznik)<br />
      </li><li> Portability:<br />
      qemu: fix build when !HAVE_NUMACTL (Eric Blake),<br />
      netlink: Fix build with libnl-3 (Jiri Denemark),<br />
      build: avoid link failure on Windows (Eric Blake),<br />
      qemu: avoid 32-bit compiler warning (Eric Blake),<br />
      build: fix build on cygwin (Eric Blake),<br />
      storage: fix build with iscsi (Eric Blake),<br />
      build: fix bootstrap on RHEL (Eric Blake),<br />
      win32: Properly handle TlsGetValue returning NULL (Matthias Bolte),<br />
      build: avoid type-punning in vbox (Eric Blake),<br />
      build: fix fresh checkout on RHEL5 (Eric Blake),<br />
      fix dependencies on DBus (Daniel P. Berrange),<br />
      tests: Fix libvirtdconftest in VPATH build (Jiri Denemark),<br />
      build: avoid s390 compiler warnings (Eric Blake),<br />
      Fix compilation error on 32bit (Stefan Berger),<br />
      test: fix build errors with gcc 4.7.0 and -O0 (Laine Stump),<br />
      Pull in GNULIB regex module for benefit of test suite on Win32 (Daniel P. Berrange),<br />
      Fix format specifiers in test cases on Win32 (Daniel P. Berrange)<br />
      </li><li> Bug Fixes:<br />
      esx: Fix memory leaks in error paths related to transferred ownership (Matthias Bolte),<br />
      qemu: Don't skip detection of virtual cpu's on non KVM targets (Peter Krempa),<br />
      qemu: Re-detect virtual cpu threads after cpu hot (un)plug. (Peter Krempa),<br />
      build: fix stamp file name (Eric Blake),<br />
      usb: fix crash when failing to attach a second usb device (Guannan Ren),<br />
      build: Fix the typo in configure.ac (Osier Yang),<br />
      conf: Fix memory leaks in virStoragePoolDefParseSource (Alex Jia),<br />
      Report error when parsing character device target type (Jim Fehlig),<br />
      snapshot: allow block devices past cgroup (Eric Blake),<br />
      domain_conf: add "default" to list of valid spice channels (Alon Levy),<br />
      domain_conf: add "usbredir" to list of valid spice channels (Alon Levy),<br />
      virsh: avoid heap corruption leading to virsh abort (Jim Meyering),<br />
      util: fix libvirtd startup failure due to netlink error (Laine Stump),<br />
      qemu: call usb search function for hostdev initialization and hotplug (Guannan Ren),<br />
      qemu: Emit compatible XML when migrating a domain (Jiri Denemark),<br />
      qemu: don't modify domain on failed blockiotune (Eric Blake),<br />
      node_device: fix possible non-terminated string (Stefan Berger),<br />
      uuid: fix possible non-terminated string (Stefan Berger),<br />
      tests: fix resource leak (Stefan Berger),<br />
      qemu: fix resource leak (Stefan Berger),<br />
      vmx: fix resource leak (Stefan Berger),<br />
      Coverity: Fix resource leak in virnetlink.c (Osier Yang),<br />
      Coverity: Fix resource leak in nodeinfo.c (Osier Yang),<br />
      Coverity: Fix resource leak in test driver (Osier Yang),<br />
      Coverity: Fix resource leak in xen driver (Osier Yang),<br />
      Coverity: Fix resource leaks in phyp driver (Osier Yang),<br />
      Coverity: Fix the forward_null error in Python binding codes (Osier Yang),<br />
      Correct indent errors in the function qemuDomainNetsRestart (Li Zhang),<br />
      Make lxcContainerSetStdio the last thing to be called in container startup (Daniel P. Berrange),<br />
      maint: avoid false positives on unmarked diagnostics (Eric Blake),<br />
      util: Avoid libvirtd crash in virNetDevTapCreate (Alex Jia),<br />
      storage: Break out the loop if duplicate pool is found (Osier Yang),<br />
      qemu: Make sure qemu can access its directory in hugetlbfs (Jiri Denemark),<br />
      More coverity findings addressed (Stefan Berger),<br />
      blockjob: fix block-stream bandwidth race (Eric Blake),<br />
      lxc: Fix coverity findings (Stefan Berger),<br />
      Serialize running apibuild.py (Cole Robinson),<br />
      macvtap: fix a typo (Stefan Berger),<br />
      nwfilter: address more coverity findings (Stefan Berger),<br />
      nwfilter: address coverity findings (Stefan Berger),<br />
      util: fix error messages in virNetlinkEventServiceStart (Laine Stump),<br />
      qemu: Avoid bogus error at the end of tunnelled migration (Jiri Denemark),<br />
      qemu: Fix detection of failed migration (Jiri Denemark),<br />
      rpc: Discard non-blocking calls only when necessary (Jiri Denemark),<br />
      qemu: Preserve original error during migration (Jiri Denemark),<br />
      util: fix crash when starting macvtap interfaces (Laine Stump),<br />
      fix memleak in linuxParseCPUmap (Hu Tao),<br />
      vbox: Fix passing an empty IMedium* array to IMachine::Delete (Matthias Bolte),<br />
      esx: Fix segfault in esxConnectToHost (Ryan Woodsmall),<br />
      virnetserver: handle sigaction correctly (Eric Blake),<br />
      virsh: avoid uninitialized memory usage (Eric Blake),<br />
      nwfilter: Fix support for trusted DHCP servers (Stefan Berger),<br />
      Fix a memory leak (Stefan Berger),<br />
      Do not enforce source type of console[0] (Jan Kiszka),<br />
      storage: lvm: use correct lv* command parameters (Cole Robinson),<br />
      Fix macvtap detection by also checking for IFLA_VF_MAX (Guido Günther),<br />
      conf: Avoid double assignment in virDomainDiskRemove (Michal Privoznik),<br />
      qemu: Fix mem leak in qemuProcessInitCpuAffinity (Michal Privoznik),<br />
      qemu,util: fix netlink callback registration for migration (D. Herrendoerfer),<br />
      qemuOpenFile: Don't force chown on NFS (Michal Privoznik),<br />
      daemon: Plug memory leaks (Alex Jia),<br />
      blockjob: allow for fast-finishing job (Eric Blake),<br />
      qemu: Fix deadlock when qemuDomainOpenConsole cleans up a connection (Peter Krempa),<br />
      snapshot: fix memory leak on error (Eric Blake),<br />
      qemu_ga: Don't overwrite errors on FSThaw (Michal Privoznik),<br />
      xen config: No vfb in HVM guest configuration (Stefan Bader),<br />
      virURIParse: don't forget to copy the user part (Guido Günther),<br />
      test: fix segfault in networkxml2argvtest (Laine Stump),<br />
      conf: Plug memory leaks on virDomainDiskDefParseXML (Alex Jia),<br />
      Fix parallel build in docs/ directory (Daniel P. Berrange),<br />
      qemu: Don't leak temporary list of USB devices (Michal Privoznik)<br />
      </li><li> Improvements:<br />
      qemu: Refactor qemuDomainSetVcpusFlags (Peter Krempa),<br />
      numad: Update comments in libvirt.spec.in (Osier Yang),<br />
      numad: Check numactl-devel if compiled with numad support (Osier Yang),<br />
      numad: Divide cur_balloon by 1024 before passing it to numad (Osier Yang),<br />
      numad: Always output 'placement' of &lt;vcpu&gt; (Osier Yang),<br />
      numad: Copy 'placement' of &lt;numatune&gt; to &lt;vcpu&gt; by default (Osier Yang),<br />
      numad: Set memory policy from numad advisory nodeset (Osier Yang),<br />
      tests: add some self-documentation to tests (Alon Levy),<br />
      util: set src_pid for virNetlinkCommand when appropriate (Laine Stump),<br />
      util: function to get local nl_pid used by netlink event socket (Laine Stump),<br />
      util: allow specifying both src and dst pid in virNetlinkCommand (Laine Stump),<br />
      openvz: simplify openvzDomainDefineCmd by using virCommandPtr (Guido Günther),<br />
      usb: create functions to search usb device accurately (Guannan Ren),<br />
      rpm: Handle different source URLs for maint releases (Cole Robinson),<br />
      qemu: Don't use virDomainDefFormat* directly (Jiri Denemark),<br />
      qemu: reject blockiotune if qemu too old (Eric Blake),<br />
      util: remove error log from stubs of virNetlinkEventServiceStart|Stop (Laine Stump),<br />
      openvz: read vmguarpages/privvmpages to set memory tunables (Guido Günther),<br />
      build: support libnl-3 (Serge Hallyn),<br />
      util: add functions for iterating over json object (Dmitry Guryanov),<br />
      build: update pid_t type static check (Marc-André Lureau),<br />
      build: fix output of pid values (Marc-André Lureau),<br />
      virsh: output scaled values with correct units (Eric Blake),<br />
      virsh: make -h always give help (Eric Blake),<br />
      build: make ATTRIBUTE_NONNULL() a NOP unless STATIC_ANALYSIS is on (Laine Stump),<br />
      Ensure logging is initialized early in libvirt_lxc (Daniel P. Berrange),<br />
      Ensure LXC security driver is set unconditonally (Daniel P. Berrange),<br />
      Ensure libvirt_lxc process loads the live XML config (Daniel P. Berrange),<br />
      qemu: change rbd auth_supported separation character to ; (Josh Durgin),<br />
      storage: Allow multiple hosts for a storage pool (Wido den Hollander),<br />
      qemu_agent: Report error class at least (Michal Privoznik),<br />
      configure: Use ustar format for dist tarball (Cole Robinson),<br />
      qemu: Use common helper when probing qemu capabilities (Jiri Denemark),<br />
      qemu: improve errors related to offline domains (Eric Blake),<br />
      keepalive: Add ability to disable keepalive messages (Peter Krempa),<br />
      Add new functions to virSocketAddr (Stefan Berger),<br />
      macvtap: use embedded buffers (Stefan Berger),<br />
      Improve on virAtomic implementation (Stefan Berger),<br />
      build: Fix version of gettext macros (Peter Krempa),<br />
      openvz: add network interface stats (Guido Günther),<br />
      blockjob: enhance xml to track mirrors across libvirtd restart (Eric Blake),<br />
      blockjob: add 'blockcopy' to virsh (Eric Blake),<br />
      cpu: Improve error reporting on incompatible CPUs (Peter Krempa),<br />
      openvz: wire up getHostname (Guido Günther),<br />
      build: avoid strtol and strtod (Eric Blake),<br />
      conf: tighten up XML integer parsing (Eric Blake),<br />
      virsh: avoid strtol (Eric Blake),<br />
      Support for atomic operations on integers (Stefan Berger),<br />
      Implement virHashRemoveAll function (Stefan Berger),<br />
      util: only register callbacks for CREATE operations in virnetdevmacvlan.c (D. Herrendoerfer),<br />
      blockjob: add virsh blockpull --wait (Eric Blake),<br />
      qemu: use consistent error when qemu binary is too old (Eric Blake),<br />
      vbox: avoid provoking assertions in VBoxSVC (Jean-Baptiste Rouault),<br />
      conf: Do not parse cpuset only if the placement is auto (Osier Yang),<br />
      tests: Update read-bufsiz to delete the UUID of vm XML (Osier Yang),<br />
      test: Set the fixed uuid for the default XMLs (Osier Yang),<br />
      qemu: Split ide-drive into ide-cd and ide-hd (Osier Yang),<br />
      qemu: Split scsi-disk into into scsi-hd and scsi-cd (Osier Yang),<br />
      xen: do not use ioemu type for any emulated NIC (Stefan Bader),<br />
      qemuProcessStart: Switch to flags instead of bunch booleans (Michal Privoznik),<br />
      qemu: Avoid the memory allocation and freeing (Osier Yang),<br />
      numad: Ignore cpuset if placement is auto (Osier Yang),<br />
      numad: Convert node list to cpumap before setting affinity (Osier Yang),<br />
      openvz: wire up more node information functions (Guido Günther),<br />
      virnetdev: Check for defined IFLA_VF_* (Philipp Hahn),<br />
      Web placeholder for pending patches on the web site (Daniel Veillard),<br />
      xend_internal: Use domain/status for shutdown check (Stefan Bader),<br />
      blockjob: wire up qemu async virDomainBlockJobAbort (Eric Blake),<br />
      blockjob: optimize JSON event handler lookup (Eric Blake),<br />
      blockjob: add API for async virDomainBlockJobAbort (Adam Litke),<br />
      blockjob: add qemu capabilities related to block pull jobs (Eric Blake),<br />
      qemu: Warn on possibly incorrect usage of EnterMonitor* (Jiri Denemark),<br />
      qemu: Track job owner for better debugging (Jiri Denemark),<br />
      qemu: Avoid excessive calls to qemuDomainObjSaveJob() (Jiri Denemark),<br />
      daemon: Add libvirtd-config.c to the list of files to translate (Jiri Denemark),<br />
      Wire up &lt;loader&gt; to set the QEMU BIOS path (Daniel P. Berrange),<br />
      virsh: Clean up usage of boolean flag variables (Peter Krempa),<br />
      virsh: Clarify use of the --managed-save flag for the list command (Peter Krempa),<br />
      Replace daemon-conf test script with a proper test case (Daniel P. Berrange),<br />
      Switch libvirtd config loading code to use error APIs (Daniel P. Berrange),<br />
      Add API for loading daemon config from in-memory blob (Daniel P. Berrange),<br />
      Split libvirtd config file loading out into separate files (Daniel P. Berrange),<br />
      UML: fix iteration over consoles (MATSUDA, Daiki),<br />
      tests: avoid compiler warnings (Eric Blake),<br />
      openvz: support vzctl 3.1 (Ilja Livenson),<br />
      Don't install sysctl file on non-Linux hosts (Daniel P. Berrange),<br />
      Add linuxNodeInfoCPUPopulate to src/libvirt_linux.syms (Daniel P. Berrange),<br />
      qemu: Build activeUsbHostdevs list on process reconnect (Michal Privoznik),<br />
      qemu: Delete USB devices used by domain on stop (Michal Privoznik),<br />
      Fix initial hypervisor conditionals (Daniel P. Berrange),<br />
      Remove bogus xen-devel dep from libvirt-devel RPM (Daniel P. Berrange),<br />
      Introduce per-hypervisor virtual RPMs (Daniel P. Berrange),<br />
      Split config files &amp; daemon off from main daemon RPM (Daniel P. Berrange),<br />
      Remove API XML files from libvirt RPM (Daniel P. Berrange),<br />
      Move all documentation into a -docs sub-RPM (Daniel P. Berrange),<br />
      virsh: Clarify escape sequence (Michal Privoznik)<br />
      </li><li> Cleanups:<br />
      building: remove libvirt_dbus.syms from EXTRA_DIST (Wen Congyang),<br />
      conf: remove redundant () (Eric Blake),<br />
      util: remove dead casts (Eric Blake),<br />
      virsh: minor syntactic cleanups (Eric Blake),<br />
      gitignore: Reorder alphabetically (Michal Privoznik)<br />
      </li></ul>
        <h3>0.9.11: Apr 3 2012</h3>
        <ul><li> Features:<br />
      Add support for the suspend event (Osier Yang),<br />
      Add support for event tray moved of removable disks (Osier Yang),<br />
      qemu: Support numad (Osier Yang),<br />
      cpustats: API, improvements and qemu support (KAMEZAWA Hiroyuki and Eric Blake),<br />
      qemu: support type='hostdev' network devices at domain start (Laine Stump),<br />
      Introduce virDomainPMWakeup API (Michal Privoznik),<br />
      network: support Open vSwitch (Ansis Atteka),<br />
      a number of snapshot improvements (Eric Blake)<br />
      </li><li> Portability:<br />
      build: fix build on cygwin (Eric Blake),<br />
      build: fix mingw ssize_t, syntax check (Eric Blake),<br />
      Disable build of commandhelper &amp; ssh on Win32 (Daniel P. Berrange),<br />
      build: avoid 'devname' for BSD (Eric Blake),<br />
      build: avoid frame size error when building without -O2 (Laine Stump),<br />
      spec: Add missed dependancy for numad (Osier Yang),<br />
      util: fix build mingw (and all non-linux) build failure (Laine Stump),<br />
      Build error on OSX in src/util/virnetlink.c (Duncan Rance),<br />
      Fix build after commit e3ba4025 (Jim Fehlig),<br />
      build: Fix build with dtrace + apparmor (Jiri Denemark),<br />
      build: fix output of pid values (Eric Blake),<br />
      avoid global variable shadowed (Hu Tao),<br />
      lxc: Cleaner fix for compilation without SELinux (Martin Kletzander),<br />
      Fix compilation on MacOS X (Lincoln Myers)<br />
      </li><li> Documentation:<br />
      snapshot: fix virsh docs (Eric Blake),<br />
      Expand docs for timer tick policy (Daniel P. Berrange),<br />
      Add documentation for new attribute tray of disk target (Osier Yang),<br />
      Clarify virsh freecell manpage entry (Dave Allan),<br />
      fix typo (Zhou Peng),<br />
      Clarify what documentation is being referenced (Dave Allan),<br />
      Minor docs fix (Martin Kletzander),<br />
      libvirt: fix comment typo (Alex Jia),<br />
      fix usage example on setting log levels (Eric Blake),<br />
      use correct terminology for 1024 bytes (Eric Blake),<br />
      Fix typo (Osier Yang),<br />
      Fix typo in domain XML documentation (Christophe Fergeau),<br />
      storage: fix typo (Michal Privoznik),<br />
      comments wiping supported algorithms (Alex Jia),<br />
      Fix libvirt name in qemu commandline namespace URL (Michal Privoznik),<br />
      virsh: Break long lines in virsh.pod (Osier Yang),<br />
      Update bug reporting page (Dave Allan),<br />
      lib: Fix function documentation for virConnectListDomains (Peter Krempa),<br />
      virsh: Fix docs for list command (Peter Krempa)<br />
      </li><li> Bug fixes:<br />
      qemu: Start nested job in qemuDomainCheckEjectableMedia (Jiri Denemark),<br />
      qemu: fix memory leak in virDomainGetVcpus (Laine Stump),<br />
      conf: allow fuzz in XML with cur balloon &gt; max (Eric Blake),<br />
      qemu: reflect any memory rounding back to xml (Eric Blake),<br />
      qemu: support live change of the bridge used by a guest network device (Hendrik Schwartke),<br />
      qemu_agent: Issue guest-sync prior to every command (Michal Privoznik),<br />
      conf: Prevent crash of libvirtd without channel target name (Alex Jia),<br />
      fix a deadlock when qemu cannot start (Wen Congyang),<br />
      qemu: Make migration fail when port profile association fails on the dst host (Christian Benvenuti),<br />
      virsh: plug memory leaks on failure path (Alex Jia),<br />
      snapshot: don't pass NULL to QMP command creation (Eric Blake),<br />
      qemu: Avoid entering monitor with locked driver (Jiri Denemark),<br />
      Leave all child processes running when stopping systemd service (Daniel P. Berrange),<br />
      python: Avoid memory leaks on libvirt_virNodeGetCPUStats (Alex Jia),<br />
      qemu: Avoid dangling migration-out job when client dies (Jiri Denemark),<br />
      qemu: Avoid dangling migration-in job on shutoff domains (Jiri Denemark),<br />
      qemu: Use unlimited speed when migrating to file (Jiri Denemark),<br />
      python: Avoid memory leaks on libvirt_virNodeGetMemoryStats (Alex Jia),<br />
      conf: forbid use of multicast mac addresses (Laine Stump),<br />
      conf: return immediately on error in dhcp host element (Laine Stump),<br />
      util: fail attempts to use same mac address for guest and tap (Laine Stump),<br />
      snapshot: make quiesce a bit safer (Eric Blake),<br />
      virConfGetValue: Fixed NULL pointer check (Martin Kletzander),<br />
      Fix handling of blkio deviceWeight empty string (Daniel P. Berrange),<br />
      remote: Fix migration leaks (Osier Yang),<br />
      lib: Don't access configuration if none is present (Peter Krempa),<br />
      qemuDomainDetachPciDiskDevice: Free allocated cgroup (Michal Privoznik),<br />
      virsh: fix invalid free (Alex Jia),<br />
      qemu: Reverse condition in qemuDomainCheckDiskPresence (Michal Privoznik),<br />
      qemu: fix segfault when detaching non-existent network device (Guannan Ren),<br />
      qemu: Fix (managed)save and snapshots with host mode CPU (Jiri Denemark),<br />
      qemu: support disk filenames with comma (Eric Blake),<br />
      Fix a few typo in translated strings (Daniel Veillard),<br />
      qemuBuildCommandLine: Don't add tlsPort if none set (Michal Privoznik),<br />
      qemu: eliminate memory leak in qemuDomainUpdateDeviceConfig (Laine Stump),<br />
      util: eliminate device object leaks related to virDomain*Remove*() (Laine Stump),<br />
      qemu: don't 'remove' hostdev objects from domain if operation fails (Laine Stump),<br />
      util: Don't overflow on errno in virFileAccessibleAs (Michal Privoznik),<br />
      sanlock: Use STREQ_NULLABLE instead of STREQ on strings that may be null (Peter Krempa),<br />
      qemu: Fix startupPolicy for snapshot-revert (Michal Privoznik),<br />
      rpc: allow truncated return for virDomainGetCPUStats (Eric Blake),<br />
      conf: fix error log with "address address" (Laine Stump),<br />
      Ensure max_id is initialized in linuxParseCPUmap() (Daniel P. Berrange),<br />
      util: eliminate crash in virNetDevMacVLanCreateWithVPortProfile (Laine Stump),<br />
      rpc: Fix client crash on connection close (Jiri Denemark),<br />
      Correct a check for capacity arg of storageVolumeResize() (Zeeshan Ali (Khattak)),<br />
      qemu: Don't emit tls-port spice option if port is -1 (Jiri Denemark),<br />
      libxl: eliminate memory leak in libxmlDomainModifyDeviceFlags (Laine Stump),<br />
      qemu: fix cleanup of bridge during failure of qemuDomainAttachNetDevice (Laine Stump),<br />
      qemu: unescape HMP commands before converting them to json (Josh Durgin),<br />
      virsh: fix informational message in iface-bridge command (Laine Stump),<br />
      virterror: Misleading error message when name is missing (Benjamin Cama),<br />
      util: Fix virFileAccessibleAs return path from parent (Michal Privoznik),<br />
      qemu: Prevent crash of libvirtd without guest agent (Alex Jia),<br />
      qemu: Unlock monitor when connecting to dest qemu fails (Jiri Denemark),<br />
      qemu: Fix segfault when host CPU is empty (Jiri Denemark),<br />
      Fix polkit0 authentication (Jim Fehlig),<br />
      snapshot: fix snapshot deletion use-after-free (Eric Blake),<br />
      daemon: fix logic bug with virAsprintf (Eric Blake),<br />
      daemon: plug memory leak (Eric Blake),<br />
      Fix typos in API XML file paths (Daniel P. Berrange)<br />
      </li><li> Improvements:<br />
      Xen: Fix &lt;clock&gt; handling (Philipp Hahn),<br />
      Support clock=variable relative to localtime (Philipp Hahn),<br />
      python: improve conversion validation (Eric Blake),<br />
      Fix client only RPM build &amp; other misc RPM problems (Daniel P. Berrange),<br />
      Refactor the libvirt RPM daemon pieces (Daniel P. Berrange),<br />
      virnetdevtap: Don't check for flags in virNetDevTapCreateFlags (Michal Privoznik),<br />
      Consistent style for usage of sizeof operator (Daniel P. Berrange),<br />
      Don't redefine the CPU comparison constants in CPU test (Daniel P. Berrange),<br />
      Fix some format specifiers for size_t vs ssize_t (Daniel P. Berrange),<br />
      build: silence recent syntax check violations (Eric Blake),<br />
      private.syms: Add virNetDevMacVLanRestartWithVPortProfile (Zhou Peng),<br />
      Set default name for SPICE agent channel (Christophe Fergeau),<br />
      python: make python APIs use these helper functions (Guannan Ren),<br />
      python: Add new helper functions for python to C integral conversion (Guannan Ren),<br />
      Enable all warnings permanently &amp; default to -Werror for GIT builds (Daniel P. Berrange),<br />
      Enable build of test suite programs by default for GIT checkouts (Daniel P. Berrange),<br />
      Change the default of mdns_adv to false (Stef Walter),<br />
      Add LXC XML files to schema test &amp; fix problems this uncovers (Daniel P. Berrange),<br />
      Add support for setting init argv for LXC (Daniel P. Berrange),<br />
      Detect location fo selinux mount point (Daniel P. Berrange),<br />
      qemu,util: on restart of libvirt restart vepa callbacks (D. Herrendoerfer),<br />
      build: fix "missing initializer" error in qemu_process.c (Laine Stump),<br />
      build: fix "missing initializer" errors in virsh.c (Laine Stump),<br />
      Added syntax-check rule for return with parentheses (Martin Kletzander),<br />
      Cleanup for a return statement in source files (Martin Kletzander),<br />
      Fix and test round-trip of query parameters (Eric Blake),<br />
      snapshot: improve qemu handling of reused snapshot targets (Eric Blake),<br />
      snapshot: wire up qemu transaction command (Eric Blake),<br />
      snapshot: add support for qemu transaction command (Eric Blake),<br />
      snapshot: rudimentary qemu support for atomic disk snapshot (Eric Blake),<br />
      snapshot: make offline qemu snapshots atomic (Eric Blake),<br />
      snapshot: add atomic create flag (Eric Blake),<br />
      snapshot: add qemu capability for 'transaction' command (Eric Blake),<br />
      build: fix incorrect enum declaration (Eric Blake),<br />
      Add qemu support for ppc64 on FC16 or above for rpm packaging (Li Zhang),<br />
      Fix typo s/virURIFormatQuery/virURIFormatParams/ (Daniel P. Berrange),<br />
      qemu: Update domain status to running while wakeup event is emitted (Osier Yang),<br />
      qemu: Update domain state to pmsuspended while suspend event occurs (Osier Yang),<br />
      New domain state pmsuspended (Osier Yang),<br />
      Add support for the wakeup event (Osier Yang),<br />
      qemu: Update tray status while tray moved event is emitted (Osier Yang),<br />
      qemu: Prohibit setting tray status as open for block type disk (Osier Yang),<br />
      qemu: Do not start with source for removable disks if tray is open (Osier Yang),<br />
      conf: Parse and for the tray attribute (Osier Yang),<br />
      Implement sysinfo on PowerPC. (Prerna Saxena),<br />
      Lookup auth credentials in config file before prompting (Daniel P. Berrange),<br />
      Refactor code prompting for SASL credentials (Daniel P. Berrange),<br />
      Add helper API for finding auth file path (Daniel P. Berrange),<br />
      Rename virRequest{Username,Password} to virAuthGet{Username,Password} (Daniel P. Berrange),<br />
      Rename src/util/authhelper.[ch] to src/util/virauth.[ch] (Daniel P. Berrange),<br />
      Add a virKeyfilePtr object for parsing '.ini' files (Daniel P. Berrange),<br />
      Convert drivers over to use virURIPtr for query params (Daniel P. Berrange),<br />
      Store parsed query parameters directly in the virURIPtr struct (Daniel P. Berrange),<br />
      Use a libvirt custom struct for virURIPtr (Daniel P. Berrange),<br />
      Centralize error reporting for URI parsing/formatting problems (Daniel P. Berrange),<br />
      s/xmlURIPtr/virURIPtr/ in virURIFormat impl (Daniel P. Berrange),<br />
      Use virURIFree instead of xmlFreeURI (Daniel P. Berrange),<br />
      Add test case for virURIPtr classs (Daniel P. Berrange),<br />
      python: add virDomainGetCPUStats python binding API (Guannan Ren),<br />
      qemu: Make autodestroy utilize connection close callbacks (Jiri Denemark),<br />
      qemu: Add connection close callbacks (Jiri Denemark),<br />
      qemu: Add support for domain cleanup callbacks (Jiri Denemark),<br />
      python: always include config.h first (Eric Blake),<br />
      Cpu mapping cleanup (Martin Kletzander),<br />
      virsh: trim aliases from -h output (Eric Blake),<br />
      Add support for forcing a private network namespace for LXC guests (Daniel P. Berrange),<br />
      Emit graphics events when a SPICE client connects/disconnects (Laine Stump),<br />
      numad: Fix typo and warning (Osier Yang),<br />
      Add container_uuid env variable to LXC guests (Daniel P. Berrange),<br />
      Allow overriding default URI in config file (Daniel P. Berrange),<br />
      virsh: A bit smarter attach-disk (Osier Yang),<br />
      qemu: Use scsi-block for lun passthrough instead of scsi-disk (Osier Yang),<br />
      cpu: Add cpu definition for Intel Sandy Bridge cpu type (Peter Krempa),<br />
      Added support for AMD Bulldozer CPU (Martin Kletzander),<br />
      graphics: Cleanup port policy (Michal Privoznik),<br />
      cpustats: report user and sys times (Eric Blake),<br />
      qemuxml2argvtest: Pass some additional flags to graphics-spice-agentmouse (Michal Privoznik),<br />
      qemu: spice agent-mouse support (Peng Zhou),<br />
      virsh: Use option alias for outmoded "--persistent" (Osier Yang),<br />
      util: consolidate duplicated error messages in pci.c (Laine Stump),<br />
      qemu: support persistent hotplug of &lt;hostdev&gt; devices (Laine Stump),<br />
      util: standardize return from functions calling virNetlinkCommand (Laine Stump),<br />
      util: make virDomainLeaseDefFree global (Laine Stump),<br />
      util: consolidate duplicated error messages in virnetlink.c (Laine Stump),<br />
      util: log error on OOM in virNetDevOpenvswitchAddPort (Laine Stump),<br />
      Attach vm-id to Open vSwitch interfaces. (Ansis Atteka),<br />
      util: whitespace change to virNetDevOpenvswitchAddPort (Laine Stump),<br />
      util: add stub pciConfigAddressToSysfsFile for non-linux platforms (Laine Stump),<br />
      rpc: generalize solution for VPATH builds (Eric Blake),<br />
      xml: Clean up schemas to use shared data types instead of local (Peter Krempa),<br />
      qemu: Don't parse device twice in attach/detach (Michal Privoznik),<br />
      virsh: improve memory unit parsing (Eric Blake),<br />
      virsh: improve storage unit parsing (Eric Blake),<br />
      virsh: add command aliases, and rename nodedev-detach (Eric Blake),<br />
      virsh: use option aliases (Eric Blake),<br />
      virsh: add option aliases (Eric Blake),<br />
      xml: allow scaled memory on input (Eric Blake),<br />
      xml: use better types for memory values (Eric Blake),<br />
      xml: use long long internally, to centralize overflow checks (Eric Blake),<br />
      xml: drop unenforced minimum memory limit from RNG (Eric Blake),<br />
      storage: support more scaling suffixes (Eric Blake),<br />
      xml: output memory unit for clarity (Eric Blake),<br />
      xml: share 'unit' in RNG (Eric Blake),<br />
      util: new function for scaling numbers (Eric Blake),<br />
      api: add overflow error (Eric Blake),<br />
      cpu-stats command shows cpu statistics information of a domain. (KAMEZAWA Hiroyuki),<br />
      qemu driver for virDomainGetCPUstats using cpuacct cgroup. (KAMEZAWA Hiroyuki),<br />
      add nodeGetCPUmap() for getting available CPU IDs in a cpumap. (KAMEZAWA Hiroyuki),<br />
      qemu: install port profile and mac address on netdev hostdevs (Roopa Prabhu),<br />
      util: Changes to support portprofiles for hostdevs (Roopa Prabhu),<br />
      util: support functions for mac/portprofile associations on hostdev (Roopa Prabhu),<br />
      util: two new pci util functions (Roopa Prabhu),<br />
      qemu: support type=hostdev network device live hotplug attach/detach (Laine Stump),<br />
      qemu: use virDomainNetRemove instead of inline code (Laine Stump),<br />
      conf: change virDomainNetRemove from static to global (Laine Stump),<br />
      conf: parse/format type='hostdev' network interfaces (Laine Stump),<br />
      qemu: refactor hotplug detach of hostdevs (Laine Stump),<br />
      qemu: re-order functions in qemu_hotplug.c (Laine Stump),<br />
      conf: hostdev utility functions (Laine Stump),<br />
      conf: put subsys part of virDomainHostdevDef into its own struct (Laine Stump),<br />
      conf: give each hostdevdef a parent pointer (Laine Stump),<br />
      conf: HostdevDef parse/format helper functions (Laine Stump),<br />
      conf: make hostdev info a separate object (Laine Stump),<br />
      conf: add device pointer to args of virDomainDeviceInfoIterate callback (Laine Stump),<br />
      qemu: rename virDomainDeviceInfoPtr variables to avoid confusion (Laine Stump),<br />
      conf: reorder static functions in domain_conf.c (Laine Stump),<br />
      conf: relocate virDomainDeviceDef and virDomainHostdevDef (Laine Stump),<br />
      conf: add missing device types to virDomainDevice(Type|Def) (Laine Stump),<br />
      blockResize: add flag for bytes (Eric Blake),<br />
      qemu: Shared or readonly disks are always safe wrt migration (Jiri Denemark),<br />
      libvirt-guests: Add parallel startup and shutdown of guests (Peter Krempa),<br />
      Fix type and add missed comment for diskChange callback (Osier Yang),<br />
      cpu: Add new flag supported by qemu to the cpu definition (Peter Krempa),<br />
      util: combine bools in virNetDevTapCreateInBridgePort into flags (Laine Stump),<br />
      util: centralize tap device MAC address 1st byte "0xFE" modification (Ansis Atteka),<br />
      build: use correct type for pid and similar types (Eric Blake),<br />
      build: prohibit cross-inclusion (Eric Blake),<br />
      virsh: expose partial pull (Eric Blake),<br />
      qemu: pass block pull backing file to monitor (Eric Blake),<br />
      qemu: require json for block jobs (Eric Blake),<br />
      fix alphabetical order of virNetlink functions in symbol file (Laine Stump),<br />
      build: update to latest gnulib (Eric Blake),<br />
      Add de-association handling to macvlan code (D. Herrendoerfer),<br />
      util: Add netlink event handling to virnetlink.c (D. Herrendoerfer),<br />
      Support for cpu64-rhel* qemu cpu models (Martin Kletzander),<br />
      libvirt-guests: Check if URI is reachable before launching commands (Peter Krempa),<br />
      libvirt-guests: Don't try to do a managed-save of transient guests (Peter Krempa),<br />
      libvirt-guests: Add documentation and clean up to use virsh's improved list (Peter Krempa),<br />
      qemu: Add pre-migration hook (Jiri Denemark),<br />
      hooks: Add support for capturing hook output (Jiri Denemark),<br />
      util: fix a typo (Alex Jia),<br />
      storage: fix a typo (Alex Jia),<br />
      Do not include binaries in EXTRA_DIST (Daniel Veillard),<br />
      virsh: New command cmdChangeMedia (Osier Yang),<br />
      virsh: Use vshFindDisk and vshPrepareDiskXML in cmdDetachDisk (Osier Yang),<br />
      virsh: Two new helper functions for disk device changes (Osier Yang),<br />
      tests: Add tests for virtio-scsi and ibmvscsi controllers (Osier Yang),<br />
      qemu: Build command line for the new address format (Osier Yang),<br />
      qemu: New cap flag to indicate if channel is supported by scsi-disk (Osier Yang),<br />
      conf: Introduce new attribute for device address format (Osier Yang),<br />
      conf: Add helper function to look up disk controller model (Osier Yang),<br />
      qemu: add virtio-scsi controller model (Paolo Bonzini),<br />
      qemu: add ibmvscsi controller model (Paolo Bonzini),<br />
      qemu: Add ability to abort existing console while creating new one (Peter Krempa),<br />
      util: Add helpers for safe domain console operations (Peter Krempa),<br />
      fdstream: Add internal callback on stream close (Peter Krempa),<br />
      fdstream: Emit stream abort callback even if poll() doesnt. (Peter Krempa),<br />
      virsh: add support for VIR_DOMAIN_CONSOLE_* flags (Peter Krempa),<br />
      Add flags for virDomainOpenConsole (Peter Krempa),<br />
      pidfile: Make checking binary path in virPidFileRead optional (Peter Krempa),<br />
      qemu: Implement virDomainPMWakeup API (Michal Privoznik),<br />
      virsh: Expose virDomainPMWakeup (Michal Privoznik),<br />
      Fixed URI parsing (Martin Kletzander),<br />
      Workaround python header file insanity (Daniel P. Berrange),<br />
      Improve error reporting when virsh console is run without a TTY (Daniel P. Berrange),<br />
      Error out when using SPICE TLS with spice_tls=0 (Christophe Fergeau),<br />
      vmx: Better Workstation vmx handling (Jean-Baptiste Rouault),<br />
      qemu: nicer error message on failed graceful destroy (Eric Blake),<br />
      qemu: Forbid migration with cache != none (Jiri Denemark),<br />
      Introduce virStorageFileIsClusterFS (Jiri Denemark),<br />
      virsh: Add --unsafe option to migrate command (Jiri Denemark),<br />
      Add support for unsafe migration (Jiri Denemark),<br />
      configure: Define program name if not found (Michal Privoznik),<br />
      virsh: Enhance list command to ease creation of shell scripts (Peter Krempa),<br />
      vmware: implement domainXMLFromNative (Jean-Baptiste Rouault),<br />
      esx: Correctly disable HTTP Expect header usage of libcurl (Matthias Bolte),<br />
      caps: Improve error if passed an unknown arch (Cole Robinson),<br />
      spec: use ix86 macros (Peter Robinson),<br />
      nwfilter: improved logging during driver initialization (Stefan Berger),<br />
      storage: Allow runtime detection of scrub (Michal Privoznik),<br />
      Fix build with polkit0 (Jim Fehlig),<br />
      python: Expose virDomain{G,S}etInterfaceParameters APIs in python binding (Alex Jia),<br />
      conf: rename virDomainNetGetActualDirectVirtPortProfile (Laine Stump),<br />
      qemu: increase the timeout before sending SIGKILL to qemu process (Laine Stump),<br />
      qemu: drop driver lock while trying to terminate qemu process (Laine Stump),<br />
      qemu: Implement DomainPMSuspendForDuration (Michal Privoznik),<br />
      qemu: Set capabilities based on supported monitor commands (Michal Privoznik),<br />
      Install API XML desc to a standard location (Daniel P. Berrange),<br />
      qemu: make block io tuning smarter (Eric Blake)<br />
      </li><li> Cleanups:<br />
      Fix typos and spacing in messages. (Yuri Chornoivan),<br />
      qemu: eliminate nested switch, simplify code (Laine Stump),<br />
      Fix typo in previous patch (Daniel P. Berrange),<br />
      build: drop obsolete qparams test (Eric Blake),<br />
      build: drop a painfully long gnulib test (Eric Blake),<br />
      Removed more AMD-specific features from cpu64-rhel* models (Martin Kletzander),<br />
      conf: eliminate redundant VIR_ALLOC of 1st element of network DNS hosts. (Laine Stump),<br />
      remove daemon/probes.h from .gitignore (Laine Stump),<br />
      sanlock: Fix condition left crippled while debugging (Peter Krempa),<br />
      qemu: Fix indention (Osier Yang),<br />
      daemon: Remove deprecated HAL from init script dependencies (Peter Krempa),<br />
      util: remove unneeded #include in virrandom.c (Laine Stump),<br />
      util: wrap virnetlink.c to 80 columns (Laine Stump),<br />
      Fixed service handling in specfile (Martin Kletzander)<br />
      </li></ul>
        <h3>0.9.10: Feb 13 2012</h3>
        <ul><li> Features:<br />
      Add support for sVirt in the LXC driver (Daniel P. Berrange),<br />
      block rebase: add new API virDomainBlockRebase (Eric Blake),<br />
      API: Add api to set and get domain metadata (Peter Krempa),<br />
      virDomainGetDiskErrors public API (Jiri Denemark),<br />
      conf: add rawio attribute to disk element of domain XML (Taku Izumi),<br />
      Add new public API virDomainGetCPUStats() (KAMEZAWA Hiroyuki),<br />
      Introduce virDomainPMSuspendForDuration API (Michal Privoznik),<br />
      resize: add virStorageVolResize() API (Zeeshan Ali (Khattak)),<br />
      Add a virt-host-validate command to sanity check HV config (Daniel P. Berrange),<br />
      Add new virDomainShutdownFlags API (Daniel P. Berrange),<br />
      QEMU guest agent support (Daniel P. Berrange)<br />
      </li><li> Documentation:<br />
      fix typo in python bindings (Eric Blake),<br />
      conf: small changes to comments in virDomainDeviceInfo (Laine Stump),<br />
      Clarify the purpose of domxml-from-native (Dave Allan),<br />
      Enhance documentation of the old-style boot configuration (Jiri Denemark),<br />
      virterror.c: Fix several spelling mistakes (Philipp Hahn),<br />
      Add detail to documentation on storage pools and volumes. (Dave Allan),<br />
      fill out rawio description (Laine Stump),<br />
      XenXs: Update documentation (Philipp Hahn),<br />
      reorder public header (Eric Blake),<br />
      tweak recent suspend API additions (Eric Blake),<br />
      Add missing docs for &lt;viridian/&gt; feature flag (Daniel P. Berrange),<br />
      fix virsh man page (Eric Blake),<br />
      fix a few small typos in formatdomain.html.in (Laine Stump),<br />
      src/datatypes.h: fix typo (Alon Levy),<br />
      Clarify semantics of virDomainMigrate{,ToURI}2 (Jiri Denemark),<br />
      Add missed RNG schema for interface (Osier Yang),<br />
      Add documentation new ways to access members of variables (Stefan Berger),<br />
      virsh: improve doMigrate function docs (Alex Jia),<br />
      standardize description of flags (Eric Blake),<br />
      Document Android application using libvirt (Michal Privoznik)<br />
      </li><li> Portability:<br />
      virpidfile: replace fopen/fwrite/fscanf with more portable version (Marc-André Lureau),<br />
      util: Do not use PRIx64 macro (Osier Yang),<br />
      Replace truncate() with ftruncate() (Daniel P. Berrange),<br />
      build: avoid gcc 4.7 warning about inlines (Eric Blake),<br />
      lxc: Fix build with AppArmor (Jiri Denemark),<br />
      Update gnulib to fix mingw64 compilation errors (Marc-André Lureau),<br />
      tests: virnettlscontexttest needs gnutls-2.6.0 (Philipp Hahn),<br />
      qemu: Silent bogus warning about unitialized variable (Jiri Denemark),<br />
      build: fix text regression (Eric Blake),<br />
      Add virt-host-validate.1 to Mingw32 RPM spec file list (Daniel P. Berrange),<br />
      build: fix missing include (Eric Blake),<br />
      qemu: support qmp on RHEL/CentOS qemu (Eric Blake),<br />
      util: Include stdint.h because of uint32_t (Michal Privoznik),<br />
      Cast pointer to int using intptr_t (Marc-André Lureau),<br />
      build: fix header order on mingw (Eric Blake),<br />
      errcode is typedef by mingw, rename an argument name (Marc-André Lureau),<br />
      Add missing virGetGroupName() (Marc-André Lureau),<br />
      build: skip lxc with too-old glibc (Eric Blake),<br />
      Remove dmidecode dependancy outside PC arches (Daniel Veillard),<br />
      build: fix bootstrap on fresh clone (Eric Blake),<br />
      tests: Add qemuxml2argv tests for PPC64 pseries machine (Michael Ellerman),<br />
      tests: Teach qemuxml2argvtest about spapr-vio addresses (Michael Ellerman),<br />
      Disable netcf if building without libvirtd (Daniel P. Berrange),<br />
      build: fix build on mingw with netcf available (Eric Blake),<br />
      build: avoid spurious compiler warning (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      rpc: Plug memory leaks on doRemoteOpen() failure path (Alex Jia),<br />
      GetCPUStats: fix overflow test (Lai Jiangshan),<br />
      python: Correct arguments number for migrateSetMaxSpeed (Osier Yang),<br />
      qemu: fix persistent setting of blkiodevice weights (Eric Blake),<br />
      qemu: Fix memory leak when building -cpu argument (Jiri Denemark),<br />
      security: Driver 'none' cannot create confined guests (Jiri Denemark),<br />
      seclabel: Do not output relabel attribute for type 'none' (Jiri Denemark),<br />
      virsh: Plug memory leak on cmdDesc (Alex Jia),<br />
      virsh: Do not check the input XML at virsh layer for cmdDetachDevice (Osier Yang),<br />
      On systems with dmidecode version 2.10 or older, (Prerna Saxena),<br />
      storage: Don't unsparsify images when cloning (Cole Robinson),<br />
      build: don't require avahi during install (Laine Stump),<br />
      pyhton: Don't link against libvirt_util.la (Michal Privoznik),<br />
      xen-xm: SIGSEGV in xenXMDomainDefineXML: filename (Philipp Hahn),<br />
      xen-xm: fix data loss in domain edit (Philipp Hahn),<br />
      virsh: Fix resource leak while listing inactive domains with titles (Peter Krempa),<br />
      xen_xm: Fix SIGSEGV in xenXMDomainDefineXML (Philipp Hahn),<br />
      qemu: Fix seamless spice migration (Jiri Denemark),<br />
      apparmor: Add missing comma (Jiri Denemark),<br />
      virsh: Avoid invalid read of size errors (Alex Jia),<br />
      qemu: eliminate "Ignoring open failure" when using root-squash NFS (Laine Stump),<br />
      conf: Plug memory on virDomainDiskDefParseXML (Alex Jia),<br />
      virsh: Plug memory leak on cmdUndefine (Alex Jia),<br />
      network: fix testsuite regression (Eric Blake),<br />
      network: Avoid memory leaks on networkBuildDnsmasqArgv (Alex Jia),<br />
      python: correct a copy-paste error (Alex Jia),<br />
      qemu: Don't jump to endjob if no job was even started (Michal Privoznik),<br />
      qemu: fix my typo at commit 74e034964c32edb1732d0ff7642f3977f3587d72 (Taku Izumi),<br />
      qemu: Fix segfault in qemuMonitorTextGetBlockInfo (Hendrik Schwartke),<br />
      tests: fix reversed comparisons (Eric Blake),<br />
      qemu: avoid double free of qemu help output (Eric Blake),<br />
      apparmor: Fix use of uninitialized random_data (Jiri Denemark),<br />
      storage: Fix any VolLookupByPath if we have an empty logical pool (Cole Robinson),<br />
      Don't bind mount onto a char device for /dev/ptmx in LXC (Daniel P. Berrange),<br />
      xen: Don't crash when we fail to init caps (Guido Günther),<br />
      xen: properly report out of memory when hvm_type is too small (Guido Günther),<br />
      threads: check for failure to set thread-local value (Eric Blake),<br />
      Fix rpc generator to anchor matches for method names (Daniel P. Berrange),<br />
      Fix startup of LXC containers with filesystems containing symlinks (Daniel P. Berrange),<br />
      qemu: Prohibit reattaching node device if it is in use (Osier Yang),<br />
      qemu: Don't break domain with 0:0:2.0 assigned to anything but VGA (Jiri Denemark),<br />
      Fixed dumpxml of &lt;iotune&gt; parameters (Martin Kletzander),<br />
      nwfilter: fix typing error in filter (Stefan Berger),<br />
      events: Return the correct number of registered events (Adam Litke),<br />
      uuid: fix off-by-one (Eric Blake),<br />
      build: fix virsh reformat fallout (Eric Blake),<br />
      stream: Check for stream EOF (Michal Privoznik),<br />
      Do not generate security_model when fs driver is anything but 'path' (Deepak C Shetty),<br />
      qemu: check for kvm availability before starting kvm guests (Laine Stump),<br />
      qemu: fix a typo on qemuDomainSetBlkioParameters (Alex Jia),<br />
      config: report error when script given for inappropriate interface type (Laine Stump)<br />
      </li><li> Improvements:<br />
      python: make other APIs share common {get, set}PyVirTypedParameter (Guannan Ren),<br />
      npiv: Auto-generate WWN if it's not specified (Osier Yang),<br />
      Remove single quotes from audit records (Marcelo Cerri),<br />
      domain: add implicit USB controller (Marc-André Lureau),<br />
      python: refactoring virTypedParameter conversion for NUMA tuning APIs (Guannan Ren),<br />
      qemu: make blkiodevice weights easier to read (Eric Blake),<br />
      sysinfo: simplify function signature (Eric Blake),<br />
      Populate /dev/std{in,out,err} symlinks in LXC containers (Daniel P. Berrange),<br />
      Update symbols file for virFileDirectFd/virFileWrapperFd rename (Daniel P. Berrange),<br />
      virsh: Fix flag semantics and docs for "desc" command (Peter Krempa),<br />
      qemu: Always use iohelper for domain save (Jiri Denemark),<br />
      qemu: Always use iohelper for dumping domain core (Jiri Denemark),<br />
      util: Generalize virFileDirectFd (Jiri Denemark),<br />
      Allow polkit auth for VNC and SSH users (Cole Robinson),<br />
      seclabel: make code and RNG match (Eric Blake),<br />
      maint: Add test output files to .gitignore (Peter Krempa),<br />
      tests: Fix build with -Werror (Jiri Denemark),<br />
      maint: consolidate several .gitignore files (Eric Blake),<br />
      util: refactor virFileOpenAs (Laine Stump),<br />
      util: rename netlink.[ch] to virnetlink.[ch] (D. Herrendoerfer),<br />
      virsh: add --graceful switch to destroy command (Laine Stump),<br />
      qemu: new GRACEFUL flag for virDomainDestroy w/ QEMU support (Laine Stump),<br />
      Added missing memory reporting into python bindings (Martin Kletzander),<br />
      python: use libvirt_util to avoid raw free (Eric Blake),<br />
      build: expand rule to cover testsuite (Eric Blake),<br />
      build: prohibit raw malloc and free (Eric Blake),<br />
      build: clean up CPPFLAGS/INCLUDES usage (Eric Blake),<br />
      command: allow merging stdout and stderr in string capture (Eric Blake),<br />
      maint: prune duplicate listings in AUTHORS (Eric Blake),<br />
      virsh: extension of virsh attach-disk for rawio (Taku Izumi),<br />
      Fixed connection definition for non-SELinux builds (Martin Kletzander),<br />
      Added RSS reporting (Martin Kletzander),<br />
      Added RSS information gathering into qemudGetProcessInfo (Martin Kletzander),<br />
      Set a security context on /dev and /dev/pts mounts (Daniel P. Berrange),<br />
      Add two new security label types (Daniel P. Berrange),<br />
      Re-add domain device seclabel parsing / formatting (Daniel P. Berrange),<br />
      Revert changes to sec label parsing (Daniel P. Berrange),<br />
      tests: dynamically replace dnsmasq path (Philipp Hahn),<br />
      xen_xs: name xendConfigVersion magic numbers (Philipp Hahn),<br />
      block rebase: initial qemu implementation (Eric Blake),<br />
      block rebase: wire up remote protocol (Eric Blake),<br />
      qemu: Add support for virDomainGetMetadata and virDomainSetMetadata (Peter Krempa),<br />
      virsh: Add support for modifying domain description and titles (Peter Krempa),<br />
      xml: Add element &lt;title&gt; to allow short description of domains (Peter Krempa),<br />
      build: add missing virStorageFileResize to libvirt_private.syms (Laine Stump),<br />
      build: add missing virCommandAddCap to libvirt_private.syms (Laine Stump),<br />
      daemon: Allow overriding NOFILES ulimit for the daemon as well (Michal Privoznik),<br />
      python: Add binding for virDomainGetDiskErrors (Jiri Denemark),<br />
      virsh: Implement domblkerror command (Jiri Denemark),<br />
      qemu: Implement virDomainGetDiskErrors (Jiri Denemark),<br />
      Remote protocol for virDomainGetDiskErrors (Jiri Denemark),<br />
      command: Fix ATTRIBUTE_UNUSED on virSetCapabilities (Michal Privoznik),<br />
      simplify block of codes (Alex Jia),<br />
      qemu: make qemu processes to retain rawio capability (Taku Izumi),<br />
      util: extend virExecWithHook() (Taku Izumi),<br />
      util: add functions to keep capabilities (Taku Izumi),<br />
      Implement virStorageVolResize() for FS backend (Zeeshan Ali (Khattak)),<br />
      resize: slightly alter signature (Eric Blake),<br />
      qemu: add "romfile" support to specify device boot ROM (Laine Stump),<br />
      qemu: (and conf) support rombar for network devices (Laine Stump),<br />
      conf: relocate rombar and boot order parse/format (Laine Stump),<br />
      conf: put all guest-related HostdevDef data in one object (Laine Stump),<br />
      xen: Don't add &lt;console&gt; to xml for dom0 (Cole Robinson),<br />
      remote handler for virDomainGetCPUStats() (KAMEZAWA Hiroyuki),<br />
      virsh: Expose new virDomainPMSuspendForDuration API (Michal Privoznik),<br />
      resize: implement remote protocol for virStorageVolResize() (Zeeshan Ali (Khattak)),<br />
      Return more error output if policykit auth fails. (Cole Robinson),<br />
      Add new error code VIR_ERROR_AUTH_CANCELLED (Cole Robinson),<br />
      Move virEmitXMLWarning into xml.h (Daniel P. Berrange),<br />
      Move virMacAddrXXX functions to src/util/virmacaddr.[ch] (Daniel P. Berrange),<br />
      Rename virXXXXMacAddr to virMacAddrXXX (Daniel P. Berrange),<br />
      qemu: parse and create -cpu ...,-kvmclock (Paolo Bonzini),<br />
      conf: add kvmclock timer (Paolo Bonzini),<br />
      qemu: do not create useless &lt;cpu&gt; element (Paolo Bonzini),<br />
      qemu: get arch name from &lt;cpu&gt; element (Paolo Bonzini),<br />
      qemu: detect arch correctly for KVM (Paolo Bonzini),<br />
      x86: add kvm32 and kvm64, update qemu64 (Paolo Bonzini),<br />
      qemu: parse -enable-kvm (Paolo Bonzini),<br />
      qemu: require qmp on new enough qemu (Eric Blake),<br />
      nwfilter: Rebuild filters only if new filter is different than current (Stefan Berger),<br />
      nwfilter: Force instantiation of filters upon driver reload (Stefan Berger),<br />
      qemu: Refactor qemuMonitorGetBlockInfo (Jiri Denemark),<br />
      Update VIRT_CONTROL audit record with pid. (Marcelo Cerri),<br />
      build: allow for 64-bit pid in daemon (Eric Blake),<br />
      daemon: convert virRun to virCommand (Eric Blake),<br />
      hash: minor touchups (Eric Blake),<br />
      Replace hashing algorithm with murmurhash (Daniel P. Berrange),<br />
      Rename  hash.h and hash.c to virhash.h and virhash.c (Daniel P. Berrange),<br />
      Convert various virHash functions to use size_t / uint32 (Daniel P. Berrange),<br />
      Introduce new API for generating random numbers (Daniel P. Berrange),<br />
      schema: Relax schema for domain name (Peter Krempa),<br />
      storage: Support different wiping algorithms (Michal Privoznik),<br />
      lxc: export container=lxc-libvirt for systemd (Eric Blake),<br />
      Add virFileTouch for creating empty files (Daniel P. Berrange),<br />
      virsh: Expose new VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE flag (Michal Privoznik),<br />
      snapshots: Introduce VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE flag (Michal Privoznik),<br />
      qemu_agent: Create file system freeze and thaw functions (Michal Privoznik),<br />
      qemu: Emit bootindex even for direct boot (Jiri Denemark),<br />
      metadata: group metadata next to description (Eric Blake),<br />
      build: simplify xmlFreeNode usage (Eric Blake),<br />
      Allow custom metadata in domain configuration XML (Zeeshan Ali (Khattak)),<br />
      virCommandProcessIO(): make poll() usage more robust (Laszlo Ersek),<br />
      Allow choice of shutdown method via virsh (Daniel P. Berrange),<br />
      Wire up QEMU agent to reboot/shutdown APIs (Daniel P. Berrange),<br />
      hashtest: Initialize variable in virHashEqual test (Michal Privoznik),<br />
      Add test case for virHashEqual function (Stefan Berger),<br />
      Compare two hash tables for equality (Stefan Berger),<br />
      virsh: let domif-{get,set}link take target name (Taku Izumi),<br />
      maint: cleanup qemu capabilities (Eric Blake),<br />
      maint: enforce use of _LAST marker (Eric Blake),<br />
      API: make declaration of _LAST enum values conditional (Eric Blake),<br />
      error: drop old-style error reporting (Eric Blake),<br />
      util: use new virTypedParameter helpers (Eric Blake),<br />
      util: add new file for virTypedParameter utils (Eric Blake),<br />
      lxc: use live/config helper (Eric Blake),<br />
      build: silence some compiler warnings from gnulib (Eric Blake),<br />
      Rename APIs for fetching UNIX socket credentials (Daniel P. Berrange),<br />
      Add virGetGroupName to convert from GID to group name (Daniel P. Berrange),<br />
      Remove duplicate call to virNetSASLSessionGetIdentity (Daniel P. Berrange),<br />
      Also retrieve GID from SO_PEERCRED (Daniel P. Berrange),<br />
      Added capability checking for block &lt;iotune&gt; setting. (Martin Kletzander),<br />
      qemu: Introduce inactive PCI device list (Osier Yang),<br />
      Permission change for systemtap examples. (Martin Kletzander),<br />
      Add new attribute wrpolicy to &lt;driver&gt; element (Deepak C Shetty),<br />
      tests: avoid dirname in tests (Eric Blake),<br />
      qemu: Add support for host CPU modes (Jiri Denemark),<br />
      Taint domains configured with cpu mode=host-passthrough (Jiri Denemark),<br />
      cpu: Update guest CPU in host-* mode (Jiri Denemark),<br />
      Add support for cpu mode attribute (Jiri Denemark),<br />
      cpu: Optionally forbid fallback CPU models (Jiri Denemark),<br />
      tests: Print XML file name in verbose CPU test (Jiri Denemark),<br />
      docs: Expose alias tag in domain RNG schema (Osier Yang),<br />
      docs: Add readonly to filesystem RNG schema (Osier Yang),<br />
      conf: Remove do-nothing validation functions (Michael Ellerman),<br />
      Make drive unit attribute optional in the XML schema (Michael Ellerman),<br />
      virsh domiflist: change output (Taku Izumi),<br />
      export virNetDevGetVirtualFunctions as a private symbol (Paolo Bonzini),<br />
      virsh: Two new fields for command domblklist (Osier Yang),<br />
      qemu: Support copy on read for disk (Osier Yang),<br />
      Added check for maximum number of vcpus exceeding topology limit (Martin Kletzander),<br />
      build: update to latest gnulib (Eric Blake),<br />
      Rsync keymaps.csv file with GTK-VNC (Daniel P. Berrange),<br />
      Re-write LXC controller end-of-file I/O handling yet again (Daniel P. Berrange),<br />
      Allow 10 chars for domain IDs &amp; 30 chars for names in virsh list (Daniel P. Berrange),<br />
      virsh: New command print summary of all virtual interfaces (Osier Yang),<br />
      Added new option to virsh net-dumpxml called --inactive (Shradha Shah),<br />
      Functionality to implicitly get interface pool from SR-IOV PF. (Shradha Shah),<br />
      Adding the element pf to network xml. (Shradha Shah),<br />
      Added Function virNetDevGetVirtualFunctions (Shradha Shah),<br />
      Added function pciSysfsFile to enable access to the PCI SYSFS files. (Shradha Shah),<br />
      Add test cases for new ways to access variables in filters (Stefan Berger),<br />
      Address side effects of accessing vars via index (Stefan Berger),<br />
      Add access to elements of variables via index (Stefan Berger),<br />
      Introduce possibility to have an iterator per variable (Stefan Berger),<br />
      Optimize the elements the iterator visits. (Stefan Berger),<br />
      apparmor: Mark pid parameter as unused (Jiri Denemark),<br />
      Change security driver APIs to use virDomainDefPtr instead of virDomainObjPtr (Daniel P. Berrange),<br />
      snapshot: allow reuse of existing files in disk snapshot (Eric Blake),<br />
      PolicyKit: Check auth before asking client to obtain it (Jim Fehlig),<br />
      qemu: add new disk device='lun' for bus='virtio' &amp; type='block' (Laine Stump),<br />
      qemu: add capabilities flags related to SG_IO (Laine Stump),<br />
      qemu: one more client to live/config helper (Eric Blake)<br />
      </li><li> Cleanups:<br />
      python: drop unused function (Eric Blake),<br />
      python: drop redundant function (Eric Blake),<br />
      Replace TAB with white spaces (Osier Yang),<br />
      qemu: Clenup qemuDomainSetInterfaceParameters (Michal Privoznik),<br />
      conf: remove duplicate call to VIR_FREE(info-&gt;alias) (Laine Stump),<br />
      xml: fix struct typos (Eric Blake),<br />
      Remove tabs from libvirt_public.syms &amp; enforce it (Daniel P. Berrange)<br />
      </li></ul>
        <h3>0.9.9: Jan 7 2012</h3>
        <ul><li> Features:<br />
      Add new API virDomain{S,G}etInterfaceParameters (Hu Tao),<br />
      Add new API virDomain{G,S}etNumaParameters (Hu Tao),<br />
      Add support for ppc64 qemu (Prerna Saxena, Bharata B Rao, Michael Ellerman),<br />
      Support Xen domctl v8 (Jim Fehlig)<br />
      </li><li> Documentation:<br />
      Fix typos in messages. (Yuri Chornoivan),<br />
      docs: re-fix stray / (Eric Blake),<br />
      virsh: move version command to host group (Lai Jiangshan),<br />
      docs: Move 'echo' command description into the generic commands section (Satoru SATOH),<br />
      docs: Move 'send-key' command description into the domain commands section (Satoru SATOH),<br />
      docs: remove stray / (Eric Blake),<br />
      docs: fix missing / in xml examples (Eric Blake),<br />
      docs: improve virsh domxml-*-native command docs (Alex Jia),<br />
      docs: document &lt;qemu:commandline&gt; xml (Eric Blake),<br />
      Fix typo in storage pool documentation (Christophe Fergeau),<br />
      docs: tweak 'virsh edit' wording (Eric Blake),<br />
      docs: document &lt;address&gt; elements in one place (Eric Blake),<br />
      threads: Document spurious wakeups on virCondWait (Michal Privoznik)<br />
      </li><li> Portability:<br />
      build: fix mingw virCommand build (Eric Blake),<br />
      tests: avoid test failure on rawhide gnutls (Eric Blake),<br />
      build: drop check for ANSI compiler (Eric Blake),<br />
      Fix build on s390(x) and other stange arches (Daniel Veillard),<br />
      Require avahi as an rpm dependancy (Daniel Veillard),<br />
      Disable python explicitly in mingw32 autobuild (Daniel P. Berrange),<br />
      build: disable dtrace on non-Linux builds (Eric Blake),<br />
      build: let autobuild check more code (Eric Blake),<br />
      maint: allow bootstrap in a sandbox (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      qemu: Avoid memory leaks on qemuParseRBDString (Alex Jia),<br />
      qemu: fix a bug in numatune (Hu Tao),<br />
      qemu: fix use-after-free regression (Eric Blake),<br />
      seclabel: fix regression in libvirtd restart (Eric Blake),<br />
      command: Discard FD_SETSIZE limit for opened files (Michal Privoznik),<br />
      Fix xenstore serial console path for HVM guests (Jim Fehlig),<br />
      schemas: Allow '.' in CPU feature name (Jiri Denemark),<br />
      virCommand: Properly handle POLLHUP (Michal Privoznik),<br />
      virCPUDefCopy forgot to copy NUMA topology (Jiri Denemark),<br />
      qemu: fix block stat naming (Eric Blake),<br />
      domiftune: clean up previous patches (Eric Blake),<br />
      virsh: Fix checking for reconnect conditions (Peter Krempa),<br />
      qemu: Fix bandwidth memory leak on failure (Alex Jia),<br />
      qemu: fix blkio memory leak on failure (Eric Blake),<br />
      remove a static limit on max domains in python bindings (Daniel Veillard),<br />
      python: Fix problems of virDomain{Set, Get}BlockIoTune bindings (Alex Jia),<br />
      qemu: fix inf-loop in blkio parameters (Eric Blake),<br />
      qemu: Keep list of USB devices attached to domains (Michal Privoznik),<br />
      qemu: Release the lock on domobj if fails on finding the disk path (Osier Yang),<br />
      virsh: plug mem leaks in domxml-*-native (Alex Jia),<br />
      console: plug memory leaks (Alex Jia),<br />
      rpc: handle param_int, plug memory leaks (Eric Blake),<br />
      python: plug memory leak on libvirt_virConnectOpenAuth (Alex Jia),<br />
      Only add the timer when a callback is registered (Daniel P. Berrange),<br />
      qemu: detect truncated file as invalid save image (Eric Blake),<br />
      qemu: Don't drop hostdev config until security label restore (Michal Privoznik),<br />
      Fix default migration speed in qemu driver (Jim Fehlig),<br />
      qemu: Fix race between async and query jobs (Jiri Denemark),<br />
      qemu: Do not free the device from activePciHostdevs if it's in use (Osier Yang),<br />
      qemu: Honor the original properties of PCI device when detaching (Osier Yang),<br />
      spec: fix inverted logic on sanlock (Wen Congyang),<br />
      tests: plug memory leak on linuxTestNodeInfo (Alex Jia),<br />
      storage: Fix a potential crash when creating vol object (Osier Yang),<br />
      qemu: Disable EOF processing during qemuDomainDestroy (Jiri Denemark),<br />
      virsh: Free returned MIME type string (Michal Privoznik),<br />
      storage: Activate/deactivate logical volumes only on local node (Rommer),<br />
      security: don't try to label network disks (Josh Durgin),<br />
      test: replace deprecated "fedora-13" machine with "pc-0.13" (Laine Stump),<br />
      network: don't add iptables rules for externally managed networks (Laine Stump),<br />
      threadpool: Use while loop on virCondWait (Michal Privoznik),<br />
      virsh: plug memory leak on cmdDomblklist (Alex Jia),<br />
      fix error when parsing ppc64 models on x86 host (Stefan Berger),<br />
      fix memory leak in src/nodeinfo.c (Stefan Berger),<br />
      threadpool: Don't wait on condition if pool has no workers (Michal Privoznik),<br />
      bridge: Fix forward delay APIs (Jiri Denemark),<br />
      virsh: return correct value from cmdDomIfGetLink (Peter Krempa),<br />
      virsh: plug memory leak on cmdDomIfGetLink() successful path (Alex Jia),<br />
      virsh: plug memory leak on cmdBlkdeviotune() successful path (Alex Jia),<br />
      test: fix potential lock corruption in test driver (Laine Stump),<br />
      spec: fix logic bug in deciding to turn on cgconfig (Eric Blake),<br />
      When checking nttyFDs to see if it is != 1, be sure to use '1' and not '-1' (Daniel P. Berrange),<br />
      Fix installation of libvirt-guests.service (Daniel P. Berrange)<br />
      </li><li> Improvements:<br />
      Implement DNS SRV record into the bridge driver (Michal Novotny),<br />
      seclabel: honor device override in selinux (Eric Blake),<br />
      seclabel: allow a seclabel override on a disk src (Eric Blake),<br />
      seclabel: extend XML to allow per-disk label overrides (Eric Blake),<br />
      seclabel: move seclabel stuff earlier (Eric Blake),<br />
      seclabel: refactor existing domain_conf usage (Eric Blake),<br />
      schema: rewrite seclabel rng to match code (Eric Blake),<br />
      domiftune: Enable the virDomain{S,G}etInterfaceParameters in virsh (Hu Tao),<br />
      domiftune: Add virDomain{S,G}etInterfaceParameters support to qemu driver (Hu Tao),<br />
      domiftune: Add a util function virDomainNetFind (Hu Tao),<br />
      domiftune: Add support of new APIs to the remote driver (Hu Tao),<br />
      domiftune: virDomain{S,G}etInterfaceParameters: the main entry points (Hu Tao),<br />
      daemon: clean up daemonization (Eric Blake),<br />
      tests: fix schema checks sorting (Eric Blake),<br />
      qemu: Support for overriding NOFILE limit (Michal Privoznik),<br />
      virsh: Use vshWatchJob in cmdManagedSave (Michal Privoznik),<br />
      virsh: Use vshWatchJob in cmdSave (Michal Privoznik),<br />
      virsh: Use vshWatchJob in cmdDump (Michal Privoznik),<br />
      virsh: Move job watch code to a separate function (Michal Privoznik),<br />
      qemuhelptest: Add new qemuCap flag (Michal Privoznik),<br />
      qemu: Support readonly filesystem passthrough (Osier Yang),<br />
      nwfilter: Do not require DHCP requests to be broadcasted (Stefan Berger),<br />
      tests: run schema checks in sorted order (Eric Blake),<br />
      tests: Add fake PPC64 emulator for QEMU testing (Michael Ellerman),<br />
      qemu: Add spapr-vio address assignment (Michael Ellerman),<br />
      Add New address type spapr-vio to domain.rng (Bharata B Rao),<br />
      Add address type for SPAPR VIO devices (Michael Ellerman),<br />
      qemu: Add a capability flag for -no-acpi (Michael Ellerman),<br />
      add new command numatune to virsh (Hu Tao),<br />
      Implement virDomain{G, S}etNumaParameters for the qemu driver (Hu Tao),<br />
      Add virDomain{G, S}etNumaParameters support to the remote driver (Hu Tao),<br />
      use cpuset to manage numa (Hu Tao),<br />
      Add functions to set/get cgroup cpuset parameters (Hu Tao),<br />
      virsh: simplify printing of typed parameters (Eric Blake),<br />
      Hide use of timers for domain event dispatch (Daniel P. Berrange),<br />
      Remove decl of all APIs related to domain event callbacks &amp; queues (Daniel P. Berrange),<br />
      Remove all domain event structs from header (Daniel P. Berrange),<br />
      Convert drivers to thread safe APIs for adding callbacks (Daniel P. Berrange),<br />
      Add APIs to allow management of callbacks purely with virDomainEventState (Daniel P. Berrange),<br />
      Return count of callbacks when registering callbacks (Daniel P. Berrange),<br />
      Convert Xen &amp; VBox drivers to use virDomainEventState (Daniel P. Berrange),<br />
      nwfilter: do not create ebtables chain unnecessarily (Stefan Berger),<br />
      migration: Add more specific error code/message on migration abort (Peter Krempa),<br />
      virsh: Add option to undefine storage with domains (Peter Krempa),<br />
      python: Expose blockPeek and memoryPeek in Python binding (Osier Yang),<br />
      virsh: support multifunction in attach-disk (KAMEZAWA Hiroyuki),<br />
      python: Fix export of virDomainSnapshotListChildrenNames (Peter Krempa),<br />
      Provide a helper method virDomainLiveConfigHelperMethod (Lei Li),<br />
      virsh: Print error message if argument parsing fails for cmdNodesuspend (Peter Krempa),<br />
      build: follow directory install conventions (Eric Blake),<br />
      Fix make uninstall (Dave Allan),<br />
      qemu: Prepare to cater for more general address assignment (Michael Ellerman),<br />
      qemu: Add address in qemuBuildChrDeviceStr() on pseries (Michael Ellerman),<br />
      qemu: Use spapr-vscsi on pseries machine type (Michael Ellerman),<br />
      network: allow '-' in model name (Eric Blake),<br />
      cpu: Add cpu flags supported by newest qemu (Peter Krempa),<br />
      Pass the VM's UUID into the nwfilter subsystem (Stefan Berger),<br />
      nwfilter: cleanup return codes in nwfilter subsystem (Stefan Berger),<br />
      spec: make it easier to autoreconf when building rpm (Eric Blake),<br />
      Ensure to prefix %{buildroot} when overriding systemd install location (Daniel P. Berrange),<br />
      Add ppc64 specific definitions to domain.rng (Bharata B Rao),<br />
      Clean up qemuBuildCommandLine to remove x86-specific (Prerna Saxena),<br />
      Modify the tests/nodeinfotest.c to use sysfs in addition (Prerna Saxena),<br />
      Use sysfs to gather host topology, in place of (Prerna Saxena)<br />
      </li><li> Cleanups:<br />
      network_conf: Fix whitespace to pass syntax-check (Peter Krempa)<br />
      </li></ul>
        <h3>0.9.8: Dec 8 2011</h3>
        <ul><li> Features:<br />
      Add support for QEMU 1.0 (Jiri Denemark),<br />
      Add first parts of PPC cpu driver. (Prerna Saxena),<br />
      Add new API virDomain{Set, Get}BlockIoTune (Lei Li),<br />
      block_resize: Define the new API (Osier Yang),<br />
      Add a public API to invoke suspend/resume on the host (Srivatsa S. Bhat),<br />
      Various improvements for LXC containers (Daniel P. Berrange),<br />
      Define keepalive protocol and add virConnectIsAlive API (Jiri Denemark),<br />
      Add support for STP and VLANfiltering (Stefan Berger)<br />
      </li><li> Documentation:<br />
      Add documentation for &lt;disk&gt;&lt;source type="dir"&gt; (Christophe Fergeau),<br />
      Fix typo in virDomainResume API doc (Christophe Fergeau),<br />
      maint: fix improper use of 'an' (Eric Blake),<br />
      virsh: translate net-info help (Eric Blake),<br />
      maint: typo fixes (Eric Blake),<br />
      virsh: Fix typos in man page (Jiri Denemark),<br />
      rpc: Fix a typo in virNetClientSendNonBlock documentation (Jiri Denemark),<br />
      docs: fix grammar of capabilities (Eric Blake),<br />
      Documentation about chains' priorities, lists of elements etc. (Stefan Berger)<br />
      </li><li> Portability:<br />
      spec: don't use chkconfig --list (Eric Blake),<br />
      build: fix build with older libxml2 (Eric Blake),<br />
      Conditionalize daemonPath decl for Win32 which lacks UNIX sockets (Daniel P. Berrange),<br />
      build: reduce warnings from older gcc (Eric Blake),<br />
      Fix incorrect symbols for virtime.h module breaking Mingw32 (Daniel P. Berrange),<br />
      build: fix build on Cygwin (Eric Blake),<br />
      build: fix build at -O2 on rawhide (Eric Blake),<br />
      Fix build for platforms lacking struct ifreq (Daniel P. Berrange),<br />
      build: fix 'make dist' without dtrace (Eric Blake),<br />
      Don't use undocumented __isleap macro (Daniel P. Berrange),<br />
      virnetsocket: pass XAUTORITY for ssh connection (Christian Franke),<br />
      Fix build on Mingw32 wrt export of virNetServerGetDBusConn (Daniel P. Berrange),<br />
      build: fix compile error with no macvtap (Eric Blake),<br />
      Fix build with polkit0 (Jim Fehlig),<br />
      Fix strchr call triggering gcc 4.3 &amp; 4.4 bug (Stefan Berger),<br />
      PATCH: Fix build without MACVTAP (Michael Wood),<br />
      util: fix compile error on debian (Eli Qiao),<br />
      Disable numactl on ARM architectures too (Daniel P. Berrange),<br />
      Add libvirt confdir to files section in mingw32 spec (Daniel P. Berrange),<br />
      build: fix mingw build of gnulib openpty (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      Fix updating of haveTheBuck in RPC client to be race-free (Daniel P. Berrange),<br />
      Prevent crash of libvirtd when attaching to existing qemu process (Jim Fehlig),<br />
      qemu: Ignore shutdown event from destroyed domain (Jiri Denemark),<br />
      remote_driver: don't fail if keepalive check fails (Guido Günther),<br />
      command: handle empty buffer argument correctly (Eric Blake),<br />
      client: Check if other thread claims it has the buck before claiming it. (Peter Krempa),<br />
      Avoid crash in shunloadtest (Daniel P. Berrange),<br />
      Fix a logic error for setting block I/O (Lei Li),<br />
      virsh: Allow other escape characters for console (Michal Privoznik),<br />
      bridge_driver: Don't define network if XML contains more IPv4 addresses. (Peter Krempa),<br />
      virsh: Fix possible deadlock when virsh is about to exit (Jiri Denemark),<br />
      util: Plug memory leak on virNetDevMacVLanCreateWithVPortProfile() error path (Alex Jia),<br />
      util: Plug memory leak on virNetDevBridgeGet() successful path (Alex Jia),<br />
      uml: Plug memory leak on umlStartVMDaemon() error path (Alex Jia),<br />
      rpc: Plug memory leak on virNetClientSendInternal() error path (Alex Jia),<br />
      conf: Plug memory leak on virDomainDefParseXML() error path (Alex Jia),<br />
      qemu: Plug memory leak onqemuProcessWaitForMonitor() error path (Alex Jia),<br />
      conf: reject duplicate paths in device weights (Eric Blake),<br />
      Make logging async signal safe wrt time stamp generation (Daniel P. Berrange),<br />
      Don't mark suspend as active until we know it is running (Daniel P. Berrange),<br />
      util: avoid null deref on qcowXGetBackingStore (Alex Jia),<br />
      virsh: correct return value error (Alex Jia),<br />
      qemu: fix blkiotune --live --config (Eric Blake),<br />
      lxc: Fix suspend/resume with freezer cgroup (Jiri Denemark),<br />
      rpc: Really send non-blocking calls while waiting for another call (Jiri Denemark),<br />
      util: fix thinko in runIO (Paolo Bonzini),<br />
      storage: Skip socket and fifo on pool-start (Michal Privoznik),<br />
      conf: Don't drop console definition on domain restart (Michal Privoznik),<br />
      qemu: Avoid dereference of NULL pointer (Peter Krempa),<br />
      nwfilter: Initialize virNWFilterAddIpAddrForIfname return variable (Michal Privoznik),<br />
      Fix disabling of virtual port profile code on old hosts (Daniel P. Berrange),<br />
      Fix uninitialized variable in NWfilter IP learning code (Daniel P. Berrange),<br />
      storage: Fallback to use lvchange first if lvremove fails (Chang Liu),<br />
      conf: don't modify cpu set string during parsing (Eric Blake),<br />
      qemu: don't release network actual device twice (Roopa Prabhu),<br />
      tests: avoid xend ABRT crash report (Eric Blake),<br />
      Fix use of uninitialized variable in QEMU driver (Daniel P. Berrange),<br />
      snapshot: refuse to generate names for non-regular backing files (Eric Blake),<br />
      fix a bug in remoteSerializeTypedParameters (Hu Tao),<br />
      Don't return a fatal error if receiving unexpected stream data (Daniel P. Berrange),<br />
      Fix handling of stream EOF (Daniel P. Berrange),<br />
      storage: forbid rebuilding existing disk storage pools (Guido Günther),<br />
      qemu: fix domjobabort regression (Eric Blake),<br />
      fix two bugs in bridge_driver.c (Hu Tao),<br />
      nwfilter: avoid failure with noexec /tmp (Eric Blake),<br />
      lxc: free error object to avoid memory leak (Alex Jia),<br />
      lxc: free 'ttyFDs' array on return from lxcVmStart (Alex Jia)<br />
      </li><li> Improvements:<br />
      npiv: Expose fabric_name outside (Osier Yang),<br />
      Improve error reporting when libvirtd is not installed (Daniel P. Berrange),<br />
      spec: fix sanlock dependency (Eric Blake),<br />
      spec: add dmidecode as prereq (Eric Blake),<br />
      examples: Update event tests for shutdown event (Jiri Denemark),<br />
      qemu: Rework handling of shutdown event (Jiri Denemark),<br />
      python: Expose binding for virNodeGetMemoryStats() (Peter Krempa),<br />
      python: Expose binding for virNodeGetCPUStats() (Peter Krempa),<br />
      build: require more tools from maintainers (Eric Blake),<br />
      apparmor: allow tunnelled migrations. (Serge Hallyn),<br />
      Update of filters to handle multiple IP addresses (Stefan Berger),<br />
      build: update to latest gnulib (Eric Blake),<br />
      build: properly skip tests (Eric Blake),<br />
      spec: mark directories in /var/run as ghosts (Eric Blake),<br />
      qemu: filter blkio 0-device-weight at two other places (Hu Tao),<br />
      qemu: amend existing table of device weights (Eric Blake),<br />
      virsh: fix setting weight and device-weights at the same time (Hu Tao),<br />
      Add tests for blkdeviotune (Lei Li),<br />
      Support virDomain{Set, Get}BlockIoTune in the python API (Lei Li),<br />
      Enable the blkdeviotune command in virsh (Lei Li),<br />
      Implement virDomain{Set, Get}BlockIoTune for the qemu driver (Lei Li),<br />
      Support block I/O throttle in XML (Lei Li),<br />
      Add virDomain{Set, Get}BlockIoTune support to the remote driver (Lei Li),<br />
      Fix leak build config file path (Daniel P. Berrange),<br />
      Add internal APIs for dealing with time (Daniel P. Berrange),<br />
      Remove obsolete virGetPMCapabilities sym from private symbols file (Daniel P. Berrange),<br />
      Add suspend info to Xen, LXC and UML hypervisor capabilities (Daniel P. Berrange),<br />
      Remove pointless strdup in node suspend code (Daniel P. Berrange),<br />
      Do lazy init of host PM features (Daniel P. Berrange),<br />
      Remove powerMgmt_valid field from capabilities struct (Daniel P. Berrange),<br />
      Add export of node suspend capabilities APIs (Daniel P. Berrange),<br />
      Move suspend capabilities APIs out of util.h into virnodesuspend.c (Daniel P. Berrange),<br />
      Rename suspend capabilities APIs (Daniel P. Berrange),<br />
      Sanitize virDiscoverHostPMFeature to return a boolean (Daniel P. Berrange),<br />
      Move the virHostPMCapability enum helpers into capabilities.c (Daniel P. Berrange),<br />
      Fix capabilities XML to use generic terms for suspend targets (Daniel P. Berrange),<br />
      Remove internal only virHostPMCapability enum (Daniel P. Berrange),<br />
      Fix values of PM target type constants (Daniel P. Berrange),<br />
      blkiotune: add qemu support for blkiotune.device_weight (Hu Tao),<br />
      blkiotune: add interface for blkiotune.device_weight (Hu Tao),<br />
      qemu, lxc: drop redundant checks (Eric Blake),<br />
      API: prevent query of --live and --config at once (Eric Blake),<br />
      build: fix typo in last patch (Eric Blake),<br />
      block_resize: Update test file for RPC (Osier Yang),<br />
      block_resize: Expose the new API to virsh (Osier Yang),<br />
      block_resize: Implement qemu driver method (Osier Yang),<br />
      block_resize: Implement qemu monitor functions (Osier Yang),<br />
      block_resize: Wire up the remote protocol (Osier Yang),<br />
      examples: Correct the example command to use testnode.xml (Osier Yang),<br />
      Add virsh command to initiate suspend on the host (Srivatsa S. Bhat),<br />
      Implement the core API to suspend/resume the host (Srivatsa S. Bhat),<br />
      Add the remote protocol implementation for virNodeSuspendForDuration (Srivatsa S. Bhat),<br />
      Add 'Hybrid-Suspend' power management discovery for the host (Srivatsa S. Bhat),<br />
      virsh: Don't traverse childless nodes in vshNodeIsSuperset (Michal Privoznik),<br />
      conf: make virt-xml-validate work with vbox domains (Lorin Hochstein),<br />
      conf: Improve incorrect root element error messages (Michal Privoznik),<br />
      Refactor initial LXC mem tune / device ACL code (Daniel P. Berrange),<br />
      Add support for blkio tuning of LXC containers (Daniel P. Berrange),<br />
      Add support for CPU quota/period to LXC driver (Daniel P. Berrange),<br />
      Support CPU placement in LXC driver (Daniel P. Berrange),<br />
      Support NUMA memory placement for LXC containers (Daniel P. Berrange),<br />
      storage: Refetch file status after open (Michal Privoznik),<br />
      Fix version numbers for isAlive and setKeepAlive driver APIs (Jiri Denemark),<br />
      build: Properly generate and check virkeepaliveprotocol-structs (Jiri Denemark),<br />
      examples: Use virConnectOpenAuth in events-c (Jiri Denemark),<br />
      qemu: Cancel p2p migration when connection breaks (Jiri Denemark),<br />
      qemu: Add support for keepalive messages during p2p migration (Jiri Denemark),<br />
      Add keepalive support into domain-events examples (Jiri Denemark),<br />
      Implement virConnectIsAlive in all drivers (Jiri Denemark),<br />
      Introduce virConnectIsAlive API (Jiri Denemark),<br />
      Implement keepalive protocol in remote driver (Jiri Denemark),<br />
      Add support for async close of client RPC socket (Jiri Denemark),<br />
      Implement keepalive protocol in libvirt daemon (Jiri Denemark),<br />
      virsh: Always run event loop (Jiri Denemark),<br />
      Introduce virConnectSetKeepAlive (Jiri Denemark),<br />
      Implement common keepalive handling (Jiri Denemark),<br />
      rpc: Add some debug messages to virNetClient (Jiri Denemark),<br />
      rpc: Fix handling of non-blocking calls that could not be sent (Jiri Denemark),<br />
      rpc: Pass the buck only to the first available thread (Jiri Denemark),<br />
      nwfilter: remove virConnectPtr from internal API calls (Stefan Berger),<br />
      API: prefer 'disk' over 'block' or 'path' (Eric Blake),<br />
      blockstats: support lookup by path in blockstats (Eric Blake),<br />
      virsh: Increase device-detach intelligence (Michal Prívozník),<br />
      Enable detection of multiple IP addresses (Stefan Berger),<br />
      fix error message when using wrong URI alias (Eli Qiao),<br />
      Pass additional parameter into applyDHCPOnly function (Stefan Berger),<br />
      nwfilter: use shell variable to invoke 'ip(6)tables' command (Stefan Berger),<br />
      nwfilter: use shell variable to invoke 'ebtables' command (Stefan Berger),<br />
      Improve error reporting of failures to apply filtering rules (Stefan Berger),<br />
      Add documentation for STP filtering support (Stefan Berger),<br />
      Add test cases for STP traffic filtering (Stefan Berger),<br />
      Add a 'mac' chain (Stefan Berger),<br />
      Add strings.h include to capabilities.h for ffs() function prototype (Daniel P. Berrange),<br />
      build: Update AUTHORS (Osier Yang),<br />
      Export KVM Host Power Management capabilities (Srivatsa S. Bhat),<br />
      qemu: Copy console definition from serial (Michal Privoznik),<br />
      storage: Skips backingStore of virtual snapshot lv (Osier Yang),<br />
      Add documentation for VLAN filtering support (Stefan Berger),<br />
      Add test cases for VLAN traffic filtering (Stefan Berger),<br />
      Don't copy sexpr node value that is an empty string (Jim Fehlig),<br />
      enable cgroup cpuset by default (Hu Tao),<br />
      tests: test recent hash addition (Eric Blake),<br />
      Add test cases for parsing of list values (Stefan Berger),<br />
      Extend NWFilter parameter parser to cope with lists of values (Stefan Berger),<br />
      Create rules for each member of a list (Stefan Berger),<br />
      Rework value part of name-value pairs (Stefan Berger),<br />
      Add test cases (Stefan Berger),<br />
      Interleave jumping into chains with filtering rules in 'root' table (Stefan Berger),<br />
      Extend rule priorities into negative numbers (Stefan Berger),<br />
      Enable chains with names having a known prefix (Stefan Berger),<br />
      Extend the filter XML to support priorities of chains (Stefan Berger),<br />
      Use the actual names of chains in data structure (Stefan Berger),<br />
      Use scripting for cleaning and renaming of chains (Stefan Berger),<br />
      Make filter creation in root table more flexible (Stefan Berger),<br />
      Introduce an internal priority for chains (Stefan Berger),<br />
      Add function to get hash table's key/value pairs (Stefan Berger),<br />
      Add support for systemd init service (Daniel P. Berrange),<br />
      Add support for interfaces with type=direct to LXC (Daniel P. Berrange),<br />
      Allow creation of plain macvlan devices (Daniel P. Berrange),<br />
      Refactor LXC network setup to allow future enhancements (Daniel P. Berrange),<br />
      Add missing 'const' annotations for internal domain conf helpers (Daniel P. Berrange),<br />
      qemu: Generate -numa option (Bharata B Rao),<br />
      XML definitions for guest NUMA and parsing routines (Bharata B Rao),<br />
      virsh: add iface-bridge and iface-unbridge commands (Laine Stump),<br />
      Allow non-blocking message sending on virNetClient (Daniel P. Berrange),<br />
      Refactor code for enabling/disabling I/O callback in remote client (Daniel P. Berrange),<br />
      Split virNetClientSend into 2 methods (Daniel P. Berrange),<br />
      Refactor code for passing the buck in the remote client (Daniel P. Berrange),<br />
      Explicitly track whether the buck is held in remote client (Daniel P. Berrange),<br />
      Remove all linked list handling from remote client event loop (Daniel P. Berrange),<br />
      util: Add netdev helper functions to private symbols (Eli Qiao),<br />
      qemu/rbd: improve rbd device specification (Sage Weil),<br />
      maint: fix build (Stefan Berger),<br />
      Fix error reporting in port profile parsing/formatting APIs (Daniel P. Berrange),<br />
      API: add trivial qemu support for VIR_TYPED_PARAM_STRING (Eric Blake),<br />
      API: remote support for VIR_TYPED_PARAM_STRING (Eric Blake),<br />
      API: add VIR_TYPED_PARAM_STRING (Eric Blake),<br />
      maint: use mailmap, not AUTHORS, for secondary addresses (Eric Blake),<br />
      maint: fix make syntax-check (Stefan Berger),<br />
      nwfilter: simplify execution of ebiptables scripts (Eric Blake),<br />
      Remove usage of brctl command line tool (Daniel P. Berrange),<br />
      Add an API for retrieving the MAC address of an interface (Daniel P. Berrange),<br />
      Expose MTU management APIs (Daniel P. Berrange),<br />
      Turn two int parameters into bools in bridge APIs (Daniel P. Berrange),<br />
      Make all brXXX APIs raise errors, instead of returning errnos (Daniel P. Berrange),<br />
      build: allow for local gnulib diffs (Eric Blake),<br />
      qemu: Fix improper error message for disk detaching (Osier Yang),<br />
      virsh: Add VSH_OFLAG_EMPTY_OK for attach-disk command (Xu He Jie)<br />
      </li><li> Cleanups:<br />
      Remove time APIs from src/util/util.h (Daniel P. Berrange),<br />
      bandwidth: Fix funky identation (Michal Privoznik),<br />
      qemu: fix a const-correctness issue (Eric Blake),<br />
      build: fix accidental POTFILES.in regression (Eric Blake),<br />
      Fix up ordering of private symbols file (Daniel P. Berrange),<br />
      Move ifaceMacvtapLinkDump and ifaceGetNthParent functions (Daniel P. Berrange),<br />
      Move functions for dealing with physical/virtual devices (Daniel P. Berrange),<br />
      Rename APIs for dealing with virtual/physical functions (Daniel P. Berrange),<br />
      Move virNetDevValidateConfig to virnetdev.c (Daniel P. Berrange),<br />
      Rename ifaceCheck to virNetDevValidateConfig (Daniel P. Berrange),<br />
      Move virNetDevGetIPv4Address to virnetdev.c (Daniel P. Berrange),<br />
      Rename ifaceGetIPAddress to virNetDevGetIPv4Address (Daniel P. Berrange),<br />
      Move virNetDevGetIndex &amp; virNetDevGetVLanID to virnetdev.c (Daniel P. Berrange),<br />
      Rename ifaceGetIndex and ifaceGetVLAN (Daniel P. Berrange),<br />
      Move MAC address replacement functions to virnetdev.c (Daniel P. Berrange),<br />
      Rename interface MAC address replacement APIs (Daniel P. Berrange),<br />
      Move the low level macvlan creation APIs (Daniel P. Berrange),<br />
      Rename low level macvlan creation APIs (Daniel P. Berrange),<br />
      Rename high level macvlan creation APIs (Daniel P. Berrange),<br />
      Rename and split the macvtap.c file (Daniel P. Berrange),<br />
      Rename Macvtap management APIs (Daniel P. Berrange),<br />
      Remove ifaceSetMac and ifaceGetMac APIs (Daniel P. Berrange),<br />
      Remove ifaceUp, ifaceDown, ifaceCtrl &amp; ifaceIsUp APIs (Daniel P. Berrange),<br />
      Move LXC veth.c code into shared utility APIs (Daniel P. Berrange),<br />
      Rename the LXC veth management APIs and delete duplicated APIs (Daniel P. Berrange),<br />
      Split src/util/network.{c,h} into 5 pieces (Daniel P. Berrange),<br />
      Rename virVirtualPortProfileParams &amp; APIs (Daniel P. Berrange),<br />
      build: drop useless dirent.h includes (Eric Blake),<br />
      xenapi: remove unused variable (Eric Blake),<br />
      Remove code instantiating filters on direct interfaces (Stefan Berger),<br />
      Adjust naming of network device bandwidth management APIs (Daniel P. Berrange),<br />
      Santize naming of socket address APIs (Daniel P. Berrange),<br />
      Split bridge.h into three separate files (Daniel P. Berrange),<br />
      Rename all brXXXX APIs to follow new convention (Daniel P. Berrange),<br />
      Remove 'brControl' object (Daniel P. Berrange)<br />
      </li></ul>
        <h3>0.9.7: Nov 8 2011</h3>
        <ul><li> Features:<br />
      esx: support vSphere 5.x (Patrice LACHANCE),<br />
      vbox: support for VirtualBox 4.1 (Matthias Bolte),<br />
      Introduce the virDomainOpenGraphics API (Daniel P. Berrange),<br />
      Add AHCI support to qemu driver (Jim Fehlig),<br />
      snapshot: many improvements and 2 new APIs (Eric Blake),<br />
      api: Add public api for 'reset' (Xu He Jie)<br />
      </li><li> Documentation:<br />
      Add &lt;deviceboot&gt; capability. (Philipp Hahn),<br />
      API: document scheduler parameter names (Eric Blake),<br />
      improve typed parameter documentation (Eric Blake),<br />
      fix typo in &lt;disk&gt;/&lt;target&gt; example (Eric Blake),<br />
      python: Fix documentation of virStream recv (Matthias Bolte),<br />
      Add documentation about migration. (Daniel P. Berrange),<br />
      Document filesystem type='block' for LXC (Ryota Ozaki),<br />
      fix incorrect info about routed networks (Laine Stump),<br />
      document managed=yes of hostdev passthrough (Eric Blake),<br />
      trivial spelling fix (Philipp Hahn),<br />
      Fix virt-sanlock-cleanup documentation (Philipp Hahn),<br />
      Fix two comments related to error handling (Philipp Hahn),<br />
      fix network XML documentation (Laine Stump),<br />
      Clarify semantics of virDomainMigrate2 (Jiri Denemark),<br />
      Update examples for probing with systemtap (Daniel P. Berrange),<br />
      fix html bug (Eric Blake),<br />
      virsh: Update the help information for undefine command. (tangchen),<br />
      Document STREQ_NULLABLE and STRNEQ_NULLABLE (Guido Günther),<br />
      Document that ff callbacks need to be invoked from a clean stack. (Guido Günther),<br />
      formatdomain.html.in: fix tickpolicy (Douglas Schilling Landgraf),<br />
      virsh: describe attach-interface parameter target (Daniel Veillard),<br />
      virsh: update man page for cpu_shares parameter (Daniel Veillard),<br />
      document node device XML (Eric Blake),<br />
      document virsh nodedev-* commands (Eric Blake),<br />
      snapshot: fix man page typos (Eric Blake),<br />
      virsh: Better document --copy-storage migrate options (Jiri Denemark),<br />
      virsh: Enhance documentation of commands starting jobs (Jiri Denemark),<br />
      virsh: Improve virsh manual for virsh memtune command (Peter Krempa)<br />
      </li><li> Portability:<br />
      build: fix build on platforms without ptsname_r (Eric Blake),<br />
      build: silence compiler warning on BSD (Eric Blake),<br />
      build: fix linking on BSD (Eric Blake),<br />
      remote: fix mingw32 build (Laine Stump),<br />
      build: fix deep VPATH builds (Eric Blake),<br />
      Use ENAMETOOLONG if the socket path is longer than UNIX_PATH_MAX (Guido Günther),<br />
      build: avoid RHEL 5 build failure on LXC (Eric Blake),<br />
      build: use gnulib fdatasync (Eric Blake),<br />
      Fix virFileOpenTty definition on Win32 (Daniel P. Berrange),<br />
      compile: fix undefined reference to gnutls_x509_crt_get_dn with gcc-4.6.1 (Xu He Jie),<br />
      Fix VPATH build (Jiri Denemark),<br />
      build: fix 'make dist' error (Wen Congyang),<br />
      Fix syntax problem in mingw32-libvirt.spec.in (Daniel P. Berrange),<br />
      spec: mingw cleanups (Eric Blake),<br />
      build: fix mingw build without sasl (Eric Blake),<br />
      build: fix 'make rpm' (Eric Blake),<br />
      build: fix 'make distcheck' (Eric Blake),<br />
      disable xenlight for non-Xen platforms (Dan Horák),<br />
      build: Fix VPATH build with new probes (Jiri Denemark),<br />
      build: fix 'make distcheck' with pdwtags installed (Eric Blake),<br />
      spec: F15 still uses cgconfig, RHEL lacks hyperv (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      Fix sending/receiving of FDs when stream returns EAGAIN (Daniel P. Berrange),<br />
      lxc: avoid use-after-free (Eric Blake),<br />
      conf: Don't free uninitialized pointer (Jiri Denemark),<br />
      Fix default console type setting (Daniel P. Berrange),<br />
      Fix crash formatting virtio console (Daniel P. Berrange),<br />
      Fix off-by-one printing month in logging code (Daniel P. Berrange),<br />
      Add missing param initialization in qemuDomainBlockStatsFlags (Daniel P. Berrange),<br />
      fix crash when starting network (Wen Congyang),<br />
      Don't overwrite error message during VM cleanup (Daniel P. Berrange),<br />
      Correctly handle '*' in /etc/filesystems (Daniel P. Berrange),<br />
      Fix URI alias prefix matching (Wen Ruo Lv),<br />
      ServerClient: Flush cached data (Michal Privoznik),<br />
      Fix storage pool source comparison to avoid comparing with self (Daniel P. Berrange),<br />
      qemu: plug memory leak (Alex Jia),<br />
      qemu: Restore the original states of PCI device when restarting daemon (Osier Yang),<br />
      macvtap: Fix error return value convention/inconsistencies (Roopa Prabhu),<br />
      pci address conflict when virtio disk with drive type (Xu He Jie),<br />
      qemu: plug memory leak (Alex Jia),<br />
      qemu: avoid leaking uninit data from hotplug to dumpxml (Eric Blake),<br />
      util: Fix virUUIDGeneratePseudoRandomBytes (Ryota Ozaki),<br />
      lxc: Revert zeroing count of allocated items if VIR_REALLOC_N fails (Peter Krempa),<br />
      lxc: avoid null deref on lxcSetupLoopDevices failure (Alex Jia),<br />
      lxc: avoid missing '{' in the function (Alex Jia),<br />
      storage: avoid null deref on qemu-img failure (Eric Blake),<br />
      storage: make previous leak less likely to regress (Eric Blake),<br />
      storage: plug iscsi memory leak (Eric Blake),<br />
      qemu: avoid leaking uninit data from hotplug to dumpxml (Eric Blake),<br />
      qemu: Do not wait if the PCI device is not managed when reattaching (Osier Yang),<br />
      Add missing strdup return value check (Roopa Prabhu),<br />
      macvtap: avoid invalid free (Roopa Prabhu),<br />
      util: Fix typo in virGetHostname description (Jiri Denemark),<br />
      macvtap: plug memory leak for 802.1Qbh (Eric Blake),<br />
      qemu: plug memory leak on migration (Eric Blake),<br />
      conf: plug memory leak on error (Eric Blake),<br />
      storage: plug memory leak on error (Eric Blake),<br />
      util: Make getaddrinfo failure nonfatal in virGetHostname (Jiri Denemark),<br />
      qemu: fix text block info parsing (Eric Blake),<br />
      qemu: avoid text monitor null deref (Eric Blake),<br />
      qemu: check for json allocation failure (Eric Blake),<br />
      virFDStream: close also given errfd (fd leak) (Marc-André Lureau),<br />
      command: avoid fd leak on failure (Eric Blake),<br />
      qemu: Check for domain being active on successful job acquire (Michal Privoznik),<br />
      xen: Return tap2 for tap2 disks (Philipp Hahn),<br />
      xen: fix PyGrub boot device order (Philipp Hahn),<br />
      build: fix 'make check' linkage with dtrace (Eric Blake),<br />
      Fix deps for probes.o to ensure correct build ordering (Daniel P. Berrange),<br />
      If receiving a stream error, mark EOF on the stream (Daniel P. Berrange),<br />
      xen_xs: Guard against set but empty kernel argument (Guido Günther),<br />
      snapshot: avoid accidental renames with snapshot-edit (Eric Blake),<br />
      storage: Do not use comma as seperator for lvs output (Osier Yang),<br />
      qemuDomainAttach: Initialize pidfile variable (Michal Privoznik),<br />
      lxc: fix logic bug (Eric Blake),<br />
      Don't send back unknown program errors for async messages (Daniel P. Berrange),<br />
      Fix deadlock when the RPC program is unknown (Daniel P. Berrange),<br />
      remote_driver: Avoid double free in EventControl building (Michal Privoznik),<br />
      xenParseXM: don't dereference NULL pointer when script is empty (Guido Günther),<br />
      qemu: Fix migration with dname (Jiri Denemark),<br />
      virsh: do not unlink NULL file (Marc-André Lureau),<br />
      qemu: Fix error message mentioning VNC instead of SPICE (Peter Krempa),<br />
      qemu: Check for ejected media during startup and migration (Michal Privoznik),<br />
      qemu: add return value check (Alex Jia),<br />
      qemu: Always remove domain object if MigratePrepare fails (Jiri Denemark),<br />
      fix AppArmor driver for pipe character devices (Jamie Strandboge),<br />
      daemon: Don't remove pidfiles in init scripts (Peter Krempa),<br />
      storage: Do not break the whole vol lookup process in the middle (Osier Yang),<br />
      Fix synchronous reading of stream data (Daniel P. Berrange)<br />
      </li><li> Improvements:<br />
      Add missing defaultConsoleTargetType callback for AppArmour (Daniel P. Berrange),<br />
      Fix naming of constant for disk event (Daniel P. Berrange),<br />
      lxc: use common code for process cleanup (Eric Blake),<br />
      Set aliases for LXC/UML console devices (Daniel P. Berrange),<br />
      Default console target type with no &lt;target&gt; element (Daniel P. Berrange),<br />
      Add support for multiple consoles in LXC (Daniel P. Berrange),<br />
      Rewrite LXC I/O forwarding to use main event loop (Daniel P. Berrange),<br />
      Allow multiple consoles per virtual guest (Daniel P. Berrange),<br />
      virnetsockettest: Use a temporary directory in /tmp (Guido Günther),<br />
      xen: allow getting &lt; max typed parameters (Eric Blake),<br />
      lxc: allow getting &lt; max typed parameters (Eric Blake),<br />
      libxl: allow getting &lt; max typed parameters (Eric Blake),<br />
      esx: allow getting &lt; max typed parameters (Eric Blake),<br />
      qemu: allow getting &lt; max typed parameters (Eric Blake),<br />
      Add support for probing filesystem with libblkid (Daniel P. Berrange),<br />
      Fix error message when failing to detect filesystem (Daniel P. Berrange),<br />
      Workaround for broken kernel autofs mounts (Daniel P. Berrange),<br />
      Ensure errno is valid when returning from lxcContainerWaitForContinue (Daniel P. Berrange),<br />
      Create /var/lib/libvirt/filesystems for LXC trees (Daniel P. Berrange),<br />
      esx: Support folders in the path of vpx:// connection URIs (Matthias Bolte),<br />
      qemu: pass virConnectPtr into Domain{Attach,Detach}* (Sage Weil),<br />
      vbox: Support shared folders (Matthias Bolte),<br />
      xenapi: Improve error reporting in xenapiOpen once again (Matthias Bolte),<br />
      Use a common xml type for ceph secret usage. (Josh Durgin),<br />
      storage: add auth to virDomainDiskDef (Josh Durgin),<br />
      secret: add Ceph secret type (Sage Weil),<br />
      Implement RPC driver support for virDomainOpenGraphics (Daniel P. Berrange),<br />
      Extend RPC server to allow FD passing (Daniel P. Berrange),<br />
      Add client side support for FD passing (Daniel P. Berrange),<br />
      Extend RPC protocol to allow FD passing (Daniel P. Berrange),<br />
      Add APIs for virNetSocket for sending/receiving file descriptors (Daniel P. Berrange),<br />
      Wire up QEMU implementation for virDomainOpenGraphics (Daniel P. Berrange),<br />
      Extend graphics event to include UNIX socket (Daniel P. Berrange),<br />
      virsh: Fix error message on vol-create-from failure (Ryota Ozaki),<br />
      bridge: modify for use when sVirt is enabled with qemu (Tyler Coumbes),<br />
      Use virXMLSaveFile when writing XML config (Jiri Denemark),<br />
      Introduce virXMLSaveFile as a wrapper for virFileRewrite (Jiri Denemark),<br />
      Introduce virFileRewrite for safe file rewrite (Jiri Denemark),<br />
      Add a systemtap script for watching QEMU monitor interactions (Daniel P. Berrange),<br />
      qemu: simplify use of HAVE_YAJL (Eric Blake),<br />
      snapshot: simplify indentation of disk encryption xml (Eric Blake),<br />
      snapshot: simplify indentation of nwfilter (Eric Blake),<br />
      Add REMOTE_PROC_DOMAIN_EVENT_DISK_CHANGE to remote_protocol-structs (Daniel P. Berrange),<br />
      nwfilter: extend schema to support new targets (Stefan Berger),<br />
      util: Add virFileAccessibleAs to private symbols (Michal Privoznik),<br />
      startupPolicy: Emit event on disk source dropping (Michal Privoznik),<br />
      qemu: implement startupPolicy (Michal Privoznik),<br />
      qemu: Move device alias assigning before command line construction (Michal Privoznik),<br />
      util: Create virFileAccessibleAs function (Michal Privoznik),<br />
      conf: Introduce optional startupPolicy attribute for cdrom and floppy (Michal Privoznik),<br />
      waitpid: improve safety (Eric Blake),<br />
      virsh: Fix vol-info's 'Type' output (Ryota Ozaki),<br />
      support continue/return targets in nwfilter (David L Stevens),<br />
      snapshot: simplify indentation of network xml (Eric Blake),<br />
      snapshot: simplify indentation of cpu features (Eric Blake),<br />
      snapshot: simplify indentation of sysinfo (Eric Blake),<br />
      snapshot: test domainsnapshot indentation (Eric Blake),<br />
      snapshot: indent domain xml when nesting (Eric Blake),<br />
      virbuf: add auto-indentation support (Eric Blake),<br />
      virbuf: more detailed error reporting (Eric Blake),<br />
      virbuf: improve testsuite reporting (Eric Blake),<br />
      virbuf: fix const-correctness (Eric Blake),<br />
      qemu: allow json in domxml-to-native (tangchen),<br />
      support setting bandwidth from virsh attach-interface (Hu Tao),<br />
      lxc: use hand-rolled code in place of unlockpt and grantpt (Serge E. Hallyn),<br />
      qemu: Test name-space handling (Philipp Hahn),<br />
      qemu: Fix name-space handling (Philipp Hahn),<br />
      Replace virBufferAdd with virBufferAddLit for const string (Daniel P. Berrange),<br />
      Allow for URI aliases when connecting to libvirt (Daniel P. Berrange),<br />
      Add support for autodestroy of guests to the LXC and UML drivers (Daniel P. Berrange),<br />
      Use virBufferEscapeShell in cmdEcho (Guido Günther),<br />
      qemu: replace qemuMonitorEscapeShell by virBufferEscapeShell (Guido Günther),<br />
      virBufferEscapeShell: Emit quotes for the empty string (Guido Günther),<br />
      snapshot: detect when qemu lacks disk-snapshot support (Eric Blake),<br />
      virBufferEscapeShell: Fix escaping of single quotes. (Guido Günther),<br />
      compile: Add a missing function 'pciDeviceListFind' to libvirt_private.syms (Xu He Jie),<br />
      snapshot: implement LIST_LEAVES flag in esx (Eric Blake),<br />
      qemu: Relax -no-shutdown check to [0.14.0, 0.15.0] (Jiri Denemark),<br />
      qemu: Honor the orginal PCI dev properties when reattaching (Osier Yang),<br />
      qemu: Do not reattach PCI device used by other domain when shutdown (Osier Yang),<br />
      Xen: Fake versions in xencapstest (Philipp Hahn),<br />
      Xen: move versions to struct (Philipp Hahn),<br />
      Use virBufferEscapeShell in virNetSocketNewConnectSSH (Guido Günther),<br />
      Add virBufferEscapeShell (Guido Günther),<br />
      Autodetect if the remote nc command supports the -q option (Guido Günther),<br />
      qemu: Make sure BeginJob is always followed by EndJob (Jiri Denemark),<br />
      qemu: Log debug messages when changing job (Jiri Denemark),<br />
      build: add compiler attributes to virUUIDParse (Eric Blake),<br />
      Fix typo in lxc_controller (Serge E. Hallyn),<br />
      build: update to latest gnulib (Eric Blake),<br />
      events: Propose a separate lock for event queue (Michal Privoznik),<br />
      qemu: Implement VIR_DUMP_RESET (Michal Privoznik),<br />
      virDomainCoreDump: Introduce VIR_DUMP_RESET flag (Michal Privoznik),<br />
      example: Support debug output and loop switch (Philipp Hahn),<br />
      example: Redirect --help output to stdout/stderr (Philipp Hahn),<br />
      example: Fix argument handling (Philipp Hahn),<br />
      snapshot: implement LIST_LEAVES flag in qemu (Eric Blake),<br />
      snapshot: add API for filtering by leaves (Eric Blake),<br />
      tests: Add support for skipping tests (Philipp Hahn),<br />
      Introduce &lt;driver&gt; under &lt;filesystem&gt; to support open-by-handle (Harsh Prateek Bora),<br />
      buf: implement generic virBufferEscape (Sage Weil),<br />
      daemon: Always advertise libvirtd service (Osier Yang),<br />
      snapshot: take advantage of new relations (Eric Blake),<br />
      snapshot: track qemu snapshot relations (Eric Blake),<br />
      snapshot: framework for more efficient relation traversal (Eric Blake),<br />
      snapshot: use correct qmp monitor command (Eric Blake),<br />
      snapshot: virsh shorthand for operating on current snap (Eric Blake),<br />
      build: ship helper scripts (Eric Blake),<br />
      Rewrite all the DTrace/SystemTAP probing (Daniel P. Berrange),<br />
      Fix missing lock calls on virNetTLSContextRef (Daniel P. Berrange),<br />
      Refactor TLS to facilitate dynamic probing (Daniel P. Berrange),<br />
      Add virSocketRef API to facilitate dynamic probing (Daniel P. Berrange),<br />
      Make libvirt.so include the RPC server code (Daniel P. Berrange),<br />
      snapshot: implement snapshot children listing in esx (Eric Blake),<br />
      snapshot: implement snapshot children listing in qemu (Eric Blake),<br />
      snapshot: remote protocol for snapshot children (Eric Blake),<br />
      snapshot: virsh fallback for snapshot-list --descendants --from (Eric Blake),<br />
      snapshot: virsh fallback for snapshot-list --from children (Eric Blake),<br />
      snapshot: virsh fallback for snapshot-list --tree --from (Eric Blake),<br />
      snapshot: virsh snapshot-list and children (Eric Blake),<br />
      xen: add error handling to UUID parsing (Guido Günther),<br />
      maint: typo fixes (Eric Blake),<br />
      snapshot: sort snapshot-list --tree (Eric Blake),<br />
      snapshot: simplify redefinition of disk snapshot (Eric Blake),<br />
      snapshot: let virsh edit disk snapshots (Eric Blake),<br />
      snapshot: fix virsh error message typo (Eric Blake),<br />
      qemu: add separate rerror_policy for disk errors (Laine Stump),<br />
      qemu: leave rerror policy at default when enospace is requested (Laine Stump),<br />
      qemu: enable multifunction for older qemu (Eric Blake),<br />
      Make LXC work with new network configuration types (Daniel P. Berrange),<br />
      init: raise default system aio limits (Eric Blake),<br />
      maint: fix minor issues in virterror public header (Eric Blake),<br />
      snapshot: enforce REVERT_FORCE on qemu (Eric Blake),<br />
      snapshot: use qemu-img on disks in use at time of snapshot (Eric Blake),<br />
      snapshot: add REVERT_FORCE to API (Eric Blake),<br />
      snapshot: implement snapshot roots listing in vbox (Eric Blake),<br />
      qemu: Don't fail virDomainGetInfo if we can't update balloon info (Jiri Denemark),<br />
      snapshot: simplify esx snapshot name lookup (Eric Blake),<br />
      snapshot: implement snapshot roots listing in esx (Eric Blake),<br />
      qemu: correct misspelled 'enospc' option, and only use for werror (Laine Stump),<br />
      snapshot: better virsh handling of missing current, parent (Eric Blake),<br />
      Allow passing of command line args to LXC container (Daniel P. Berrange),<br />
      Add support for bandwidth filtering on LXC guests (Daniel P. Berrange),<br />
      network: fill in bandwidth from portgroup for all forward modes (Laine Stump),<br />
      bridge_driver.c: Fix autoconf setting (Neil Wilson),<br />
      Set to NULL members that have been freed to prevent crashes (Marc-André Lureau),<br />
      snapshot: implement getparent for vbox (Eric Blake),<br />
      snapshot: implement getparent for esx (Eric Blake),<br />
      qemu: make PCI multifunction support more manual (Laine Stump),<br />
      lvm storage backend: handle command_names=1 in lvm.conf (Serge E. Hallyn),<br />
      qemu: Check for outstanding async job too (Michal Privoznik),<br />
      virsh: Add 'reset' command for virsh (Xu He Jie),<br />
      remote: Implement 'reset' for remote driver (Xu He Jie),<br />
      qemu: Implement 'reset' for qemu driver (Xu He Jie),<br />
      logging: Add date to log timestamp (Jiri Denemark),<br />
      logging: Do not log timestamp through syslog (Jiri Denemark),<br />
      hyperv: Report an error for acceptable URI schemes with a transport (Matthias Bolte),<br />
      esx: Report an error for acceptable URI schemes with a transport (Matthias Bolte),<br />
      snapshot: implement getparent in qemu (Eric Blake),<br />
      snapshot: add virsh snapshot-list --tree (Eric Blake),<br />
      snapshot: refactor virsh snapshot parent computation (Eric Blake),<br />
      snapshot: remote protocol for getparent (Eric Blake),<br />
      security: properly chown/label bidirectional and unidirectional fifos (Laine Stump),<br />
      qemu: Preserve fakeReboot flag in domain status (Jiri Denemark),<br />
      qemu: Finish domain shutdown on reconnect (Jiri Denemark),<br />
      qemu: Check domain status details when reconnecting monitor (Jiri Denemark),<br />
      virsh: Allow using complete &lt;capabilities&gt; elements with cpu-baseline (Peter Krempa),<br />
      virsh: Allow using domain and capabilities XMLs with cpu-compare (Peter Krempa),<br />
      qemu: add ability to set PCI device "rombar" on or off (Laine Stump),<br />
      qemu: Relax -no-shutdown check to [0.14.0, 0.15.50) (Jiri Denemark),<br />
      virLockManagerNopInit: Rename flags to unused_flags (Michal Privoznik),<br />
      debug: Annotate some variables as unused (Michal Privoznik),<br />
      maint: update authors (Peter Krempa),<br />
      Add unsafe cache mode support for disk driver (Oskari Saarenmaa),<br />
      selinux: Correctly report warning if virt_use_nfs not set (Michal Privoznik),<br />
      virsh: Do not ignore the specified flags for cmdSaveImageDefine (Osier Yang),<br />
      qemu: Transfer inactive XML among cookie (Michal Privoznik)<br />
      </li><li> Cleanups:<br />
      Remove translations in socket test case (Daniel P. Berrange),<br />
      test: drop redundant check (Eric Blake),<br />
      startupPolicty: Minor cleanups (Michal Privoznik),<br />
      secret: fix bad patch application (Eric Blake),<br />
      Remove trailing whitespace from all xfig files (Daniel P. Berrange),<br />
      Fix typo in virFileAccessibleAs (Daniel P. Berrange),<br />
      snapshot: minor cleanups from reviewing indentation (Eric Blake),<br />
      build: ignore test executable (Eric Blake),<br />
      esx: drop dead code to silence Coverity (Eric Blake),<br />
      snapshot: drop dead parameters (Eric Blake),<br />
      qemu: silence Coverity false positive (Eric Blake),<br />
      conf: remove unused VIR_ENUM_DECL (Laine Stump)<br />
      </li></ul>
        <h3>0.9.6: Sep 22 2011</h3>
        <ul><li> Portability:<br />
      build: silence warning on 32-bit build (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      snapshot: fix logic bug in qemu undefine (Eric Blake),<br />
      sanlock: fix memory leak (Eric Blake),<br />
      virsh: fix regression in argv parsing (Eric Blake),<br />
      storage: Wait udev events are handled before removing lvm vol (Osier Yang),<br />
      qemu: avoid dereferencing a NULL pointer (Alex Jia),<br />
      qemu: Avoid loop of fake reboots (Jiri Denemark),<br />
      qemu: Fix shutdown regression with buggy qemu (Jiri Denemark),<br />
      remote: fix crash on OOM (Eric Blake)<br />
      </li><li> Improvements:<br />
      snapshot: also delete empty directory (Eric Blake),<br />
      snapshot: remove snapshot metadata on transient exit (Eric Blake),<br />
      snapshot: prepare to remove transient snapshot metadata (Eric Blake),<br />
      virsh: More friendly err if no pool is specified for looking up a vol (Osier Yang),<br />
      tests: improve test failure diagnosis (Oskari Saarenmaa),<br />
      API: prefer to use NULLSTR macro (Osier Yang),<br />
      xen: use typical allocations (Eric Blake),<br />
      virsh: Remove useless codes of cmdVolPath (Osier Yang)<br />
      </li></ul>
        <h3>0.9.5: Sep 20 2011</h3>
        <ul><li> Features:<br />
      many snapshot improvements (Eric Blake),<br />
      latency: Define new public API and structure (Osier Yang),<br />
      USB2 and various USB improvements (Marc-André Lureau),<br />
      storage: Add fs pool formatting (Osier Yang),<br />
      Add public API for getting migration speed (Jim Fehlig),<br />
      Add basic driver for Microsoft Hyper-V (Matthias Bolte)<br />
      </li><li> Documentation:<br />
      virsh: tweak previous domblkstat patch (Eric Blake),<br />
      virsh: doc: Fix supported driver types for attach-disk command (Peter Krempa),<br />
      doc: Add statment about permissions needed to do a core dump (Peter Krempa),<br />
      snapshot: tweak snapshot-create-as diskspec docs (Eric Blake),<br />
      qemu_api: doc improvements (Eric Blake),<br />
      virsh: Fix command name in man page (Peter Krempa),<br />
      fix incorrect option in send-key (Alex Jia),<br />
      virsh: improve send-key documentation (Eric Blake),<br />
      hyperv: Add basic documentation (Matthias Bolte),<br />
      schedinfo: update man page about virsh schedinfo command (Taku Izumi),<br />
      virsh: Clarify documentation of -d option (Jiri Denemark),<br />
      schedinfo: add missing documentation (Taku Izumi),<br />
      Improve tokenizing of linkable terms (Philipp Hahn),<br />
      Add some docs about the RPC protocol and APIs (Daniel P. Berrange),<br />
      Align table cells on top (Philipp Hahn),<br />
      use IPv6 addresses in range reserved for documentation (Laine Stump),<br />
      describe new virtual switch configuration in network XML docs (Laine Stump)<br />
      </li><li> Portability:<br />
      Update to require sanlock 1.8 for license compliance (Daniel P. Berrange),<br />
      build: work around lack of MacOS fdatasync (Eric Blake),<br />
      python: Fix bindings generated in VPATH build (Jiri Denemark),<br />
      build: storage: Macro 'MKFS' is undefined on some platforms. (Peter Krempa),<br />
      build: storage: Conditionaly compiled structure caused build fail on OSX (Peter Krempa),<br />
      Avoid using "devname" as an identifier. (Peter Krempa),<br />
      mingw: Don't use interface as an identifier (Matthias Bolte),<br />
      esx: Use $(PYTHON) instead of the shebang to run the generator (Matthias Bolte),<br />
      build: work around older systemtap header (Eric Blake),<br />
      build: fix compilation on mingw64 (Eric Blake),<br />
      build: fix virnetsocket on mingw (Eric Blake),<br />
      build: fix virpidfile on mingw (Eric Blake),<br />
      maint: fix some compilation issues on non-linux platforms (part 2) (Stefan Berger),<br />
      maint: fix some compilation issues on non-linux platforms (Stefan Berger),<br />
      Fix detection of GnuTLS 1.x.y (Matthias Bolte)<br />
      </li><li> Bug Fixes:<br />
      Fix crash on events due to allocation errors (Daniel Veillard),<br />
      conf: Assign newDef of active domain as persistent conf if it is NULL (Osier Yang),<br />
      storage: Ensure the device path exists before refreshing disk pool (Osier Yang),<br />
      daemon: Error and exit if specified value for timeout is not valid (Osier Yang),<br />
      vmx: avoid memory leak (ajia@redhat.com),<br />
      util: avoid memory leak (ajia@redhat.com),<br />
      remote: avoid memory leak (ajia@redhat.com),<br />
      qemu: avoid memory leak (ajia@redhat.com),<br />
      daemon: avoid memory leak (ajia@redhat.com),<br />
      Prevent crash from dlclose() of libvirt.so (Daniel P. Berrange),<br />
      qemu: add return value check (Alex Jia),<br />
      Avoid crash on restart if running guest has filterref (Stefan Berger),<br />
      conf: avoid memory leak on virDomainDefParseXML (Alex Jia),<br />
      Fix build after commit 829bce17 (Jim Fehlig),<br />
      conf: add missing break in virDomainAuditRedirdev (Marc-André Lureau),<br />
      snapshot: ABI stability must include memory sizing (Eric Blake),<br />
      make: Fix 'make syntax-check' failing. (Peter Krempa),<br />
      snapshot: fix double free of qemuImgBinary (Guannan Ren),<br />
      virnetsocket: Pass KRB5CCNAME env variable (Michal Privoznik),<br />
      Fix URL-escaping for domainDefine (Philipp Hahn),<br />
      snapshot: fix regression with system checkpoints (Eric Blake),<br />
      Don't treat pci_system_init failure as fatal if no PCI bus is present (Soren Hansen),<br />
      rpc: avoid memory leak on virNetTLSContextValidCertificate (Alex Jia),<br />
      tests: avoid memory leak on testTLSSessionInit (Alex Jia),<br />
      libxl: avoid a dereference of a null pointer (Alex Jia),<br />
      blockinfo: fix qemu regression in handling disk name (Eric Blake),<br />
      esx: Fix managed object lookup with optional occurrence (Matthias Bolte),<br />
      Threadpool: Initialize new dynamic workers (Michal Privoznik),<br />
      Default USB device is on slot 1 function 2 (Marc-André Lureau),<br />
      Fix localtime handling for Xen-PV domains (Philipp Hahn),<br />
      snapshot: fix corner case on OOM during creation (Eric Blake),<br />
      API: Init conn in case of it might be used uninitialized (Osier Yang),<br />
      qemu: detect incomplete save files (Eric Blake),<br />
      reserve slot 1 on pci bus0 (Wen Congyang),<br />
      libvirtd: create run dir when running at non-root user (Xu He Jie),<br />
      Don't overwrite errors from xend_{get,req} (Jim Fehlig),<br />
      virsh: avoid memory leak on cmdVolCreateAs (Alex Jia),<br />
      Fix tracking of RPC messages wrt streams (Daniel P. Berrange),<br />
      Avoid use-after-free on streams, due to message callbacks (Daniel P. Berrange),<br />
      Fix parted sector size assumption (Daniel P. Berrange),<br />
      qemu: Fix a regression of domain save (Osier Yang),<br />
      lxc: Fix incorrect changes on error codes. (Osier Yang),<br />
      Stop libxl driver polluting logs on non-Xen hosts (Daniel P. Berrange),<br />
      Fix memory leak parsing 'relabel' attribute in domain security XML (Daniel P. Berrange),<br />
      Fix memory leak dispatching domain events (Daniel P. Berrange),<br />
      Don't leak memory if a cgroup is mounted multiple times (Daniel P. Berrange),<br />
      stream: remove redundant reference to client while sending stream data (Guannan Ren),<br />
      Fix sanlock socket security labelling (Daniel P. Berrange),<br />
      Fix incorrect path length check in sanlock lockspace setup (Daniel P. Berrange),<br />
      snapshot: forbid snapshot on autodestroy domain (Eric Blake),<br />
      Fix error detection in device change (Philipp Hahn),<br />
      qemu: properly label outgoing pipe for tunneled migration (Eric Blake),<br />
      Fix persistent migration config save (KAMEZAWA Hiroyuki),<br />
      rpc: Don't close connection if program is unknown (Jiri Denemark),<br />
      remote: Refuse connecting to remote socket (Michal Privoznik),<br />
      Detect errors from the 'sendkey' command (Daniel P. Berrange),<br />
      qemu: Correctly label migration TCP socket (Jiri Denemark),<br />
      Do not try to cancel non-existent migration on source (Jiri Denemark),<br />
      snapshot: don't leak resources on qemu snapshot failure (Eric Blake),<br />
      Fix command test wrt gnutls initialize &amp; fix debugging (Daniel P. Berrange),<br />
      daemon: Move TLS initialization to virInitialize (Michal Privoznik),<br />
      util: only fchown newly created files in virFileOpenAs (Laine Stump),<br />
      qemu: fix off-by-one in pci slot reservation (Shradha Shah),<br />
      pci: fix pciDeviceListSteal on multiple devices (Shradha Shah),<br />
      qemu: Report error if qemu monitor command not found for BlockJob (Osier Yang),<br />
      send-key: fix scan keycode map (KAMEZAWA Hiroyuki),<br />
      storage: Flush host cache after write (Michal Privoznik),<br />
      daemon: initialize GnuTLS (Michal Privoznik),<br />
      Ensure async packets never get marked for sync replies (Daniel P. Berrange),<br />
      Don't attempt to read from a stream if it is closed (Daniel P. Berrange),<br />
      qemu: Init reattaching related members of pciDevice before reattach (Osier Yang),<br />
      Fix race condition in abort of stream (Daniel P. Berrange),<br />
      Ensure client streams are closed when marking a client for close (Daniel P. Berrange),<br />
      Ensure stream is aborted when exiting console (Daniel P. Berrange),<br />
      daemon: Add early libvirtd start verbose errors. (Peter Krempa),<br />
      qemu: error message should show uri instead of (null) (Peter Krempa),<br />
      libvirtd.init.in: stop/restart()       wrong return value in case of failure (Douglas Schilling Landgraf),<br />
      daemon: Fix regression of libvirtd reloading support (Osier Yang),<br />
      virsh: fix logic bug (Eric Blake),<br />
      storage: Directory shouldn't be listed as type 'file' (Peter Krempa),<br />
      network: eliminate potential memory leak on parse failure (Laine Stump),<br />
      nwfilter: tolerate disappearing interfaces while instantiating filter (Stefan Berger),<br />
      qemu: Fix -chardev udp if parameters are omitted (Cole Robinson),<br />
      managedsave: prohibit use on transient domains (Eric Blake),<br />
      Check stdoutWatch before removing the handler. (Juerg Haefliger),<br />
      Fix memory leak while scanning snapshots (Philipp Hahn),<br />
      build: fix regression in large file support (Eric Blake),<br />
      Don't mount /dev for application containers (Daniel P. Berrange),<br />
      qemu: avoid crash on process attach (Eric Blake),<br />
      rpc:fix sasl session relocking intead of unlocking it (Guannan Ren),<br />
      daemon: Unlink unix socket paths on shutdown (Osier Yang)<br />
      </li><li> Improvements:<br />
      Remove devname identifier from autogenerated RPC code (Peter Krempa),<br />
      maint: Prefer names over email in 'git shortlog' (Eric Blake),<br />
      virsh: Add more human-friendly output of domblkstat command (Peter Krempa),<br />
      spec: silence warnings when installing in F16 (Eric Blake),<br />
      snapshot: allow disk snapshots of qcow2 disks (Eric Blake),<br />
      snapshot: affect persistent xml after disk snapshot (Eric Blake),<br />
      qemu: Introduce shutdown reason for paused state (Jiri Denemark),<br />
      qemu: Prevent disk corruption on domain shutdown (Jiri Denemark),<br />
      qemu: Properly detect crash of a rebooted domain (Jiri Denemark),<br />
      qemu: Fix shutoff reason when domain crashes (Jiri Denemark),<br />
      rpc: convert unknown procedures to VIR_ERR_NO_SUPPORT (Eric Blake),<br />
      python: Fix libvirt.py generation to include virterror info (Cole Robinson),<br />
      sanlock: add missing test command in virt-sanlock-cleanup.in (Alex Jia),<br />
      spec: Require augeas for sanlock (Michal Privoznik),<br />
      Use max bandwidth from qemuDomainObjPrivate struct when migrating (Jim Fehlig),<br />
      Set qemu migration speed unlimited when migrating to file (Jim Fehlig),<br />
      Save migration speed in qemuDomainMigrateSetMaxSpeed (Jim Fehlig),<br />
      Impl virDomainMigrateGetMaxSpeed in qemu driver (Jim Fehlig),<br />
      Store max migration bandwidth in qemuDomainObjPrivate struct (Jim Fehlig),<br />
      network: add missing exports (Eric Blake),<br />
      xml: Clean up rest of virtual XML document names for XML strings (Peter Krempa),<br />
      qemu_api: Update libvirt spec file (Osier Yang),<br />
      qemu_api: Update Makefile to generate libvirtmod_qemu lib (Osier Yang),<br />
      qemu_api: Update Py binding generator to generate files for QEMU APIs (Osier Yang),<br />
      qemu_api: Add override XML and C files for QEMU APIs (Osier Yang),<br />
      qemu_api: Add comments for API virDomainQemuMonitorCommand (Osier Yang),<br />
      qemu_api: Update Makefile for subdir docs (Osier Yang),<br />
      qemu_api: Modify apibuild.py to generate docs for QEMU APIs (Osier Yang),<br />
      Do not log invalid operations in libvirtd logs (Daniel Veillard),<br />
      selinux: Detect virt_use_nfs boolean set (Michal Privoznik),<br />
      xml: Change virtual file names of xml documents parsed in memory (Peter Krempa),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      snapshot: use new API for less work (Eric Blake),<br />
      snapshot: new APIs for inspecting snapshot object (Eric Blake),<br />
      virsh: fix typo in opts_send_key (Alex Jia),<br />
      link-state: virsh: Add wrapper commands for changing link state (Peter Krempa),<br />
      link-state: qemu: Add net intf modification to virUpdateDeviceFlags (Peter Krempa),<br />
      link-state: qemu: Add monitor handling for link state modification (Peter Krempa),<br />
      link-state: conf: Add element to XML for controling link state (Peter Krempa),<br />
      link-state: util: Add equality comparison functions for structures (Peter Krempa),<br />
      XML: Improve XML parsing error messages (Peter Krempa),<br />
      redirdev: allows to specify device address (Marc-André Lureau),<br />
      latency: Update virsh command domblkstat to use new API (Osier Yang),<br />
      latency: Expose the new API for Python binding (Osier Yang),<br />
      latency: Implemente internal API for qemu driver (Osier Yang),<br />
      latency: Update monitor functions for new latency fields (Osier Yang),<br />
      latency: Wire up the remote protocol (Osier Yang),<br />
      latency: Implemente the public API (Osier Yang),<br />
      latency: Define the internal driver callback (Osier Yang),<br />
      qemu: Deal with stucked qemu on daemon startup (Michal Privoznik),<br />
      qemu: Introduce job queue size limit (Michal Privoznik),<br />
      daemon: Create priority workers pool (Michal Privoznik),<br />
      snapshot: use SELinux and lock manager with external snapshots (Eric Blake),<br />
      snapshot: wire up live qemu disk snapshots (Eric Blake),<br />
      snapshot: wire up new qemu monitor command (Eric Blake),<br />
      snapshot: make it possible to audit external snapshot (Eric Blake),<br />
      snapshot: reject unimplemented disk snapshot features (Eric Blake),<br />
      snapshot: wire up disk-only flag to snapshot-create (Eric Blake),<br />
      snapshot: add flag for requesting disk snapshot (Eric Blake),<br />
      snapshot: add virsh domblklist command (Eric Blake),<br />
      snapshot: also support disks by path (Eric Blake),<br />
      snapshot: add &lt;disks&gt; to snapshot xml (Eric Blake),<br />
      snapshot: support extra state in snapshots (Eric Blake),<br />
      snapshot: expose halt-after-creation in virsh (Eric Blake),<br />
      snapshot: allow halting after snapshot (Eric Blake),<br />
      snapshot: expose new delete flag in virsh (Eric Blake),<br />
      snapshot: introduce new deletion flag (Eric Blake),<br />
      snapshot: reject transient disks where code is not ready (Eric Blake),<br />
      snapshot: additions to domain xml for disks (Eric Blake),<br />
      Check for source conflicts in storage pools (Lei Li),<br />
      Add a usb1 &amp; usb2 qemuxml2argv test (Marc-André Lureau),<br />
      PIIX3 USB controller is on function 2 (Marc-André Lureau),<br />
      snapshot: store qemu domain details in xml (Eric Blake),<br />
      snapshot: update rng to support full domain in xml (Eric Blake),<br />
      snapshot: correctly escape generated xml (Eric Blake),<br />
      snapshot: allow full domain xml in snapshot (Eric Blake),<br />
      snapshot: refactor domain xml output (Eric Blake),<br />
      snapshot: prevent migration from stranding snapshot data (Eric Blake),<br />
      snapshot: support new undefine flags in qemu (Eric Blake),<br />
      snapshot: cache qemu-img location (Eric Blake),<br />
      snapshot: refactor some qemu code (Eric Blake),<br />
      snapshot: teach virsh about new undefine flags (Eric Blake),<br />
      snapshot: prevent stranding snapshot data on domain destruction (Eric Blake),<br />
      snapshot: add qemu snapshot redefine support (Eric Blake),<br />
      snapshot: add qemu snapshot creation without metadata (Eric Blake),<br />
      snapshot: improve virsh snapshot-create, add snapshot-edit (Eric Blake),<br />
      snapshot: refactor virsh snapshot creation (Eric Blake),<br />
      snapshot: allow recreation of metadata (Eric Blake),<br />
      snapshot: identify qemu snapshot roots (Eric Blake),<br />
      snapshot: reflect new dumpxml and list options in virsh (Eric Blake),<br />
      snapshot: identify which snapshots have metadata (Eric Blake),<br />
      snapshot: let qemu discard only snapshot metadata (Eric Blake),<br />
      snapshot: allow deletion of just snapshot metadata (Eric Blake),<br />
      snapshot: simplify acting on just children (Eric Blake),<br />
      snapshot: track current domain across deletion of children (Eric Blake),<br />
      snapshot: avoid crash when deleting qemu snapshots (Eric Blake),<br />
      snapshot: speed up snapshot location (Eric Blake),<br />
      snapshot: add snapshot-list --parent to virsh (Eric Blake),<br />
      snapshot: fine-tune qemu snapshot revert states (Eric Blake),<br />
      snapshot: properly revert qemu to offline snapshots (Eric Blake),<br />
      snapshot: improve reverting to qemu paused snapshots (Eric Blake),<br />
      snapshot: fine-tune qemu saved images starting paused (Eric Blake),<br />
      snapshot: expose --running and --paused in virsh (Eric Blake),<br />
      snapshot: fine-tune ability to start paused (Eric Blake),<br />
      snapshot: better events when starting paused (Eric Blake),<br />
      Learn to use spicevmc as a redirection type for usb-redir (Marc-André Lureau),<br />
      Add "redirdev" redirection device (Marc-André Lureau),<br />
      qemu: Don't append 0 at usb id, so that it is compatible with legacy -usb (Marc-André Lureau),<br />
      qemu: don't reserve slot 1 if a PIIX3 USB controller is defined there (Marc-André Lureau),<br />
      Modify USB port to be defined as a port path (Marc-André Lureau),<br />
      Add USB companion controllers support (Marc-André Lureau),<br />
      USB devices gain a new USB address child element (Marc-André Lureau),<br />
      test: USB controller can have a PCI address child element (Marc-André Lureau),<br />
      Add a new controller type 'usb' with optionnal 'model' (Marc-André Lureau),<br />
      Add USB controller models (Marc-André Lureau),<br />
      Rename virDomainControllerModel to virDomainControllerModelSCSI (Marc-André Lureau),<br />
      Add various USB devices QEMU_CAPS (Marc-André Lureau),<br />
      tests: add missing files (Eric Blake),<br />
      Add directsync cache mode support for disk driver (Osier Yang),<br />
      storage: Add virsh support for fs pool formating (Osier Yang),<br />
      storage: Add mkfs and libblkid to build system (Osier Yang),<br />
      qemu: refactor file opening (Eric Blake),<br />
      lxc: do not require 'ifconfig' or 'ipconfig' in container (Scott Moser),<br />
      Create ptmx as a device (Serge Hallyn),<br />
      BlockPull: Set initial bandwidth limit if specified (Adam Litke),<br />
      BlockJob: Bandwidth parameter is in MB when using text monitor (Adam Litke),<br />
      Increase size of buffer for xend response (Jim Fehlig),<br />
      virsh: support 'virsh start --force-boot' on older servers (Eric Blake),<br />
      build: fix 'make check' with pdwtags (Eric Blake),<br />
      virsh: Expose virDomainMigrateGetMaxSpeed API (Jim Fehlig),<br />
      virsh: prefer unsigned flags (Eric Blake),<br />
      storage: Fix incorrect error codes (Osier Yang),<br />
      remote: Fix incorrect error codes (Osier Yang),<br />
      nodeinfo: Fix incorrect error codes (Osier Yang),<br />
      conf: Substitute OPERATION_INVALID with INTERNAL_ERROR (Osier Yang),<br />
      start: allow discarding managed save (Eric Blake),<br />
      build: simplify use of verify (Eric Blake),<br />
      rpc: fix a typo in debugging log in virNetServerProgramSendStreamData (Guannan Ren),<br />
      maint: fix spelling errors on lose (Eric Blake),<br />
      Fix generator to cope with call-by-ref long types (Jim Fehlig),<br />
      hyperv: Add OpenWSMAN based client for the Hyper-V WMI API (Matthias Bolte),<br />
      hyperv: Add driver skeleton (Matthias Bolte),<br />
      hyperv: Add configure check for OpenWSMAN (Matthias Bolte),<br />
      virterror: Fix error message for VIR_ERR_INVALID_ARG (Michal Privoznik),<br />
      Fix keymap used to talk with QEMU (Daniel P. Berrange),<br />
      security: Introduce SetSocketLabel (Jiri Denemark),<br />
      security: Rename SetSocketLabel APIs to SetDaemonSocketLabel (Jiri Denemark),<br />
      Ignore unused streams in virStreamAbort (Jiri Denemark),<br />
      snapshot: track current snapshot across restarts (Eric Blake),<br />
      snapshot: only pass snapshot to qemu command line when reverting (Eric Blake),<br />
      libvirt: log all flags parameters (Eric Blake),<br />
      virsh: add list --managed-save (Eric Blake),<br />
      esx: Refactor a repeated string in the generator (Matthias Bolte),<br />
      maint: fix comment typos (Eric Blake),<br />
      virsh: Substitute goto label out with cleanup (Osier Yang),<br />
      virsh: Do not try to free domain if it is NULL (Osier Yang),<br />
      xen: Cleanup improper VIR_ERR_NO_SUPPORT use (Osier Yang),<br />
      storage: Cleanup improper VIR_ERR_NO_SUPPORT use (Osier Yang),<br />
      remote: Cleanup improper VIR_ERR_NO_SUPPORT use (Osier Yang),<br />
      qemu: Cleanup improper VIR_ERR_NO_SUPPORT use (Osier Yang),<br />
      nodeinfo: Cleanup improper VIR_ERR_NO_SUPPORT use (Osier Yang),<br />
      lxc: Cleanup improper VIR_ERR_NO_SUPPORT use (Osier Yang),<br />
      conf: Cleanup improper use of VIR_ERR_NO_SUPPORT in node_device_conf (Osier Yang),<br />
      qemu: Substitute VIR_ERR_NO_SUPPORT with VIR_ERR_OPERATION_INVALID (Osier Yang),<br />
      virsh: Print error if specified bandwidth is invalid for blockjob (Osier Yang),<br />
      virsh: properly interleave shared stdout and stderr (Eric Blake),<br />
      maint: simplify lots of libxml2 clients (Eric Blake),<br />
      xml: add another convenience function (Eric Blake),<br />
      maint: treat more libxml2 functions as free-like (Eric Blake),<br />
      test: rewrite test to match change in behavior (Eric Blake),<br />
      build: fix typo in recent test patch (Eric Blake),<br />
      vmware: Allow to undefine a running domain (Osier Yang),<br />
      uml: Allow to undefine a running domain (Osier Yang),<br />
      test: Allow to undefine a running domain (Osier Yang),<br />
      qemu: Allow to undefine a running domain (Osier Yang),<br />
      openvz: Allow to undefine a running domain (Osier Yang),<br />
      lxc: Allow to undefine a running domain (Osier Yang),<br />
      libxl: Allow to undefine a running domain. (Osier Yang),<br />
      qemu: Get memory balloon info correctly for text monitor (Osier Yang),<br />
      qemu: disk migration verbose progress (Tom Vijlbrief),<br />
      virsh: concatenate qemu-monitor-command arguments (Eric Blake),<br />
      virsh: tweak misleading wording (Eric Blake),<br />
      Tweak debugging message in RPC client code (Daniel P. Berrange),<br />
      maint: add missing symbols (Stefan Berger),<br />
      macvtap: Fix getPhysfn to get the PF of a direct attach network interface (Roopa Prabhu),<br />
      interface: Add functions to get sriov PF/VF relationship of a net interface (Roopa Prabhu),<br />
      pci: Add helper functions for sriov devices (Roopa Prabhu),<br />
      pci: Move some pci sriov helper code out of node device driver to util/pci (Roopa Prabhu),<br />
      qemu: support event_idx parameter for virtio disk and net devices (Laine Stump),<br />
      qemu: Use fd: protocol for migration (Jiri Denemark),<br />
      qemu: Use virNetSocket for tunneled migration (Jiri Denemark),<br />
      qemu: Refactor do{Tunnel,Native}Migrate functions (Jiri Denemark),<br />
      Support changing UNIX socket owner in virNetSocketNewListenUNIX (Jiri Denemark),<br />
      Add backlog parameter to virNetSocketListen (Jiri Denemark),<br />
      Add API for duplicating a socket/client file descriptor (Daniel P. Berrange),<br />
      Swap virDomain / virDomainSnapshot declaration (Philipp Hahn),<br />
      build: fix recent build failures (Eric Blake),<br />
      Convert libvirtd to use crash-safe pidfile APIs (Daniel P. Berrange),<br />
      Add some APIs which use locking for crashsafe pidfile handling (Daniel P. Berrange),<br />
      Introduce functions for checking whether a pidfile is valid (Daniel P. Berrange),<br />
      Move pidfile functions into util/virpidfile.{c,h} (Daniel P. Berrange),<br />
      Add virFileLock and virFileUnlock APIs (Daniel P. Berrange),<br />
      vbox, xenapi: add virDomainUndefineFlags (Eric Blake),<br />
      virsh: don't reject undefine on active domain (Eric Blake),<br />
      virsh: Add dir type for listing volumes with vol-list (Peter Krempa),<br />
      virsh: add snapshot-parent (Eric Blake),<br />
      virsh: add virsh snapshot-current --name (Eric Blake),<br />
      virsh: fix snapshot-create-as to handle arbitrary names (Eric Blake),<br />
      qemu: minor formatting cleanup (Eric Blake),<br />
      Allow use of file images for LXC container filesystems (Daniel P. Berrange),<br />
      Fix typo in LXC cgroups setup error message (Daniel P. Berrange),<br />
      Allow use of block devices for guest filesystem (Daniel P. Berrange),<br />
      qemu: Avoid overwriting errors from virGetHostname (Jiri Denemark),<br />
      network: eliminate lag in updating dnsmasq hosts files (Laine Stump),<br />
      build: update to latest gnulib (Eric Blake)<br />
      </li><li> Cleanups:<br />
      maint: ignore generated files (Eric Blake),<br />
      Remove two references to files not generated (Daniel Veillard),<br />
      latency: fix make check for remote protocol structs and numbers (Daniel Veillard),<br />
      security: fix build (Eric Blake),<br />
      Remove bogus virSecurityManagerSetProcessFDLabel method (Daniel P. Berrange),<br />
      libvirt: avoid dead store in virDomainMigrateVersion3 (Alex Jia),<br />
      qemu: avoid dead store in doPeer2PeerMigrate3 (Alex Jia),<br />
      maint: ignore generated file (Eric Blake),<br />
      maint: ignore generated file (Eric Blake),<br />
      maint: let emacs avoid tabs in rng files (Eric Blake),<br />
      virsh: fix dead store (Eric Blake),<br />
      qemu: silence clang false positive (Eric Blake),<br />
      qemu: avoid dead store in qemuMonitorTextBlockJob (Alex Jia),<br />
      qemu: avoid dead store in qemuProcessStart (Alex Jia)<br />
      </li></ul>
        <h3>0.9.4: Aug 3 2011</h3>
        <ul><li>Features:<br />
      bandwidth QoS control (Michal Privoznik),<br />
      Add new API virDomainBlockPull* (Adam Litke),<br />
      save: new API to manipulate save file images (Eric Blake),<br />
      CPU bandwidth limits support (Wen Congyang),<br />
      allow to send NMI and key event to guests (Lai Jiangshan),<br />
      new API virDomainUndefineFlags (Osier Yang),<br />
      Implement code to attach to external QEMU instances. (Daniel P. Berrange),<br />
      various missing python binding (Hu Tao and Lai Jiangshan),<br />
      bios: Add support for SGA (Michal Privoznik)
      </li><li>Documentation:<br />
      doc: fix confusing statement about required privileges (Eric Blake),<br />
      doc: fix incorrect option in blockjob (Alex Jia),<br />
      Correct the default value of lock_manager in qemu.conf (Guannan Ren),<br />
      libvirt.c: Update outdated description of flags (Michal Privoznik),<br />
      qemu: Improve docs for virsh dump format (Osier Yang),<br />
      qemu: improve thread documentation (Eric Blake),<br />
      doc: Add doc for blockpull and blockjob commands (Osier Yang),<br />
      Fix incorrect implication about list options (Dave Allan),<br />
      Fix typos in virsh.pod file (Daniel P. Berrange),<br />
      network: Fix typo (Osier Yang),<br />
      Break up 'Basic Resources' XML section (Cole Robinson),<br />
      driver.h: Fix two driver documentation mistakes (Wieland Hoffmann),<br />
      doc: Add documentation for new cputune elements period and quota (Wen Congyang),<br />
      doc: Correct documents for iface commands (Osier Yang),<br />
      improve virsh man page synopses (Eric Blake),<br />
      Fix spice documentation typo (Michal Privoznik),<br />
      document dxml argument to migrate2 (Eric Blake),<br />
      website: Point main page links to libvirt driver pages (Dave Allan),<br />
      maint: fix typos (Eric Blake),<br />
      mention EMOTIVE as a libvirt-using app (Eric Blake),<br />
      virsh: Update virsh man page (Supriya Kannery),<br />
      Fix virsh inject-nmi man page (KAMEZAWA Hiroyuki),<br />
      virsh: make destroy sound less scary (Eric Blake),<br />
      minor whitespace cleanups (Eric Blake),<br />
      Add documentation for the seclabel XML element (Daniel P. Berrange)
      </li><li>Portability:<br />
      build: fix include path for cygwin (Eric Blake),<br />
      build: avoid non-portable shell in test setup (Eric Blake),<br />
      tests: Don't use bash if we don't have to (Matthias Bolte),<br />
      freebsd: Fix build problem due to picking up the wrong libvirt.h (Matthias Bolte),<br />
      freebsd: Avoid /bin/true in commandtest (Matthias Bolte),<br />
      freebsd: Add gnulib environ module for the commandtest (Matthias Bolte),<br />
      build: support warnings on RHEL 5 (Eric Blake),<br />
      Build: fix build if HAVE_AVAHI is not defined (Stefan Berger),<br />
      sysinfo: Don't try to run dmidecode on archs missing it (Michal Privoznik),<br />
      udev: Don't try to dump DMI on non-intel archs (Michal Privoznik),<br />
      Fix build when using polkit0 (Jim Fehlig),<br />
      Fix rpm build with sanlock and without QEmu (Daniel Veillard),<br />
      Skip some xen tests if xend is not running (Jim Fehlig),<br />
      build: fix virBufferVasprintf on mingw (Eric Blake),<br />
      Fix compilation of statstest.c during make check (Jim Fehlig),<br />
      Fix compilation error when SASL support is disabled (Jean-Baptiste Rouault),<br />
      tests: Disable networkxml2argvtest when configured without network (Matthias Bolte)
      </li><li>Bug Fixes:<br />
      util: plug memory leak (Eric Blake),<br />
      rpc: avoid null deref (Eric Blake),<br />
      qemu: avoid memory leaks (Eric Blake),<br />
      qemu: plug child process leak on domain core dump (Eric Blake),<br />
      conf: avoid memory leak on disk operations (Eric Blake),<br />
      rpc: avoid crash on error (Eric Blake),<br />
      qemu: avoid null deref on block pull error (Eric Blake),<br />
      rpc: correctly process sasl whitelist globs (Eric Blake),<br />
      screenshot: don't unlink bogus file (Eric Blake),<br />
      python: avoid unlikely sign extension bug (Eric Blake),<br />
      rpc: avoid uninitialized memory use (Eric Blake),<br />
      rpc: avoid double close on error (Eric Blake),<br />
      qemu: Unlink temporary file on failure (Michal Privoznik),<br />
      rpc: avoid libvirtd crash on unexpected client close (Eric Blake),<br />
      virsh: fix memory leak in cmdNetworkInfo (Alex Jia),<br />
      openvz: detect when a domain was shut down from the inside (Jean-Baptiste Rouault),<br />
      qemu: fix crash when mixing sync and async monitor jobs (Eric Blake),<br />
      qemu: fix return value issue (Alex Jia),<br />
      qemu: fix return value issue in qemuDomainSetMemoryParameters (Alex Jia),<br />
      virsh: Fix vol-name and vol-pool commands (Matthias Bolte),<br />
      qemu: Fix a regression of domjobabort (Osier Yang),<br />
      conf: Don't leak the virtual port profile in virNetworkDefFree (Matthias Bolte),<br />
      network: don't forward DNS requests from isolated networks (Laine Stump),<br />
      virsh: avoid missing zero value judgement in cmdBlkiotune (Alex Jia),<br />
      qemu: fix nested job with driver lock held (Eric Blake),<br />
      qemu: Fix memory leak on metadata fetching (Michal Privoznik),<br />
      virsh: fix memory leak in cmdVolPath code (Alex Jia),<br />
      rpc: Fix memory leak in remoteDomainSet*Parameters functions (Matthias Bolte),<br />
      qemu: Recover from interrupted migration (Jiri Denemark),<br />
      python: Properly report errors if virStreamRecv fails (Cole Robinson),<br />
      Fix race in ref counting when handling RPC jobs (Daniel P. Berrange),<br />
      Fix build with gnutls 1.0.x branch (Daniel P. Berrange),<br />
      Add libtasn1-devel as a BuildRequires for libvirt.spec (Daniel P. Berrange),<br />
      Add mutex protection to SASL and TLS modules (Daniel P. Berrange),<br />
      Report error if unable to bind to any socket (Daniel P. Berrange),<br />
      Fix leak of mDNS object in virNetServer (Daniel P. Berrange),<br />
      Fix memory leaks in MDNS code (Daniel P. Berrange),<br />
      python: Handle embedded NUL in stream.send data (Cole Robinson),<br />
      Catch dnsmasq start failures (Guido Günther),<br />
      Fix import of private key with older gnutls (Daniel P. Berrange),<br />
      Fix TLS context tests with expired certs (Daniel P. Berrange),<br />
      Honour filesystem readonly flag &amp; make special FS readonly (Daniel P. Berrange),<br />
      xenapi: Fix double-freeing the session in xenapiClose (Matthias Bolte),<br />
      remote: Fix forgotten comma (Michal Privoznik),<br />
      qemu: fix error message with migrate2 xml (Eric Blake),<br />
      command: avoid leaking fds across fork (Eric Blake),<br />
      error: preserve errno when saving last error (Eric Blake),<br />
      Fix uninitialized variable in QEMU CPU bandwidth code (Daniel P. Berrange),<br />
      fix make syntax-check error (Wen Congyang),<br />
      rpc: Pass through DISPLAY so ssh can launch askpass (Cole Robinson),<br />
      Don't try to close a NULL virNetClientPtr (Guannan Ren),<br />
      Honour key usage/purpose criticality flag (Daniel P. Berrange),<br />
      Fix reporting of errors for p2p migration (Daniel P. Berrange),<br />
      Use a virFreeCallback on virNetSocket to ensure safe release (Daniel P. Berrange),<br />
      Add mutex locking and reference counting to virNetSocket (Daniel P. Berrange),<br />
      util: avoid fds leak when virEventPollAddHandle fail (Alex Jia),<br />
      virsh: avoid double free of domain (Alex Jia),<br />
      build: Fix protocol-structs check in VPATH build (Jiri Denemark),<br />
      Fix now dead cleanup of VMs on libvirtd restart (Daniel P. Berrange),<br />
      qemu: Fix a regression of attaching device (Osier Yang),<br />
      storage: Avoid memory leak on metadata fetching (Michal Privoznik),<br />
      qemu: Don't overwrite errors by closefd in error paths (Jiri Denemark),<br />
      qemu: Save domain status ASAP after creating qemu process (Jiri Denemark),<br />
      util: Avoid duplicating virFileOpenAsNoFork in virFileOpenAs (Jiri Denemark),<br />
      virsh: fix missing prompt message for 'snapshot-delete' command (Nan Zhang),<br />
      Ensure signal handler propagates fatal signals to default handler (Daniel P. Berrange),<br />
      qemu: Fix monitor unlocking in some error paths (Jiri Denemark),<br />
      esx: Initialize all instances of esxVMX_Data to zero (Matthias Bolte),<br />
      qemu: avoid fd leak on core dump failure (Eric Blake),<br />
      domain_conf: Free temporary variable (Michal Privoznik),<br />
      esx: Fix a potential crash (Osier Yang),<br />
      remote: Fix memory leak (Alex Jia),<br />
      kill vm if saving config failed in v3 protocol (Wen Congyang),<br />
      Don't exit if the libvirtd config does not exist (Daniel P. Berrange),<br />
      Fix sending of reply to final RPC message (Daniel P. Berrange),<br />
      Fix leak of remote driver if final 'CLOSE' RPC call fails (Daniel P. Berrange),<br />
      Fix release of outgoing stream confirmation/abort message (Daniel P. Berrange),<br />
      Fix leak of 'msg' object in client stream code (Daniel P. Berrange),<br />
      Fix potential crash in libvirtd with active streams (Daniel P. Berrange),<br />
      Fix mistaken order of server cert/key parameters in constructor (Daniel P. Berrange),<br />
      util: Don't try to fchown files opened as non-root (Jiri Denemark),<br />
      qemu: Don't chown files on NFS share if dynamic_ownership is off (Michal Privoznik),<br />
      python: Fix bogus label placement (Matthias Bolte),<br />
      util: close the ioctl socket at the end of if(Get|Set)MacAddress (Laine Stump),<br />
      pci: initialize state values on reattach (Guannan Ren),<br />
      qemu: Fix virFileMakePath error handling in snapshot creation (Matthias Bolte),<br />
      storage: Do not override the exact error of createRawFile (Osier Yang)
      </li><li>Improvements:<br />
      build: allow caching the input to STATIC_ANALYSIS (Eric Blake),<br />
      fdstream: drop delete argument (Eric Blake),<br />
      save: generate idempotent inactive xml for running domain (Eric Blake),<br />
      conf: make 'vnet' prefix a macro (Eric Blake),<br />
      utils: More useful error message for hook script failure (Osier Yang),<br />
      tests: Unify style of test skipping code (Matthias Bolte),<br />
      save: let qemu driver manipulate save files (Eric Blake),<br />
      save: support qemu modifying xml on domain save/restore (Eric Blake),<br />
      xen: make direct call when there is only one subdriver (Eric Blake),<br />
      xen: reduce callback special cases (Eric Blake),<br />
      xen: cleanup callback struct (Eric Blake),<br />
      libxl: fix build failure due to change in virDomainGraphicsDef (Laine Stump),<br />
      qemu: support type=network in domain graphics &lt;listen&gt; (Laine Stump),<br />
      conf: add &lt;listen&gt; subelement to domain &lt;graphics&gt; element (Laine Stump),<br />
      python: add python binding for virDomainSetMemoryParameters (Hu Tao),<br />
      python: add python binding for virDomainGetMemoryParameters (Hu Tao),<br />
      python: add python binding for virDomainSetBlkioParameters (Hu Tao),<br />
      python: add python binding for virDomainGetBlkioParameters (Hu Tao),<br />
      virsh: expose change-protection during migration (Eric Blake),<br />
      send-key: Implement Python API (Lai Jiangshan),<br />
      qemu: Remove special case for virDomainAbortJob (Jiri Denemark),<br />
      qemu: Remove special case for virDomainSuspend (Jiri Denemark),<br />
      qemu: Remove special case for virDomainMigrateSetMaxDowntime (Jiri Denemark),<br />
      qemu: Remove special case for virDomainMigrateSetMaxSpeed (Jiri Denemark),<br />
      qemu: Remove special case for virDomainBlockStats (Jiri Denemark),<br />
      qemu: Remove special case for virDomainGetBlockInfo (Jiri Denemark),<br />
      qemu: Migration job on source daemon (Jiri Denemark),<br />
      qemu: Migration job on destination daemon (Jiri Denemark),<br />
      qemu: Implement migration job phases (Jiri Denemark),<br />
      bandwidth: Integrate bandwidth into portgroups (Michal Privoznik),<br />
      tools: format percent strings of nodecpustats (Alex Jia),<br />
      set cpu bandwidth for the vm (Wen Congyang),<br />
      virsh: use faster bit search (Eric Blake),<br />
      virsh: make vcpucount use --current consistently (Eric Blake),<br />
      vcpu: teach getVcpusFlags about current (Eric Blake),<br />
      util: change virFile*Pid functions to return &lt; 0 on failure (Laine Stump),<br />
      rename cfs_* to vcpu_* (Wen Congyang),<br />
      python: add Python binding for virDomainGetVcpuPinInfo API (Taku Izumi),<br />
      python: add Python binding for virDomainPinVcpusFlags API (Taku Izumi),<br />
      python: add Python binding for virDomainGetSchedulerParametersFlags API (Taku Izumi),<br />
      python: add Python binding for virDomainGetSchedulerParametersFlags API (Taku Izumi),<br />
      tests: detect gnutls errors (Eric Blake),<br />
      bandwidth: Add domain schema and xml2xml tests (Michal Privoznik),<br />
      bandwidth: Add test cases for network (Michal Privoznik),<br />
      bandwidth: Implement functions to enable and disable QoS (Michal Privoznik),<br />
      bandwidth: Create format functions (Michal Privoznik),<br />
      bandwidth: Add parsing and free functions (Michal Privoznik),<br />
      bandwidth: Declare internal structures (Michal Privoznik),<br />
      bandwidth: Define schema and create documentation (Michal Privoznik),<br />
      network: provide internal API to return IP of a network (Laine Stump),<br />
      util: add an ifaceGetIPAddress to the interface utilities (Laine Stump),<br />
      Pre-create /var/lib/libvirt/sanlock directory (Daniel P. Berrange),<br />
      Refactor mounting of special filesystems (Daniel P. Berrange),<br />
      Pull code for doing a bind mount into separate method (Daniel P. Berrange),<br />
      Fix typos in daemon config file from previous commit (Daniel P. Berrange),<br />
      Add a test case for certificate validation (Daniel P. Berrange),<br />
      Allow certificate sanity checking to be disabled (Daniel P. Berrange),<br />
      remote/ssh: optional "keyfile" parameter. (Oskari Saarenmaa),<br />
      util: make interface.c functions consistently return &lt; 0 on error (Laine Stump),<br />
      Refactor the certification validation code (Daniel P. Berrange),<br />
      Remove call to deprecated gnutls_certificate_type_set_priority (again) (Daniel P. Berrange),<br />
      Ensure that libvirtd shuts down if initialization fails (Daniel P. Berrange),<br />
      Asynchronous event for BlockJob completion (Adam Litke),<br />
      Enable virDomainBlockPull in the python API (Adam Litke),<br />
      Enable the virDomainBlockPull API in virsh (Adam Litke),<br />
      Implement virDomainBlockPull for the qemu driver (Adam Litke),<br />
      Add virDomainBlockPull support to the remote driver (Adam Litke),<br />
      virDomainBlockPull: Implement the main entry points (Adam Litke),<br />
      save: add virsh commands for manipulating save files (Eric Blake),<br />
      save: wire up remote protocol (Eric Blake),<br />
      save: support bypass-cache flag in libvirt-guests init script (Eric Blake),<br />
      save: support bypass-cache flag in qemu.conf (Eric Blake),<br />
      save: support BYPASS_CACHE during qemu save/restore (Eric Blake),<br />
      save: add virFileDirectFd wrapper type (Eric Blake),<br />
      save: let iohelper work on O_DIRECT fds (Eric Blake),<br />
      save: let iohelper handle inherited fd (Eric Blake),<br />
      save: support --xml to virsh save/restore (Eric Blake),<br />
      save: add --bypass-cache flag to virsh save/restore operations (Eric Blake),<br />
      save: wire up trivial save/restore flags implementations (Eric Blake),<br />
      error: add new error type for reflecting partial API support (Eric Blake),<br />
      network: internal API functions to manage assignment of physdev to guest (Laine Stump),<br />
      qemu: use virDomainNetGetActual*() in qemuDomainXMLToNative (Laine Stump),<br />
      qemu: use virDomainNetGetActual*() functions where appropriate (Laine Stump),<br />
      network: separate Start/Shutdown functions for new network types (Laine Stump),<br />
      conf: support abstracted interface info in network XML (Laine Stump),<br />
      conf: support abstracted interface info in domain interface XML (Laine Stump),<br />
      conf: virDomainNetDef points to (rather than contains) virtPortProfile (Laine Stump),<br />
      conf: put virtPortProfile struct / functions in a common location (Laine Stump),<br />
      destroy: Implement internal API for xenapi driver (Michal Privoznik),<br />
      destroy: Implement internal API for xen driver (Michal Privoznik),<br />
      destroy: Implement internal API for vmware driver (Michal Privoznik),<br />
      destroy: Implement internal API for vbox driver (Michal Privoznik),<br />
      destroy: Implement internal API for uml driver (Michal Privoznik),<br />
      destroy: Implement internal API for phyp driver (Michal Privoznik),<br />
      destroy: Implement internal API for openvz driver (Michal Privoznik),<br />
      destroy: Implement internal API for lxc driver (Michal Privoznik),<br />
      destroy: Implement internal API for libxl driver (Michal Privoznik),<br />
      destroy: Implement internal API for ESX driver (Michal Privoznik),<br />
      destroy: Implement internal API for qemu driver (Michal Privoznik),<br />
      destroy: Wire up the remote protocol (Michal Privoznik),<br />
      destroy: Define new public API virDomainDestroyFlags (Michal Privoznik),<br />
      save: wire up remote protocol (Eric Blake),<br />
      save: new public API to bypass file system cache on save/restore (Eric Blake),<br />
      build: rename files.h to virfile.h (Eric Blake),<br />
      command: move all docs into .c file (Eric Blake),<br />
      rpc: Make the dispatch generator handle 'void name(void)' style procedures (Matthias Bolte),<br />
      python: Fix makefile rule for code generation (Matthias Bolte),<br />
      qemu: Implement cfs_period and cfs_quota's modification (Wen Congyang),<br />
      qemu: Implement period and quota tunable XML configuration and parsing (Wen Congyang),<br />
      Update XML Schema for new entries (Wen Congyang),<br />
      cgroup: Implement cpu.cfs_period_us and cpu.cfs_quota_us tuning API (Wen Congyang),<br />
      Introduce the function virCgroupForVcpu (Wen Congyang),<br />
      qemu: send-key: Implement the driver methods (Lai Jiangshan),<br />
      send-key: Expose the new API in virsh (Lai Jiangshan),<br />
      util: add virtkeycode module (Lai Jiangshan),<br />
      util: Add keymaps.csv (Lai Jiangshan),<br />
      Fix checking of key usage/purpose data (Daniel P. Berrange),<br />
      Fix mixed up error messages when reporting TLS certificate problems (Daniel P. Berrange),<br />
      undefine: Extend virsh undefine to support the new flag (Osier Yang),<br />
      undefine: Implement undefineFlags for all other drivers (Osier Yang),<br />
      undefine: Implement internal API for libxl driver (Osier Yang),<br />
      undefine: Implement internal API for qemu driver (Osier Yang),<br />
      undefine: Wire up the remote protocol (Osier Yang),<br />
      undefine: Define the new API (Osier Yang),<br />
      Add sanity checking of basic constraints, key purpose &amp; key usage (Daniel P. Berrange),<br />
      Add some basic sanity checking of certificates before use (Daniel P. Berrange),<br />
      Add an explicit virNetClientClose method (Daniel P. Berrange),<br />
      Add some debugging for virNetClient reference counting (Daniel P. Berrange),<br />
      build: detect doc generation failure (Eric Blake),<br />
      Unregister event callback if a fatal error occurs during dispatch (Daniel P. Berrange),<br />
      Quieten build &amp; ensure API build scripts exit with non-zero status (Daniel P. Berrange),<br />
      virsh: Extend virsh dominfo to display if managed save image exists (Osier Yang),<br />
      libvirt: do not mix internal flags into public API (Eric Blake),<br />
      rpc: Fix typos in rpc generator scripts (Osier Yang),<br />
      build: also track RPC on-wire enum values (Eric Blake),<br />
      build: add syntax check for proper flags use (Eric Blake),<br />
      xen: reject unknown flags (Eric Blake),<br />
      esx: reject unknown flags (Eric Blake),<br />
      virsh: improve option handling (Eric Blake),<br />
      flags: fix domain_conf migration regression (Eric Blake),<br />
      flags: fix qemu migration regression (Eric Blake),<br />
      flags: use common dumpxml flags check (Eric Blake),<br />
      add --cache, --serial, --shareable and --address to attach-disk (Hu Tao),<br />
      Fix error message for missing TLS write function (Daniel P. Berrange),<br />
      Fix reporting of cert validation failures (Daniel P. Berrange),<br />
      Fix error code for storage operations (Dave Allan),<br />
      setvcpus: add "--current" option to "virsh setvcpus" (Taku Izumi),<br />
      setvcpus: extend qemuDomainSetVcpusFlags() to support current flag (Taku Izumi),<br />
      setvcpus: extend virDomainSetVcpusFlags API to support current flag (Taku Izumi),<br />
      Add domain events support to UML driver (Daniel P. Berrange),<br />
      virnetsocket: use new API for uniform child cleanup (Eric Blake),<br />
      fdstream: avoid child process leak on error (Eric Blake),<br />
      command: introduce virPidWait, virPidAbort (Eric Blake),<br />
      update apparmor security driver for new udev paths (Jamie Strandboge),<br />
      xenapi: Improve error reporting in xenapiOpen (Matthias Bolte),<br />
      build: fix VPATH build of todo (Eric Blake),<br />
      build: check for virnetprotocol on-the-wire stability (Eric Blake),<br />
      build: disable some drivers when building without libvirt daemon (Wen Congyang),<br />
      build: avoid ATTRIBUTE_UNUSED in headers (Eric Blake),<br />
      remote: prefer unsigned flags (Eric Blake),<br />
      conf: delete unused flags arguments (Eric Blake),<br />
      virsh: fix previous patch (Jiri Denemark),<br />
      virsh: Make "DEBUG" loglevel the superset (Supriya Kannery),<br />
      virsh: Avoid using magic numbers for logging (Supriya Kannery),<br />
      build: don't hand-roll cloexec code (Eric Blake),<br />
      conf: prefer unsigned flags (Eric Blake),<br />
      python: prefer unsigned flags (Eric Blake),<br />
      node_device: avoid implicit int (Eric Blake),<br />
      virsh, daemon: prefer unsigned flags (Eric Blake),<br />
      xenapi: reject unknown flags (Eric Blake),<br />
      vmware: reject unknown flags (Eric Blake),<br />
      vbox: reject unknown flags (Eric Blake),<br />
      uml: reject unknown flags (Eric Blake),<br />
      test: reject unknown flags (Eric Blake),<br />
      qemu: reject unknown flags (Eric Blake),<br />
      phyp: reject unknown flags (Eric Blake),<br />
      openvz: reject unknown flags (Eric Blake),<br />
      lxc: reject unknown flags (Eric Blake),<br />
      libxl: reject unknown flags (Eric Blake),<br />
      qemu: build failed due to unused variables (Peter Krempa),<br />
      storage: reject unknown flags (Eric Blake),<br />
      node_device: reject unknown flags (Eric Blake),<br />
      util: reject unknown flags, and prefer unsigned flags (Eric Blake),<br />
      libvirt-qemu: use unsigned flags (Eric Blake),<br />
      maint: print flags in hex during debug (Eric Blake),<br />
      maint: exclude more files from syntax check (Eric Blake),<br />
      util: honor anchored names when searching for executables (Eric Blake),<br />
      Remove unused virNetServerProgramErrorHander typedef (Daniel P. Berrange),<br />
      qemu: Consolidate qemuMigrationPrepare{Direct,Tunnel} (Jiri Denemark),<br />
      qemu: Add support for job phase (Jiri Denemark),<br />
      qemu: Recover from interrupted jobs (Jiri Denemark),<br />
      qemu: Save job type in domain status XML (Jiri Denemark),<br />
      qemu: Allow all query commands to be run during long jobs (Jiri Denemark),<br />
      qemu: Consolidate {Enter,Exit}Monitor{,WithDriver} (Jiri Denemark),<br />
      qemu: Consolidate BeginJob{,WithDriver} into a single method (Jiri Denemark),<br />
      qemu: Separate job related data into a new object (Jiri Denemark),<br />
      maint: avoid incremental 'make syntax-check' failure (Eric Blake),<br />
      Skip bugs which are CLOSED in todo list (Daniel P. Berrange),<br />
      Add missing cleanup for transient guests in UML driver (Daniel P. Berrange),<br />
      Add auditing to the UML driver (Daniel P. Berrange),<br />
      Add auditing to the LXC driver (Daniel P. Berrange),<br />
      Add virtualization type in audit messages (Daniel P. Berrange),<br />
      Add auditing of filesystems (Daniel P. Berrange),<br />
      Move qemu_audit.h helpers into shared code (Daniel P. Berrange),<br />
      rpc: Fix compile error due to potentially unused parameter (Matthias Bolte),<br />
      Add monitor API for checking whether KVM is enabled (Daniel P. Berrange),<br />
      Add a method for extracting QEMU argv from /proc (Daniel P. Berrange),<br />
      Change extract pidfile &amp; monitor config from QEMU command line (Daniel P. Berrange),<br />
      Keep pidfile path in qemuDomainObjPrivate struct (Daniel P. Berrange),<br />
      Add a new 'virsh qemu-attach' command. (Daniel P. Berrange),<br />
      Define remote wire protocol &amp; impls for virDomainQemuAttach (Daniel P. Berrange),<br />
      Define a QEMU specific API to attach to a running QEMU process (Daniel P. Berrange),<br />
      qemu: update configuration file (Alex Jia),<br />
      maint: rename virtaudit to match file contents (Eric Blake),<br />
      remote/ssh: support for no_verify. (Oskari Saarenmaa),<br />
      build: also check qemu_protocol for on-the-wire stability (Eric Blake),<br />
      build: avoid requiring -lm (Eric Blake),<br />
      Remove code no longer used after commit df0b57a9 (Jim Fehlig),<br />
      Add domain type checking (Matthias Bolte),<br />
      tests: simplify formatting (Eric Blake),<br />
      Do not drop kernel cmdline for xen pv domains (Jim Fehlig),<br />
      RPC: fix argument's name (Wen Congyang),<br />
      fix typo error (Wen Congyang),<br />
      vbox: Fix logic in storage driver open function (Matthias Bolte),<br />
      tests: Improve output of tests that decide to skip at runtime (Matthias Bolte),<br />
      tests: Fix compressed test output padding logic (Matthias Bolte),<br />
      tests: Use EXIT_AM_SKIP instead of 77 directly (Matthias Bolte),<br />
      rpc: Fix whitespace problem in generated code (Matthias Bolte),<br />
      sanlock: avoid lockspace setup when auto_disk_lease is off (Federico Simoncelli),<br />
      libvirtd: diagnose explicitly requested but missing conf file (Eric Blake),<br />
      qemu: clean up OOM checks (Michael Santos),<br />
      graphics: add support for action_if_connected in qemu (Michal Privoznik),<br />
      microblaze: Add architecture support (John Williams),<br />
      util: drop unused safezero argument (Eric Blake),<br />
      conf: prefer unsigned int for flags (Eric Blake),<br />
      drivers: prefer unsigned int for flags (Eric Blake),<br />
      public API: prefer unsigned int for flags (Eric Blake),<br />
      maint: print flags in hex during debug (Eric Blake),<br />
      build: use gnulib pthread_sigmask (Eric Blake),<br />
      util: rename err_exit to cleanup in interface.c (Laine Stump),<br />
      sysinfo: delete unnecessary white space of sysinfo. (Minoru Usui),<br />
      util: add virTrimSpaces (Eric Blake),<br />
      util: fix virSkipSpaces (Eric Blake),<br />
      Reduce code duplication in virFileMakePath(Helper) (Matthias Bolte),<br />
      apparmor: Finish incomplete renaming of relabel to norelabel (Matthias Bolte),<br />
      Fix default value of security label 'relabel' attribute (Daniel P. Berrange),<br />
      Fix return value semantic of virFileMakePath (Matthias Bolte),<br />
      nodedev: Let check_fc_host_linux report errors to the caller (Matthias Bolte),<br />
      xml: create an RNG file for common types and move some definitions there (Laine Stump),<br />
      docs: sort the file list in the schemas Makefile (Laine Stump),<br />
      qemu: check flags in qemuDomainGetXMLDesc (Laine Stump),<br />
      conf: fix domain parse flags (Laine Stump),<br />
      conf: Fix declaration of virNetworkDNS(Hosts)Def struct (Matthias Bolte),<br />
      Allow for resource relabelling with static labels (Daniel P. Berrange),<br />
      Allow a base label to be specified in dynamic labelling mode (Daniel P. Berrange)
      </li><li>Cleanups:<br />
      qemu: silence coverity false positives (Eric Blake),<br />
      interface: drop dead code (Eric Blake),<br />
      rpc: silence coverity false positives (Eric Blake),<br />
      build: silence coverity false positives (Eric Blake),<br />
      qemu: remove dead code (Eric Blake),<br />
      maint: add missing copyright notices (Eric Blake),<br />
      xen: drop unused callbacks (Eric Blake),<br />
      build: avoid type-punning compiler warning (Eric Blake),<br />
      tests: fix compilation failures (Eric Blake),<br />
      build: Use $(PYTHON) instead of python for the keycode map generator (Matthias Bolte),<br />
      build: fix bugs with destroyFlags patches (Eric Blake),<br />
      util: define MAX (Laine Stump),<br />
      maint: fix typos on guaranteed (Eric Blake),<br />
      build: fix broken build (Eric Blake),<br />
      maint: fix spelling of Red Hat (Eric Blake),<br />
      tests: Fix virshtest failure after dominfo changed (Osier Yang)
      </li></ul>
        <h3>0.9.3: Jul 4 2011</h3>
        <ul><li> Features:<br />
      vcpupin: introduce the new libvirt API (virDomainGetVcpupinInfo) (Taku Izumi),<br />
      Add TXT record support for virtual DNS service (Michal Novotny),<br />
      Support reboots with the QEMU driver (Daniel P. Berrange),<br />
      Introduce virDomainGetControlInfo API (Jiri Denemark),<br />
      virNodeGetMemoryStats: Expose new API (Minoru Usui),<br />
      virNodeGetCPUTime: Implement public API (Minoru Usui),<br />
      send-key: Defining the public API (Lai Jiangshan),<br />
      vcpupin: introduce a new libvirt API (virDomainPinVcpuFlags) (Taku Izumi),<br />
      support multifunction PCI device (Wen Congyang),<br />
      lxc: various improvements (Cole Robinson)
      </li><li> Documentation:<br />
      Add documentation for configuration lock managers (Daniel P. Berrange),<br />
      fix indentation of sub-elements of &lt;ip&gt; in network XML (Laine Stump),<br />
      document correct flag name (Eric Blake),<br />
      documenting the 802.1Qbh parameters of a 'direct' interface (David S. Wang),<br />
      Make virConnectClose comply to apibuild.py expectations (Matthias Bolte),<br />
      fix docs to match behavior of virConnectClose (Eric Blake),<br />
      numatune: Add doc for new numatune XML (Osier Yang),<br />
      Fix documentation of virStreamRecv (Matthias Bolte),<br />
      updated list of applications using libvirt. (Ohad Levy),<br />
      improve VIR_DOMAIN_AFFECT_CURRENT description (Eric Blake),<br />
      Add doc for video element (Osier Yang),<br />
      Make hvsupport.pl pick up the host device drivers (Matthias Bolte)
      </li><li> Portability:<br />
      Explicitly invoke python for API doc generator (Daniel Veillard),<br />
      fix virParseVersionString with linux 3.0 (Scott Moser),<br />
      Add conditionals to allow build without SASL (Daniel P. Berrange),<br />
      Add missing include of signal.h in virnetsocket.c (Daniel P. Berrange),<br />
      Fix compilation with systemtap 1.3 (Matthias Bolte),<br />
      build: fix mingw build (Eric Blake),<br />
      daemon: Fix build without polkit (Jiri Denemark),<br />
      build: fix 'make check' when pdwtags is available (Eric Blake),<br />
      build: sanlock-devel is not in F15 yet (Eric Blake),<br />
      Only include parthelper if built with storage_disk (Ruben Kerkhof),<br />
      build: fix VPATH builds (Eric Blake),<br />
      python: Don't declare Py_ssize_t for Python 2.6 (Matthias Bolte),<br />
      build: avoid python 2.4 build failure (Eric Blake),<br />
      build: fix NUMA build on RHEL 5 (Eric Blake),<br />
      build: avoid python 2.4 build failure (Eric Blake),<br />
      build: avoid compiler failure (Eric Blake),<br />
      build: fix compilation on systems missing libnl and new includes (Stefan Berger),<br />
      configure: Make libnl optional unless macvtap is required (Matthias Bolte),<br />
      build: require newer netcf when it is available (Eric Blake),<br />
      build: fix building error when building without libvirtd (Wen Congyang),<br />
      Skip nodeinfo test on non intel architectures (Guido Günther),<br />
      Fix dlopen dependency (Matthias Bolte),<br />
      virt-aa-helper: add missing include (Eric Blake)
      </li><li> Bug Fixes:<br />
      initialize pointer to NULL (Wen Congyang),<br />
      storage: avoid crash on parse error (Eric Blake),<br />
      vmware: avoid null deref on failed lookup (Eric Blake),<br />
      qemu: avoid null deref on low memory (Eric Blake),<br />
      rpc: avoid memory leak on error (Eric Blake),<br />
      rpc: fix logic bug (Eric Blake),<br />
      pci: avoid memory leak on error (Eric Blake),<br />
      interface: avoid memory leak on parse error (Eric Blake),<br />
      libvirtd: avoid memory leak on OOM (Eric Blake),<br />
      build: avoid double-close bug with pipe2 (Eric Blake),<br />
      rpc: avoid freeing uninitialized variable (Eric Blake),<br />
      virsh: avoid uninitialized variable (Eric Blake),<br />
      virsh: avoid integer overflow (Eric Blake),<br />
      Fix stream procedure number for virDomainMigratePrepareTunnel3 (Daniel P. Berrange),<br />
      Fix release of virNetMessagePtr instances in streams processing (Daniel P. Berrange),<br />
      Fix potential crash when saving guests (Daniel P. Berrange),<br />
      Fix uninitialized value in QEMU monitor FD sending code (Daniel P. Berrange),<br />
      Fix leak of JSON object for events (Daniel P. Berrange),<br />
      Fix use of uninitialized memory when releasing PCI slots (Daniel P. Berrange),<br />
      Fix leak of virStreamPtr object with callback added in fdstream impl (Daniel P. Berrange),<br />
      Fix leak of mdnsGroupName in virNetServer object (Daniel P. Berrange),<br />
      Fix release of filtered stream messages (Daniel P. Berrange),<br />
      save domain status after modifying vcpupin (Wen Congyang),<br />
      Fix memory leak in virDomainVcpuPinDel() (Wen Congyang),<br />
      sysinfo: fix illegal NULL return (Minoru Usui),<br />
      Fix locking wrt virNetClientStreamPtr object (Daniel P. Berrange),<br />
      Avoid referencing NULL pointer when copying stream error (Daniel P. Berrange),<br />
      Avoid free'ing a filtered RPC message in the server (Daniel P. Berrange),<br />
      Ensure empty payload is written upon stream completion (Daniel P. Berrange),<br />
      Fix propagation of RPC errors from streams (Daniel P. Berrange),<br />
      Fix crash when aborting a stream from a I/O callback (Daniel P. Berrange),<br />
      dnsmasq: Fix errno handling and don't unlink non-existing files (Matthias Bolte),<br />
      tests: Fix memory leak in virnetmessagetest (Osier Yang),<br />
      conf: Fix memory leak in virNetworkDNSDefFormat (Osier Yang),<br />
      sysinfo: fix parsing regression (Eric Blake),<br />
      remote: fix uninitialized variable (Eric Blake),<br />
      build: avoid uninitialized variable (Eric Blake),<br />
      buf: protect against integer overflow (Eric Blake),<br />
      remote: protect against integer overflow (Eric Blake),<br />
      Fix typo in libvirt_private.syms (Matthias Bolte),<br />
      Fix some bugs in RPC protocol make rules (Daniel P. Berrange),<br />
      Fix job type set in qemuMigrationPrepareDirect/PrepareTunnel (Daniel P. Berrange),<br />
      Avoid high privileges taint warning for QEMU session driver (Daniel P. Berrange),<br />
      util: Fix memory leak in virJSONParserHandleStartMap (Osier Yang),<br />
      qemu: Fix memory leak in qemuProcessWaitForMonitor (Osier Yang),<br />
      storage: fix volDelete return when volume still being allocated (Matthew Booth),<br />
      Fix use-after-free in handling domain taint flags (Daniel P. Berrange),<br />
      qemu: Fix one memory leak (Osier Yang),<br />
      virsh: avoid bogus description (Eric Blake),<br />
      set and restore MAC address of a NIC when using PASSTHROUGH mode (Dirk Herrendoerfer),<br />
      conf: Fix one memory leak (Osier Yang),<br />
      Add missing checks for NULL in domain lock manager (Daniel P. Berrange),<br />
      Fix errno return in safezero() (Daniel P. Berrange),<br />
      Fix allocation of veth's to not skip an index (Daniel P. Berrange),<br />
      command: avoid double close (Eric Blake),<br />
      qemu: Fix parsing 'info chardev' (Cole Robinson),<br />
      vcpupin: Fix cpu affinity setting bug of qemu driver (Taku Izumi),<br />
      daemon: plug memory leak (Eric Blake),<br />
      qemu: add missing break statement (Eric Blake),<br />
      storage: avoid mishandling backing store &gt; 2GB (Eric Blake)

      </li><li> Improvements:<br />
      tests: Add a general util test (Matthias Bolte),<br />
      util: choose whether to require micro in version strings (Eric Blake),<br />
      build: consistently use CFLAGS (Eric Blake),<br />
      build: simplify sanlock distribution (Eric Blake),<br />
      build: allow 'make syntax-check' on fresh checkout (Eric Blake),<br />
      Send back an error if we get unexpected stream control message (Daniel P. Berrange),<br />
      Add test case for parsing JSON docs (Daniel P. Berrange),<br />
      Remove bogus warning message in JSON code (Daniel P. Berrange),<br />
      Ensure RPC message is cleared before being reused (Daniel P. Berrange),<br />
      Fix hardcoded limit on client requests in RPC code (Daniel P. Berrange),<br />
      tests: Add valgrind.supp into EXTRA_DIST (Osier Yang),<br />
      virsh: Fix a problem of buildPoolXML (Osier Yang),<br />
      lock qemu_driver early in qemuGetSchedulerParametersFlags() (Wen Congyang),<br />
      build: avoid pod2man on tarball (Eric Blake),<br />
      Ensure that EOF is dispatched to the stream callback (Daniel P. Berrange),<br />
      Improve two log messages in virNetMessage (Daniel P. Berrange),<br />
      Lower logging level when failing to register socket watch (Daniel P. Berrange),<br />
      screenshot: Set access rights to temporary file (Michal Privoznik),<br />
      maint: improve makefile whitespace (Eric Blake),<br />
      network: Don't ignore errors in dnsmasq config file creation (Matthias Bolte),<br />
      network: Fix dnsmasq hostsfile creation logic and related tests (Matthias Bolte),<br />
      build: update translated files (Eric Blake),<br />
      Support automatic creation of leases for disks in sanlock (Daniel P. Berrange),<br />
      Support loading a configuration file for sanlock plugin (Daniel P. Berrange),<br />
      Allow per-driver config file for lock manager plugins (Daniel P. Berrange),<br />
      network: add domain to unqualified names defined with &lt;host&gt; (Laine Stump),<br />
      Convert libvirtd over to the new RPC handling APIs (Daniel P. Berrange),<br />
      Convert the remote driver to new RPC client APIs (Daniel P. Berrange),<br />
      Add XDR_CFLAGS to libvirt-net-rpc.la library (Daniel P. Berrange),<br />
      Ensure sanlock socket is labelled with the VM process label (Daniel P. Berrange),<br />
      Add a virSecurityManagerSetProcessFDLabel (Daniel P. Berrange),<br />
      Rename virSecurityManagerSetFDLabel method (Daniel P. Berrange),<br />
      Add node prefix to virNodeGet(CPU|Memory)Stats structs and defines (Matthias Bolte),<br />
      qemu: Fix update device for CURRENT + FORCE flags (Jiri Denemark),<br />
      nwfilter: Return error message about unresolvable variables (Stefan Berger),<br />
      build: rename Vcpupin to VcpuPin (Eric Blake),<br />
      sysinfo: cleanup function/struct names. (Minoru Usui),<br />
      sysinfo: fix lack of error check in virSysinfoFormat(). (Minoru Usui),<br />
      tests: Partly fix networkxml2argvtest being configure result dependent (Matthias Bolte),<br />
      qemu: Remove bogus error codes for NUMA memory tuning (Osier Yang),<br />
      network: fix indentation in networkBuildDnsmasqArgv (Laine Stump),<br />
      vcpupin: add query option to virsh vcpupin command (Taku Izumi),<br />
      vcpuinfo: add the code to fallback to try new API (Taku Izumi),<br />
      vcpupin: implement the remote protocol to address the new API (Taku Izumi),<br />
      vcpupin: implement the code to support new API for the qemu driver (Taku Izumi),<br />
      build: update gnulib for intprops (Eric Blake),<br />
      Rename iface(G|S)etMacaddr to iface(G|S)etMacAddress for consistency (Matthias Bolte),<br />
      Network: Add support for DNS hosts definition to the network XML (Michal Novotny),<br />
      Network: Add additional hosts internal infrastructure (Michal Novotny),<br />
      Network: Add regression tests for the command-line arguments (Michal Novotny),<br />
      Network: modify dnsmasq commandline build function to allow testing (Michal Novotny),<br />
      tests: Improve IPv6 detection for virNetSocket tests (Matthias Bolte),<br />
      Move load of AppArmor profile to GenLabel() (Jamie Strandboge),<br />
      Add Memory Device Information to virSysinfoRead() from dmidecode type 17 (Minoru Usui),<br />
      Add Processor Information to virSysinfoRead() from dmidecode type 4 (Minoru Usui),<br />
      Cleanup virSysinfoRead() (Minoru Usui),<br />
      Make sure virnetprotocol.[ch] are in BUILT_SOURCES (Daniel P. Berrange),<br />
      maint: typo fixes (Eric Blake),<br />
      Add missing translation of error message from QEMU reboot patch (Daniel P. Berrange),<br />
      Allow automatic kill of guests when a connection is closed (Daniel P. Berrange),<br />
      Automatically kill target QEMU if migration aborts abnormally (Daniel P. Berrange),<br />
      Add infrastructure to automatically destroy guests when a connection closes (Daniel P. Berrange),<br />
      Move the RPC generator scripts into src/rpc (Daniel P. Berrange),<br />
      Introduce generic RPC client objects (Daniel P. Berrange),<br />
      Introduce generic RPC module for advertising via MDNS (Daniel P. Berrange),<br />
      Introduce generic RPC server objects (Daniel P. Berrange),<br />
      Integrate TLS/SASL directly into the socket APIs (Daniel P. Berrange),<br />
      Generic module for handling SASL authentication &amp; encryption (Daniel P. Berrange),<br />
      Generic module for handling TLS encryption and x509 certs (Daniel P. Berrange),<br />
      Introduce a generic object for using network sockets (Daniel P. Berrange),<br />
      Provide a simple object for encoding/decoding RPC messages (Daniel P. Berrange),<br />
      Defines the basics of a generic RPC protocol in XDR (Daniel P. Berrange),<br />
      build: update to latest gnulib (Eric Blake),<br />
      python: Generate virStreamFree but don't expose in bindings (Cole Robinson),<br />
      maint: avoid future setgid problems (Eric Blake),<br />
      qemu: Only check for NUMA availability if required (Jiri Denemark),<br />
      util: avoid PATH_MAX-sized array (Eric Blake),<br />
      xen: avoid PATH_MAX-sized array (Eric Blake),<br />
      tests: avoid PATH_MAX-sized array (Eric Blake),<br />
      virStorageVol: avoid PATH_MAX-sized array (Eric Blake),<br />
      cleanup: make several interface functions commonly available (Stefan Berger),<br />
      cleanup: make nlComm commonly available (Stefan Berger),<br />
      maint: remove syntax-check exception (Eric Blake),<br />
      Remove macvtap dependency on domain configuration (Daniel P. Berrange),<br />
      util: Correct the error prompt string (Osier Yang),<br />
      Fix to python API extractor and API doc generation (Daniel Veillard),<br />
      qemu: domain I/O asynchronous handling (Michal Privoznik),<br />
      python: Mark event callback wrappers as private (Cole Robinson),<br />
      python: events: Fix C-&gt;Python handle callback prototype (Cole Robinson),<br />
      python: Add bindings for virEvent*Handle/Timeout (Cole Robinson),<br />
      events: Correct virEventAddTimeout docs (Cole Robinson),<br />
      Promote virEvent*Handle/Timeout to public API (Cole Robinson),<br />
      python: Implement virStreamSend/RecvAll helpers (Cole Robinson),<br />
      python: Implement virStreamSend/Recv (Cole Robinson),<br />
      conf: Make full use of goto label (Osier Yang),<br />
      python: Implement bindings for virStreamEventAddCallback (Cole Robinson),<br />
      python: generator: Don't print warning if nothing to warn about (Cole Robinson),<br />
      python: libvirt-override: use simpler debug (Cole Robinson),<br />
      virsh: enhance snapshot-create-as (Eric Blake),<br />
      virsh: add snapshot-create-as command (Eric Blake),<br />
      virsh: clarify snapshot vs. save (Eric Blake),<br />
      Fix compile warnings in virsh vcpupin (Daniel P. Berrange),<br />
      remote generator: Allow to annotate arrays with typecasts (Matthias Bolte),<br />
      remote: Handle functions that return optional strings (Matthias Bolte),<br />
      remote: Generate virDomainGetBlockPullInfo (Matthias Bolte),<br />
      vcpupin: add vcpupin resetting feature to qemu driver (Taku Izumi),<br />
      vcpupin: add virDomainVcpupinDel function (Taku Izumi),<br />
      vcpupin: add reset option to virsh vcpupin command (Taku Izumi),<br />
      vcpupin: improve vcpupin definition of virsh vcpupin (Taku Izumi),<br />
      Fix preprocessor indentation in nodeinfo.c (Matthias Bolte),<br />
      Move XenAPI driver to correct spec file section (Matthias Bolte),<br />
      numatune: Add tests for numatune XML (Osier Yang),<br />
      numatune: Support NUMA memory tuning in qemu driver (Osier Yang),<br />
      numatune: Support persistent XML for numatune (Osier Yang),<br />
      numatune: Define XML schema (Osier Yang),<br />
      Update qemuDomainSetBlkioParameters to use flags (Hu Tao),<br />
      update qemuDomainGetBlkioParameters to use flags (Hu Tao),<br />
      Add new parameters for blkiotune (Hu Tao),<br />
      apparmor: implement AppArmorSetFDLabel() (Jamie Strandboge),<br />
      Add missing error reporting when loading mac filter config for QEMU (Daniel P. Berrange),<br />
      virsh: Add support for virDomainGetControlInfo (Jiri Denemark),<br />
      qemu: Implement virDomainGetControlInfo (Jiri Denemark),<br />
      Wire protocol and remote driver for virDomainGetControlInfo (Jiri Denemark),<br />
      sendkey: use consistent API convention (Eric Blake),<br />
      build: export correct function names (Eric Blake),<br />
      build: avoid compiler warning on non-Linux (Eric Blake),<br />
      remote generator: Handle struct returning functions better (part 2) (Matthias Bolte),<br />
      Fix apibuild.py warnings about missing comment headers (Matthias Bolte),<br />
      remote generator: Handle struct returning functions better (Matthias Bolte),<br />
      support for Xen HVM Viridian (Hyper-V) enlightenment interface (Daniel Gollub),<br />
      virsh: reduce complexity in argv iteration (Eric Blake),<br />
      Add support for network filter code in LXC driver (Daniel P. Berrange),<br />
      qemu: Translate boot config into bootindex if possible (Jiri Denemark),<br />
      spice: add &lt;clipboard copypaste='yes|no'&gt; option (Marc-André Lureau),<br />
      virNodeGetMemoryStats: Implement linux support (Minoru Usui),<br />
      virNodeGetMemoryStats: Implement virsh support (Minoru Usui),<br />
      virNodeGetMemoryStats: Implement remote protocol (Minoru Usui),<br />
      virNodeGetMemoryStats: Implement public API (Minoru Usui),<br />
      virNodeGetMemoryStats: Define internal driver API (Minoru Usui),<br />
      virNodeGetCPUStats: Implement linux support (Minoru Usui),<br />
      virNodeGetCPUStats: Implement virsh support (Minoru Usui),<br />
      virNodeGetCPUStats: Implement remote protocol (Minoru Usui),<br />
      virNodeGetCPUStats: Define internal driver API (Minoru Usui),<br />
      virNodeGetCPUStats: Expose new API (Minoru Usui),<br />
      Fix autostart flag when loading running domains (Michael Chapman),<br />
      send-key: Implementing the remote protocol (Lai Jiangshan),<br />
      send-key: Implementing the public API (Lai Jiangshan),<br />
      send-key: Defining the internal API (Lai Jiangshan),<br />
      remote generator: Handle (unsigned) int arrays (Lai Jiangshan),<br />
      add VSH_OFLAG_REQ_OPT options (Lai Jiangshan),<br />
      allow name for VSH_OT_ARGV options (Lai Jiangshan),<br />
      storage: avoid an intermediate malloc (Eric Blake),<br />
      command: reduce duplicated debug messages (Eric Blake),<br />
      qemu: Scrape stdout for virtio console pty (Cole Robinson),<br />
      virsh: Add daemon version reporting (Michal Privoznik),<br />
      nodeinfo: remove superfluous braces (Guido Günther),<br />
      util: Cleanup indention problem in virterror.c (Osier Yang),<br />
      qemu: Parse current balloon value returned by query_balloon (Osier Yang),<br />
      Deprecate several CURRENT/LIVE/CONFIG enums (Hu Tao),<br />
      qemu: Faster response time to qemu startup errors (Stefan Berger),<br />
      build: update to latest gnulib (Eric Blake),<br />
      vcpupin: add the new option to "virsh vcpupin" command (Taku Izumi),<br />
      vcpupin: implement the remote protocol to address the new API (Taku Izumi),<br />
      vcpupin: implement the code to address the new API in the qemu driver (Taku Izumi),<br />
      Use virTimeMs when appropriate (Jiri Denemark),<br />
      Introduce virTimeMs for getting current time in ms (Jiri Denemark),<br />
      test: Remove unused timeval (Jiri Denemark),<br />
      tests: add a test for multi function PCI device (Wen Congyang),<br />
      the hotplugged PCI device should use the whole slot (Wen Congyang),<br />
      assign the whole slot to the PCI device that has no address (Wen Congyang),<br />
      Reimplement qemuDomainPCIAddressReserveSlot(): reserve all functions in the slot (Wen Congyang),<br />
      the key of hash table should include the function value (Wen Congyang),<br />
      prevent hot unplugging multi function PCI device (Wen Congyang),<br />
      check whether qemu supports multi function PCI device (Wen Congyang),<br />
      xenapi: Improve error message on session failure (Matthew Booth),<br />
      qemu: Fix one type in the error prompt string (Osier Yang),<br />
      Move VMware Workstation/Player driver to correct spec file section (Matthias Bolte),<br />
      esx: avoid dead code (Eric Blake),<br />
      qemu: reorder checks for safety (Eric Blake),<br />
      uuid: annotate non-null requirements (Eric Blake),<br />
      debug: avoid null dereference on uuid lookup api (Eric Blake),<br />
      python: avoid unlikely sign extension bug (Eric Blake),<br />
      build: detect Coverity 5.3.0 (Eric Blake),<br />
      build: Fix typos in configure.ac (Osier Yang),<br />
      virsh: Expose virDomainMigrateSetMaxSpeed API to virsh (Osier Yang),<br />
      lxc: Ensure container &lt;init&gt; actually exists (Cole Robinson),<br />
      lxc: Verify root fs exists before mounting (Cole Robinson),<br />
      lxc: controller: Improve container error reporting (Cole Robinson),<br />
      lxc: Improve guest startup error reporting (Cole Robinson),<br />
      lxc: Refactor controller command building (Cole Robinson),<br />
      lxc: Don't report error in Wait/SendContinue (Cole Robinson),<br />
      lxc: Drop container stdio as late as possible (Cole Robinson),<br />
      util: Implement virRun as a wrapper around virCommand (Cole Robinson),<br />
      qemu: Convert virExec usage to virCommand (Cole Robinson),<br />
      Use VIR_USE_CPU instead of new wheel (Osier Yang),<br />
      Avoid virGetVersion failure on specific driver support configurations (Matthias Bolte)
      </li><li> Cleanups:<br />
      cgroup: silence coverity warning (Eric Blake),<br />
      rpc: silence coverity warning (Eric Blake),<br />
      qemu: silence coverity warnings (Eric Blake),<br />
      build: avoid 'make syntax-check' failure (Eric Blake),<br />
      build: remove dead variables (Eric Blake),<br />
      Remove bogus jsondata.h file reference which does not exist (Daniel P. Berrange),<br />
      build: ignore generated file (Eric Blake),<br />
      build: Don't expect translatable strings in a dead file (Jiri Denemark),<br />
      Cleanup remote protocol definitions (Daniel P. Berrange),<br />
      Remove obsolete libvirtd mdns code (Daniel P. Berrange),<br />
      build: avoid long line tests (Eric Blake),<br />
      maint: add omitted copyright header (Eric Blake),<br />
      build: break some long lines (Eric Blake),<br />
      build: silence coverity false positives (Eric Blake),<br />
      secret: drop dead code (Eric Blake),<br />
      build: silence coverity false positive (Eric Blake),<br />
      Move virRun, virExec*, virFork to util/command (Cole Robinson),<br />
      util: Remove unused virExec wrapper (Cole Robinson),<br />
      esx: Remove duplicated invalid-argument checks (Matthias Bolte)
      </li></ul>
        <h3>0.9.2: Jun 6 2011</h3>
        <ul><li> Features:<br />
      Framework for lock manager plugins (Daniel P. Berrange),<br />
      API for network config change transactions (Michal Privoznik),<br />
      flags for setting memory parameters (Hu Tao),<br />
      virDomainGetState public API (Jiri Denemark),<br />
      qemu: allow blkstat/blkinfo calls during migration (Federico Simoncelli),<br />
      Introduce migration v3 API (Daniel P. Berrange),<br />
      Defining the Screenshot public API (Michal Privoznik),<br />
      public API for NMI injection (Lai Jiangshan)<br />
      </li><li> Documentation:<br />
      esx: Fix driver method version annotations (Matthias Bolte),<br />
      vbox: Fix typo in error message (Matthias Bolte),<br />
      virsh: Document nodeinfo output (Jiri Denemark),<br />
      Correct 'cputune' documentation example. (Neil Wilson),<br />
      document iface-* commands (Eric Blake),<br />
      Add initial docs about the lock managers (Daniel P. Berrange),<br />
      maint: use consistent file name for threading notes (Eric Blake),<br />
      Fix virTypedParameter alias comments (Matthias Bolte),<br />
      Fix error syntax of vcpupin example XML (Osier Yang),<br />
      Automatically generate the hvsupport.html.in file from source files (Daniel P. Berrange),<br />
      Fix documentation for cputune parameters (Osier Yang),<br />
      avoid double 'the' (Eric Blake),<br />
      Add documentation about test suites (Daniel Veillard),<br />
      updates to CA cert and client cert/key info (Doug Goldstein),<br />
      node filesystem attr is 'accessmode', not 'mode' (Cole Robinson)<br />
      </li><li> Portability:<br />
      vbox: Fix version extraction on Windows for newer VirtualBox versions (Matthias Bolte),<br />
      Make dlopen usage in lock manager conditional (Matthias Bolte),<br />
      build: fix VPATH build break from previous patch (Eric Blake),<br />
      Remove call to deprecated gnutls_certificate_type_set_priority (Daniel P. Berrange),<br />
      Fix sysinfo/virsh build problems on Win32 (Daniel P. Berrange),<br />
      Fix build with --with-driver-modules enabled (Matthias Bolte),<br />
      build: fix 'make dist' for ./configure --without-remote (Eric Blake),<br />
      virsh: time_t is not a long on FreeBSD (Matthias Bolte),<br />
      time_t is not a long on FreeBSD, switch internal type to long long (Matthias Bolte),<br />
      build: avoid strerror_r pitfalls (Eric Blake),<br />
      build: fix VIR_DEBUG on mingw (Eric Blake),<br />
      build: generate files when building without libvirtd (Wen Congyang),<br />
      build: drop unused sys/syslimits.h header (Eric Blake),<br />
      Fix prototype of virRun for Win32 targets (Daniel P. Berrange),<br />
      build: tolerate unlimited group size (Eric Blake),<br />
      Disable virCommandExec on Win32 (Daniel P. Berrange),<br />
      command: Fix compilation on FreeBSD (Matthias Bolte),<br />
      apparmor: Fix compilation by removing remains from virCommand conversion (Matthias Bolte),<br />
      configure: Fix mpath check on non-Linux systems (Matthias Bolte),<br />
      fix xdr detection and use with recent glibc (Christophe Fergeau),<br />
      build: avoid gcc preprocessor extensions (Eric Blake),<br />
      build: fix VPATH build with distributed generated files (Eric Blake),<br />
      build: fix VPATH builds (Eric Blake)<br />
      </li><li> Bug Fixes:<br />
      Fix QEMU p2p v2 migration when run from a v3 client (Daniel P. Berrange),<br />
      Don't raise an error if the migration cookie is NULL (Daniel P. Berrange),<br />
      Fix check of virKillProcess return status (Daniel P. Berrange),<br />
      qemu: Avoid use after free in qemuCaps parsing (Jiri Denemark),<br />
      security driver: ignore EINVAL when chowning an image file (Laine Stump),<br />
      migrate: detect xml incompatibility (Eric Blake),<br />
      event: avoid memory leak on cleanup (Eric Blake),<br />
      qemu: avoid memory leak on vcpupin (Eric Blake),<br />
      remote: avoid leak on failure (Eric Blake),<br />
      lock: avoid leak on failure (Eric Blake),<br />
      storage: avoid memory leak on stat failure (Eric Blake),<br />
      storage: avoid memory leak (Eric Blake),<br />
      libvirtd: avoid leak on failure (Eric Blake),<br />
      command: avoid leak on failure (Eric Blake),<br />
      Explicitly set VM state to paused after migration completes (Daniel P. Berrange),<br />
      Fix regressions BlockStats/Info APIs in QEMU driver (Daniel P. Berrange),<br />
      Fix minor issues in libxenlight managed save (Jim Fehlig),<br />
      Fix auditing of disk hotunplug operations (Daniel P. Berrange),<br />
      Avoid crash on NULL pointer in lock driver impls during hotplug (Daniel P. Berrange),<br />
      Fix return value in lock manager hotplug methods (Daniel P. Berrange),<br />
      Make sure virDomainSave/virDomainManagedSave reset id to -1 (Daniel P. Berrange),<br />
      Fix handling of VIR_EVENT_HANDLE_ERROR in QEMU monitor (Daniel P. Berrange),<br />
      security: plug regression introduced in disk probe logic (Eric Blake),<br />
      Fix order of disks and controllers (Jiri Denemark),<br />
      util: Fix incorrect error in PCI functions (Osier Yang),<br />
      openvz: Restore original EOF handling in openvzGetProcessInfo (Matthias Bolte),<br />
      openvz: Handle getline failures in openvzReadConfigParam properly (Matthias Bolte),<br />
      conf: Fix incorrect spice graphic XML format on compression options (Michal Privoznik),<br />
      nwfilter: reorder locks (Stefan Berger),<br />
      openvz: Fix regression in openvzGetVPSUUID (Matthias Bolte),<br />
      esx: Fix regression in absolute file name handling (Matthias Bolte),<br />
      openvz: Fix regression in config file parsing (Taisuke Yamada),<br />
      audit: fix minor off-by-one (Eric Blake),<br />
      Fix libxl vm def handling on domU cleanup (Markus Groß),<br />
      Fix modifying disk devices in qemu driver (Markus Groß),<br />
      json: Avoid passing large positive 64 bit integers to QMP. (Richard W.M. Jones),<br />
      Fix initialization of current vcpus in libxl driver (Jim Fehlig),<br />
      qemu: Don't change ownership of file when appending to it (Michal Privoznik),<br />
      qemu: fix typo in name - should be VHOST_NET, not VNET_HOST (Laine Stump),<br />
      Fix QEMU -vnc arg generation with raw IPv6 addresses (Daniel P. Berrange),<br />
      Fix peer2peer migration with transient VMs (Daniel P. Berrange),<br />
      python: Don't free must-not-free variables (Michal Privoznik),<br />
      python: Fix typo in bindings (Michal Privoznik),<br />
      libvirt.spec: /var/cache/libvirt should be 0711. (Richard W.M. Jones),<br />
      remote: remove bogus virDomainFree. (Richard W.M. Jones),<br />
      qemudDomainMemoryPeek: change ownership/selinux label on temporary file. (Richard W.M. Jones),<br />
      Fix QEMU migration cookie crash for guests with no graphics (Daniel P. Berrange),<br />
      Blank out the 'listenAddr' parameter if empty string (Daniel P. Berrange),<br />
      Improve invalid argument checks for the public API (Matthias Bolte),<br />
      qemu: fix typo in spice migration code (Michal Privoznik),<br />
      openvz: fix logic bug in previous patch (Eric Blake),<br />
      Fix error reporting in stream creation code (Matthias Bolte),<br />
      virsh: Correctly initialize libvirt (Jiri Denemark),<br />
      Fix leak of mime type string in screenshot dispatcher (Daniel P. Berrange),<br />
      Fix remote dispatcher for screenshot command (Daniel P. Berrange),<br />
      Add missing initialization to 'ret' in qemu migration (Daniel P. Berrange),<br />
      Close all sockets before cancelling QEMU migration (Daniel P. Berrange),<br />
      Ensure we always read a full buffer in tunnelled migration (Daniel P. Berrange),<br />
      phyp: avoid a crash (Eric Blake),<br />
      stream: avoid use-after-free (Eric Blake),<br />
      virsh: Fix uninitialized variable warning (Matthias Bolte),<br />
      libxl: fix typos in previous patch (Eric Blake),<br />
      node_device: avoid null dereference on error (Eric Blake),<br />
      tests: avoid crash when run under gcov (Eric Blake),<br />
      Fix two uninitialized variable warnings (Matthias Bolte),<br />
      apparmor: Fix uninitalized variable warning in virt-aa-helper (Matthias Bolte),<br />
      Fix qemuMigrationToFile nonull annotation (Daniel P. Berrange)<br />
      </li><li> Improvements:<br />
      API: consolidate common unreleased enums (Eric Blake),<br />
      uml: correct command line networking parameters (Heath Petersen),<br />
      Add call to sanlock_restrict() in QEMU lock driver (Daniel P. Berrange),<br />
      screenshot: Expose the new API in virsh (Michal Privoznik),<br />
      libxl: adds managed save and restore support (Markus Groß),<br />
      libxl: get maximum memory of running domain (Markus Groß),<br />
      Add a plugin for the 'sanlock' project (Daniel P. Berrange),<br />
      Allow leases to be hotpluged with QEMU guests (Daniel P. Berrange),<br />
      Support passing QEMU lock state to dest during migration (Daniel P. Berrange),<br />
      Integrate the QEMU driver with the lock manager infrastructure (Daniel P. Berrange),<br />
      Add higher level lock API for domain objects (Daniel P. Berrange),<br />
      Add a 'nop' lock driver implementation. (Daniel P. Berrange),<br />
      Support leases in guest XML and lock manager (Daniel P. Berrange),<br />
      Allow handshake with child process during startup (Daniel P. Berrange),<br />
      tests: really fix QEMU XML-2-ARGV graphics-spice-timeout test (Eric Blake),<br />
      build: avoid corrupting / in RHEL 5 (Eric Blake),<br />
      tests: Add a test for correct disk device ordering (Jiri Denemark),<br />
      Fix QEMU XML-2-ARGV graphics-spice-timeout test (Matthias Bolte),<br />
      remote generator: Handle some virTypedParameterPtr using functions (Matthias Bolte),<br />
      apibuild: Restrict long usage to existing functions and structs (Matthias Bolte),<br />
      remote generator: Legacy support for hyper to long mappings (Matthias Bolte),<br />
      Use common parameter order for remote(De)SerializeTypedParameters (Matthias Bolte),<br />
      openvz: Add simple test for openvzReadNetworkConf (Matthias Bolte),<br />
      openvz: Set virtType to openvz in openvzLoadDomains (Matthias Bolte),<br />
      storage: List directory volumes for dir/fs/netfs pools (Cole Robinson),<br />
      tests: Add more complex domain scheme test data (Michal Privoznik),<br />
      tests: Test for SPICE compression options (Michal Privoznik),<br />
      Ignore backward compatibility macros in apibuild.py (Matthias Bolte),<br />
      openvz: fix bridge devices parsing in openvzReadNetworkConf() (Jean-Baptiste Rouault),<br />
      Allow custom XML to be passed in during migration (Daniel P. Berrange),<br />
      Allow virsh to pass in a custom XML document for migration (Daniel P. Berrange),<br />
      Add an API for comparing the ABI of two guest configurations (Daniel P. Berrange),<br />
      Remove unused 'target' field in virDomainHostdevDef (Daniel P. Berrange),<br />
      lxc: Seperate domain config loading (Osier Yang),<br />
      openvz: Automatically disable on non-Linux systems (Matthias Bolte),<br />
      Support maximum and current memory flags in libxl driver (Markus Groß),<br />
      Add domainSave/Restore to libxl driver (Markus Groß),<br />
      Add domainCoreDump to libxl driver (Markus Groß),<br />
      Populate domid field of devices for libxenlight (Markus Groß),<br />
      Issue full error messages when processing QEMU monitor I/O (Daniel P. Berrange),<br />
      Don't kill QEMU process when a monitor I/O parsing error occurs (Daniel P. Berrange),<br />
      Introduce a new event emitted when a virtualization failure occurs (Daniel P. Berrange),<br />
      sched: provide new API shims for remaining drivers (Eric Blake),<br />
      virsh: improve schedinfo querying ability (Eric Blake),<br />
      remote: introduce remoteGetSchedulerParametersFlags (Eric Blake),<br />
      qemu: introduce qemuGetSchedulerParametersFlags (Eric Blake),<br />
      sched: introduce virDomainGetSchedulerParametersFlags (Eric Blake),<br />
      remote: consolidate typed parameter handling (Eric Blake),<br />
      maint: prefer newer API names internally (Eric Blake),<br />
      libvirt.h: avoid regression, and document preferred name (Eric Blake),<br />
      Fix virExecWithHook Prototype (Richard Laager),<br />
      interface: reformat error logs (Laine Stump),<br />
      interface: implement a test driver for network config transaction API. (Michal Privoznik),<br />
      interface: Implement driver methods for network config transaction API (Michal Privoznik),<br />
      interface: expose network config transaction API to virsh (Michal Privoznik),<br />
      interface: implement remote protocol for network config transaction API (Michal Privoznik),<br />
      interface: implement public APIs for libvirt transactional network changes (Michal Privoznik),<br />
      interface: define internal driver API for network config transactions (Michal Privoznik),<br />
      sexpr: Improve serialization error reporting (Matthias Bolte),<br />
      qemu: implement the new flags for setting memory parameters (Hu Tao),<br />
      qemu: implement the new flags for getting memory parameters (Hu Tao),<br />
      qemu : support persistent add/delete network interface (KAMEZAWA Hiroyuki),<br />
      openvz: Add simple testcase for config file parsing function (Matthias Bolte),<br />
      Add disk attach/detach support to libxl driver (Markus Groß),<br />
      Refactored libxl datastructure instantiation (Markus Groß),<br />
      schema: Add graphics element passwdValidTo attribute to schema (Michal Privoznik),<br />
      Fix sign mismatches between public API, driver API and XDR protocol (Matthias Bolte),<br />
      remote generator: Fix XDR sign mismatch for virNodeGet(Cells)FreeMemory (Matthias Bolte),<br />
      remote generator: Handle stream-using functions (Matthias Bolte),<br />
      remote generator: Make call-by-reference handling stricter (Matthias Bolte),<br />
      remote generator: Rename virNodeGetCellsFreeMemory parameters to common pattern (Matthias Bolte),<br />
      remote generator: Handle virDomainCreateWithFlags (Matthias Bolte),<br />
      Allow to explicitly disable the secrets a directory storage driver (Matthias Bolte),<br />
      Fix the signature of virDomainMigrateFinish3 for error reporting (Daniel P. Berrange),<br />
      Fix preservation of errors across migration steps (Daniel P. Berrange),<br />
      Improve debug logging of migration APIs (Daniel P. Berrange),<br />
      Fix error propagation in finish method for v3 migration (Daniel P. Berrange),<br />
      Fix SPICE seamless migration hostname (Daniel P. Berrange),<br />
      Fix resume on destination when doing non-live tunnelled migration (Daniel P. Berrange),<br />
      Introduce two method migration APIs (Daniel P. Berrange),<br />
      Add a second URI parameter to virDomainMigratePerform3 method (Daniel P. Berrange),<br />
      Extend v3 migration protocol to allow app supplied XML for target (Daniel P. Berrange),<br />
      esx: Report an error when auth pointer is missing instead of declining (Matthias Bolte),<br />
      Perform feature flag compat checking in QEMU migration cookies (Daniel P. Berrange),<br />
      Replace all remaining setgid/setuid calls with virSetUIDGID (Jiri Denemark),<br />
      util: Keep errno set to the root error after when returning from virSetUIDGID (Jiri Denemark),<br />
      storage: Add comment to picking return value of qemu-img (Michal Privoznik),<br />
      spice: support streaming-video parameter (Alon Levy),<br />
      nwfilter: enable filtering of gratuitous ARP packets (Stefan Berger),<br />
      qemu: don't require is_kvm for vhost-net support (Laine Stump),<br />
      Use per-user TLS certificates when possible (Doug Goldstein),<br />
      storage: pick return value of qemu-img (Michal Privoznik),<br />
      remote generator: Add special case for virConnectGetType (Matthias Bolte),<br />
      remote generator: Don't rely on $_ being stable over a large function (Matthias Bolte),<br />
      build: require newer gettext (Eric Blake),<br />
      virsh: Use Env variables for debug level and logfile (Supriya Kannery),<br />
      Don't generate cookies with v2 migration protocol. (Daniel P. Berrange),<br />
      Ensure p2p and direct migration use the new v3 protocol if available (Daniel P. Berrange),<br />
      remote: remove special case for getting version (Eric Blake),<br />
      virsh: optimize creation of default connection (Eric Blake),<br />
      Clarify that virDomainGet(Memory|Blkio)Parameters doesn't support subsets (Matthias Bolte),<br />
      Clarify that virDomainSet(Memory|Blkio)Parameters can take parameter subsets (Matthias Bolte),<br />
      Clarify that virDomainSetSchedulerParameters(Flags) can take subsets (Matthias Bolte),<br />
      Clarify the semantic of virDomainGetSchedulerParameters arguments (Matthias Bolte),<br />
      Clarify semantic of nparams argument of virDomainGetSchedulerType (Matthias Bolte),<br />
      Fix messages using VIR_ERR_XML_ERROR (Cole Robinson),<br />
      libvirt.h: consolidate typed parameter handling (Eric Blake),<br />
      build: update to latest gnulib (Eric Blake),<br />
      Add support for 'passthru' mode for direct network interfaces (Dirk Herrendorefer),<br />
      virsh: add parameters --live, --config and --current to cmd schedinfo (Hu Tao),<br />
      remote: introduce remoteSetSchedulerParametersFlags (Hu Tao),<br />
      qemu: introduce qemuSetSchedulerParametersFlags (Hu Tao),<br />
      sched: adjust parameter values to make current = 0 (Eric Blake),<br />
      introduce virDomainSetSchedulerParametersFlags (Hu Tao),<br />
      storage_backend: Convert virRunWithHook usage to virCommand (Cole Robinson),<br />
      storage_backend: Fix error reporting with regex helper (Cole Robinson),<br />
      storage: Covert regex helpers to virCommand (Cole Robinson),<br />
      openvz: Convert virExec usage to virCommand (Cole Robinson),<br />
      storage: iscsi: Convert virExec to virCommand (Cole Robinson),<br />
      remote generator, client: Add more special case handling (Matthias Bolte),<br />
      remote generator, client: Handle functions that return an optional string (Matthias Bolte),<br />
      esx: Simplify some esxVI_Boolean to bool (Matthias Bolte),<br />
      esx: Convert autoAnswer from esxVI_Boolean to a simple bool (Matthias Bolte),<br />
      esx: Fix race condition in esxVI_EnsureSession (Matthias Bolte),<br />
      esx: Whitespace cleanup in the generator (Matthias Bolte),<br />
      esx: Change some alignments in the input file (Matthias Bolte),<br />
      esx: Change generated method parameter autobinding (Matthias Bolte),<br />
      virsh: Report an error when virGetUserDirectory fails (Matthias Bolte),<br />
      maint: mark more perl scripts executable (Eric Blake),<br />
      maint: mark perl script executable (Eric Blake),<br />
      maint: ignore generated file (Eric Blake),<br />
      Improve error message when XDR marshalling fails (Daniel P. Berrange),<br />
      Run tunnelled migration IO in separate thread (Daniel P. Berrange),<br />
      Don't overwrite error when stream send fails (Daniel P. Berrange),<br />
      Make tunnelled migration honour resource restriction (Daniel P. Berrange),<br />
      Refactor migration completion loop to allow code reuse (Daniel P. Berrange),<br />
      Implement migration v3 protocol in QEMU driver (Daniel P. Berrange),<br />
      Merge tunnel and non-tunnel migration impl into one (Daniel P. Berrange),<br />
      Fix VM teardown if prepare returns invalid URI in v2 migration (Daniel P. Berrange),<br />
      Refactor tunnelled migration methods (Daniel P. Berrange),<br />
      Wire up SPICE client relocation with QEMU migration (Daniel P. Berrange),<br />
      Pass graphics setup from dst back to src via migration cookies (Daniel P. Berrange),<br />
      Introduce migration cookies to QEMU driver (Daniel P. Berrange),<br />
      Fix locking with qemuMigrationPrepareTunnel method (Daniel P. Berrange),<br />
      Remote driver implementation of new migration API (Daniel P. Berrange),<br />
      Add many version number annotations to drivers (Daniel P. Berrange),<br />
      Convert all driver struct intializers to C99 style (Daniel P. Berrange),<br />
      Tweak driver naming for consistency with public API (Daniel P. Berrange),<br />
      qemu: Update domain state when reconnecting monitor (Jiri Denemark),<br />
      Implement domain state reason (Jiri Denemark),<br />
      Implement basic virDomainGetState in all drivers (Jiri Denemark),<br />
      virsh: Prefer virDomainGetState over virDomainGetInfo (Jiri Denemark),<br />
      Wire protocol format and remote driver for virDomainGetState (Jiri Denemark),<br />
      virDomainGetState public API implementation (Jiri Denemark),<br />
      Internal driver API for virDomainGetState (Jiri Denemark),<br />
      esx: Refactor common code in the generator (Matthias Bolte),<br />
      esx: Improve dynamic cast detection in the generator (Matthias Bolte),<br />
      esx: Improve list usage detection in the generator (Matthias Bolte),<br />
      esx: Remove 1000 lines of generated but unused code (Matthias Bolte),<br />
      esx: Generate implicit _this macros (Matthias Bolte),<br />
      esx: Move the Event type from the VI generator to manually written code (Matthias Bolte),<br />
      test: all test_scripts should be part of tarball when building without libvirtd (Wen Congyang),<br />
      build: probes.d and libvirtd.stp should be part of tarball (Wen Congyang),<br />
      remote: Convert SSH tunnel to virCommand (Cole Robinson),<br />
      storage: Convert qemu-img -help parsing to virCommand (Cole Robinson),<br />
      apparmor: Convert virExec usage to virCommand (Cole Robinson),<br />
      util: Combine __virExec and virExecWithHook (Cole Robinson),<br />
      remote_driver: Convert virExecDaemonize usage to virCommand (Cole Robinson),<br />
      remote: Use virDomainEventState helpers (Cole Robinson),<br />
      libxl: Convert to virDomainEventState (Cole Robinson),<br />
      test: Use virDomainEventState helpers (Cole Robinson),<br />
      lxc: Use virDomainEventState helpers (Cole Robinson),<br />
      qemu: Use virDomainEventState helpers (Cole Robinson),<br />
      domain_event: Add common domain event queue/flush helpers (Cole Robinson),<br />
      domain_event: Add virDomainEventState structure (Cole Robinson),<br />
      xml: Use virXMLParse* helpers everywhere (Cole Robinson),<br />
      domain: Require init node for container guests (Cole Robinson),<br />
      xml: Make sure virXpathNodeSet always sets an error (Cole Robinson),<br />
      vbox: Implement the Screenshot driver methods (Michal Privoznik),<br />
      qemu: Implement the Screenshot driver methods (Michal Privoznik),<br />
      virFDStream: Add option for delete file after it's opening (Michal Privoznik),<br />
      Implementing the Screenshot remote protocol (Michal Privoznik),<br />
      Implementing the Screenshot public API (Michal Privoznik),<br />
      Defining the Screenshot internal API (Michal Privoznik),<br />
      remote generator: Add skipgen/autogen flags to .x files (Matthias Bolte),<br />
      nwfilter: drop unused flag argument (Eric Blake),<br />
      maint: omit translation for all VIR_INFO (Eric Blake),<br />
      build: wrap macro body in one-shot do-while loop (Eric Blake),<br />
      build: drop need for VIR_DOMAIN_DEBUG0() (Eric Blake),<br />
      libvirt,logging: cleanup VIR_XXX0() (Lai Jiangshan),<br />
      maint: avoid a couple of gnulib regressions (Eric Blake),<br />
      build: remove some dead assignments (Eric Blake),<br />
      Allow destroying QEMU VM even if a job is active (Daniel P. Berrange),<br />
      Add support for YAJL version 2 API/ABI (Daniel P. Berrange),<br />
      libxl: support enabling the HPET (Paolo Bonzini),<br />
      libxl: support enabling the HPET (Paolo Bonzini),<br />
      xen: parse and generate hpet item in sxpr (Paolo Bonzini),<br />
      virsh: flexibility in CA cert and user cert/key (Doug Goldstein),<br />
      remote generator: Make parsing stricter (Matthias Bolte),<br />
      remote generator: Unify unsigned int notation in .x files (Matthias Bolte),<br />
      remote generator: Fix comment ignoring regex (Matthias Bolte),<br />
      Rename internal DumpXML functions to GetXMLDesc (Matthias Bolte),<br />
      qemu,inject-nmi: Implement the driver methods (Lai Jiangshan),<br />
      inject-nmi: Expose the new API in virsh (Lai Jiangshan),<br />
      inject-nmi: Implementing the remote protocol (Lai Jiangshan),<br />
      inject-nmi: Implementing the public API (Lai Jiangshan),<br />
      inject-nmi: Defining the internal API (Lai Jiangshan),<br />
      lxc: container: Build init cmd before we close stdout (Cole Robinson),<br />
      lxc: container: Convert init node exec to virCommand (Cole Robinson),<br />
      command: Add virCommandExec helper (Cole Robinson),<br />
      lxc: driver: Improve logging when launching emulator (Cole Robinson),<br />
      lxc: driver: Convert emulator launching to virCommand (Cole Robinson),<br />
      command: Add virCommandEnvAddFormat (Cole Robinson),<br />
      build: translate generated strings (Eric Blake),<br />
      Pull in gnulib fnmatch module (Daniel P. Berrange),<br />
      json: Fix *GetBoolean functions (Jiri Denemark),<br />
      build: rebuild generated files after rpcgen_fix.pl tweak (Eric Blake),<br />
      Re-add libvirt.spec to tarball to allow "make rpm" (Daniel Veillard),<br />
      build: Remove all generated RPC files from GIT (Daniel P. Berrange),<br />
      build: refactor generated RPC files (Daniel P. Berrange),<br />
      build: rename generated files to .h, for automake's sake (Eric Blake),<br />
      remote generator, client: Handle arguments with limited length (Matthias Bolte),<br />
      remote generator, client: Handle functions that return lists (Matthias Bolte),<br />
      remote: Refactor remote*Open and remote*Close functions (Matthias Bolte),<br />
      remote generator, client: Handle functions with optional return values (Matthias Bolte),<br />
      remote generator, client: Handle functions with multiple return values (Matthias Bolte),<br />
      remote generator, client: Handle functions with wrapped return values (Matthias Bolte),<br />
      remote generator, client: Handle functions with simple return values (Matthias Bolte),<br />
      remote generator, client: Handle simple remote driver functions (Matthias Bolte),<br />
      remote generator: Reorder into prepare and print section (Matthias Bolte),<br />
      remote generator, daemon: Handle functions with multiple return values (Matthias Bolte),<br />
      remote generator, daemon: Combine multiple ifs in the generated code (Matthias Bolte),<br />
      remote generator, daemon: Handle the CPU functions (Matthias Bolte),<br />
      remote generator: Refactor duplicate code (Matthias Bolte),<br />
      remote generator, daemon: Handle functions that return lists (Matthias Bolte),<br />
      remote: Rename 'nameslen' to the common 'maxnames' (Matthias Bolte),<br />
      remote generator, daemon: Handle functions with optional arguments (Matthias Bolte),<br />
      remote generator, daemon: Handle more functions (Matthias Bolte),<br />
      remote generator, daemon: Handle simple-return-value functions (Matthias Bolte),<br />
      remote generator, daemon: Change capitalization of some words (Matthias Bolte),<br />
      remote: Replace 'domain' with 'dom' in the XDR protocol (Matthias Bolte),<br />
      remote generator, daemon: Output function bodies too (Matthias Bolte),<br />
      remote generator: Replace tabs with spaces and rename file (Matthias Bolte),<br />
      Balloon dom0 in libxl driver (Markus Groß),<br />
      remote: check actual access to the cert (Doug Goldstein),<br />
      maint: avoid comparisons to bool constants (Eric Blake),<br />
      Add warning message to XML definition files stored on disk (Michal Privoznik),<br />
      Fix security driver handling of FIFOs with QEMU (Daniel P. Berrange),<br />
      Make taint warnings also go into the domain logfile (Daniel P. Berrange),<br />
      Add a qemuDomainAppendLog method for writing to the domain logfile (Daniel P. Berrange),<br />
      Move qemuProcessLogReadFD and qemuProcessLogFD methods (Daniel P. Berrange),<br />
      Log taint warnings in QEMU driver (Daniel P. Berrange),<br />
      Add field to virDomainObjPtr to track "tainting" (Daniel P. Berrange),<br />
      virsh: improve TLS certificate error messages (Doug Goldstein),<br />
      virsh: use new method for easier log to file (Eric Blake),<br />
      buf: add virBufferVasprintf (Eric Blake),<br />
      maint: rename virBufferVSprintf to virBufferAsprintf (Eric Blake),<br />
      Make QEMU migration use cached qemu capabilities data (Daniel P. Berrange),<br />
      Make QEMU hotplug use cached qemu capabilities data (Daniel P. Berrange),<br />
      Persist qemu capabilities in the domain status file (Daniel P. Berrange)<br />
      </li><li> Cleanups:<br />
      build: silence coverity false positive (Eric Blake),<br />
      build: silence coverity false positive (Eric Blake),<br />
      .gitignore: Exempt a new test binary. (Eric Blake),<br />
      Ensure hvsupport.html.in is built before HTML validation (Daniel P. Berrange),<br />
      Fix a make check error (Daniel Veillard),<br />
      Add sexpr.c to the list of file with translatable messages (Matthias Bolte),<br />
      don't check flags in virDomainSetSchedulerParametersFlags (Hu Tao),<br />
      build: silence clang false positive (Eric Blake),<br />
      Remove obsolete remoteDispatchOOMError method (Daniel P. Berrange),<br />
      remote: keep 'make check' happy (Eric Blake),<br />
      build: avoid compiler warning during configure (Wen Congyang),<br />
      Remove bogus assert() from migration code (Daniel P. Berrange),<br />
      build: drop files generated by config.status from tarball (Eric Blake)<br />
      </li></ul>
        <h3>0.9.1: May 5 2011</h3>
        <ul><li> Features:<br />
       support various persistent domain updates (KAMEZAWA Hiroyuki),<br />
       improvements on memory APIs (Taku Izumi),<br />
       Add virDomainEventRebootNew (Matthias Bolte),<br />
       various improvements to libxl driver (Markus Groß),<br />
       Spice: support audio, images and stream compression (Michal Privoznik)<br />
      </li><li> Documentation:<br />
       fix missing VLAN id for Qbg example (Gerhard Stenzel),<br />
       docs: Document filesystem tag device (Cole Robinson),<br />
       maint: fix comment typos (Eric Blake),<br />
       Fix two out-of-date comments in LVM backend (Richard Laager),<br />
       docs: Serial and parallel device target ports actually start from 0 (Matthias Bolte),<br />
       maint: fix grammar errors (Eric Blake),<br />
       docs: document freecell --all (Eric Blake),<br />
       docs: remove "returns" word from beginning of lines (Jean-Baptiste Rouault),<br />
       docs: add an IPv6 address to network XML examples (Laine Stump)<br />
      </li><li> Portability:<br />
       build: fix getcwd portability problems (Eric Blake),<br />
       build: avoid test warnings on mingw (Eric Blake),<br />
       virsh: avoid compiler warning on mingw (Eric Blake),<br />
       build: Use pkg-config for libssh2 check (Jiri Denemark),<br />
       build: Ignore old audit library (Jiri Denemark),<br />
       build: fix 32-bit test failure (Eric Blake),<br />
       build: Fix problem of building Python bindings (Osier Yang),<br />
       build: fix 32-bit test failure (Eric Blake),<br />
       ppc: Enable starting of Qemu VMs on ppc host (Stefan Berger),<br />
       Migrate VMs between different-endianess hosts (Stefan Berger),<br />
       build: really fix mingw startup (Eric Blake),<br />
       build: fix mingw build (Eric Blake),<br />
       do not build libvirt_iohelper when building without libvirtd (Wen Congyang),<br />
       virsh: fix mingw startup (Eric Blake),<br />
       build: avoid compiler warning on cygwin (Eric Blake),<br />
       Fix build for older gcc (Jim Fehlig),<br />
       Don't try to enable stack protector on Win32 (Daniel P. Berrange)<br />
      </li><li> Bug Fixes:<br />
       storage: avoid null deref and leak on failure (Eric Blake),<br />
       esx: Avoid null dereference on error in esxDomainGetInfo (Matthias Bolte),<br />
       remote: avoid null dereference on error (Eric Blake),<br />
       cgroup: avoid leaking a file (Eric Blake),<br />
       virsh: avoid null pointer dereference (Eric Blake),<br />
       pci: fix null pointer dereference (Eric Blake),<br />
       qemu: avoid null pointer dereference (Eric Blake),<br />
       tests: avoid null pointer dereference (Eric Blake),<br />
       Fix disability to run on systems with no PCI bus (Michal Privoznik),<br />
       virsh: fix regression in log to file (Supriya Kannery),<br />
       nwfilter: Fix memory leak in the ebtables subdriver (Matthias Bolte),<br />
       qemu: Fix qemuDomainModifyDeviceFlags leaking the caps bitmap (Matthias Bolte),<br />
       Fix memory leak in __virExec (Matthias Bolte),<br />
       hash: fix memory leak regression (Eric Blake),<br />
       Xen: Do not generate net ifname if domain is inactive (Jim Fehlig),<br />
       xen: check if device is assigned to guest before reattaching (Yufang Zhang),<br />
       util: Initialize hooks at daemon shutdown if no hooks defined (Osier Yang),<br />
       fix virsh's regression (Wen Congyang),<br />
       release PCI address only when we have ensured it successfully (Wen Congyang),<br />
       free memory properly in cleanup patch (Hu Tao),<br />
       free buf content when vsnprintf() failed (Wen Congyang),<br />
       esx: Fix dynamic dispatch for CastFromAnyType functions (Matthias Bolte),<br />
       Make crash and live flags mutually exclusive in virDomainCoreDump (Mark Wu),<br />
       Fix small memory leaks in config parsing related functions (Matthias Bolte),<br />
       daemon: Don't try to free an unsigned int in error paths (Matthias Bolte),<br />
       Fix QEMU tunnelled migration FD handling (Daniel P. Berrange),<br />
       Remove artificial minimum limit for guest memory (Jiri Denemark),<br />
       fix tunnelled migration's regression (Wen Congyang),<br />
       qemu: fix the check of virDomainObjUnref()'s return value (Wen Congyang),<br />
       Fix checking of return codes in dispatcher (Daniel P. Berrange),<br />
       qemu: avoid qemu_driver being unlocked twice when virThreadPoolNew() failed (Wen Congyang),<br />
       virsh: fix regression in parsing optional integer (Eric Blake),<br />
       phyp: avoid memory leaks in command values (Eric Blake),<br />
       phyp: avoid memory leak on failure (Eric Blake),<br />
       phyp: avoid a logic bug (Eric Blake),<br />
       free cpumask of vcpupinDef (Hu Tao),<br />
       network: Fix NULL dereference during error recovery (Michal Privoznik),<br />
       Add missing checks for QEMU domain state in tunables APIs (Daniel P. Berrange),<br />
       phyp: Fix too small buffer allocation in phypAttachDevice (Matthias Bolte),<br />
       phyp: Don't overwrite error from virDomainDeviceDefParse by OOM error (Matthias Bolte),<br />
       phyp: Don't try to use a string from a failed virAsprintf (Matthias Bolte),<br />
       phyp: Remove stack allocating a 4kb volume key and fix related memory leaks (Matthias Bolte),<br />
       qemu: fix a dead-lock problem (Hu Tao),<br />
       util: Fix crash when removing entries during hash iteration (Jiri Denemark),<br />
       Fix possible infinite loop in remote driver (Michal Privoznik),<br />
       qemu: Remove the managed state file only if restoring succeeded (Osier Yang),<br />
       reattach pci devices when qemuPrepareHostdevPCIDevices() failed (Wen Congyang),<br />
       reattach pci device when pciBindDeviceToStub() failed (Wen Congyang),<br />
       remove devices from driver activePciHostdevs when qemuPrepareHostdevPCIDevices() failed (Wen Congyang),<br />
       pci: avoid invalid free, init path to NULL (Wen Congyang),<br />
       qemu: Support for overriding NPROC limit (Jiri Denemark),<br />
       qemu: Always reserves slot 0x02 for primary VGA. (Osier Yang),<br />
       Fix typo in systemtap tapset directory name (Daniel P. Berrange),<br />
       qemu: Ignore unusable binaries (Jiri Denemark)<br />
      </li><li> Improvements:<br />
       maint: detect clang 2.9 (Eric Blake),<br />
       qemu: update qemuCgroupControllerActive signature (Eric Blake),<br />
       lxc: report correct error (Eric Blake),<br />
       libxl: avoid compiler warning (Eric Blake),<br />
       storage: use virCommand to avoid compiler warning (Eric Blake),<br />
       tests: Lower stack usage below 4096 bytes (Matthias Bolte),<br />
       tests: Update valgrind suppressions file (Matthias Bolte),<br />
       tests: simplify common setup (Eric Blake),<br />
       network: fix return value of hostsFileWrite (Laine Stump),<br />
       libvirt/qemu - support persistent attach/detach disks (KAMEZAWA Hiroyuki),<br />
       libvirt/qemu - support persistent modification of devices (KAMEZAWA Hiroyuki),<br />
       util: Simplify hash implementation (Jiri Denemark),<br />
       tests: More unit tests for internal hash APIs (Jiri Denemark),<br />
       Move call to virReportOOMError into virFileBuildPath (Matthias Bolte),<br />
       build: use gnulib passfd for simpler SCM_RIGHTS code (Eric Blake),<br />
       qemu: Add flags checking in DomainCoreDump (Jiri Denemark),<br />
       Make sure DNSMASQ_STATE_DIR exists (Guido Günther),<br />
       build: make VIR_FREE do some type checking (Eric Blake),<br />
       threads: add one-time initialization support (Eric Blake),<br />
       esx: Add a wrapper for shared CURL handles (Matthias Bolte),<br />
       esx: Move CURL handling code to it's own type (Matthias Bolte),<br />
       daemon: Honor error variable name change in the generator (Matthias Bolte),<br />
       libvirt/qemu - clean up UpdateDevice for consolidation. (KAMEZAWA Hiroyuki),<br />
       libvirt/qemu - clean up At(De)tachDeviceFlags() for consolidation. (KAMEZAWA Hiroyuki),<br />
       libvirt/qemu - Centralize device modification in the more flexible APIs (KAMEZAWA Hiroyuki),<br />
       Add support for s390(x) cpu options parsing (Michal Privoznik),<br />
       PHYP: Adding reboot domain function (Eduardo Otubo),<br />
       nwfilter: no support for direct type of interface (Stefan Berger),<br />
       Add cputune support to libxl driver (Markus Groß),<br />
       Update and sort msg_gen_function list and mark unmarked messages (Matthias Bolte),<br />
       Write error check conditionals in more compact form for dispatcher (Daniel P. Berrange),<br />
       Merge all returns paths from dispatcher into single path (Daniel P. Berrange),<br />
       Experimental libvirtd upstart job (Alan Pevec),<br />
       enhance processWatchdogEvent() (Wen Congyang),<br />
       xen: Replace statsErrorFunc with a macro (Matthias Bolte),<br />
       tests: Unit tests for internal hash APIs (Jiri Denemark),<br />
       build: include esx_vi.generated.* into dist file (Wen Congyang),<br />
       tests: test recent virsh option parsing changes (Eric Blake),<br />
       virsh: list required options first (Eric Blake),<br />
       phyp: use consistent return string handling (Eric Blake),<br />
       maint: use lighter-weight function for straight appends (Eric Blake),<br />
       libvirt-guests: implement START_DELAY (Alexander Todorov),<br />
       network: truncate bridges' dummy tap device names to IFNAMSIZ (15) chars (Laine Stump),<br />
       Introduce virDomainChrDefNew() (Michal Novotny),<br />
       esx: Make the parsed URI part of the private connection data (Matthias Bolte),<br />
       esx: Mark error message in macros for translation (Matthias Bolte),<br />
       esx: Extend VI generator to cover managed object types (Matthias Bolte),<br />
       esx: Cleanup and refactor CastFromAnyType macros (Matthias Bolte),<br />
       esx: Cleanup VI generator code (Matthias Bolte),<br />
       phyp: Reduce code duplication in error and success paths (Matthias Bolte),<br />
       Replace REMOTE_DEBUG with VIR_DEBUG in daemon dispatcher (Daniel P. Berrange),<br />
       Add missing checks for whether the connection is open in dispatcher (Daniel P. Berrange),<br />
       PHYP: Adding network interface (Eduardo Otubo),<br />
       xen: Remove PATH_MAX sized stack allocation from block stats code (Matthias Bolte),<br />
       setmaxmem: add the new options to "virsh setmaxmem" command (Taku Izumi),<br />
       maxmem: implement virDomainSetMaxMemory API of the qemu driver (Taku Izumi),<br />
       maxmem: introduces VIR_DOMAIN_MEM_MAXIMUM flag (Taku Izumi),<br />
       nwfilters: support for TCP flags evaluation (Stefan Berger),<br />
       setmem: add --current option to virsh setmem command (Taku Izumi),<br />
       setmem: add VIR_DOMAIN_MEM_CURRENT support to qemu (Taku Izumi),<br />
       setmem: introduce VIR_DOMAIN_MEM_CURRENT flag (Taku Izumi),<br />
       build: Install libxenlight log dir (Jim Fehlig),<br />
       Add domainSet/GetSchedulerParameters to libxl driver (Markus Groß),<br />
       rename pciUnBindDeviceFromStub() to pciUnbindDeviceFromStub() and float it up (Wen Congyang),<br />
       Add domainIsUpdated to libxl driver (Markus Groß),<br />
       Change locking for udev monitor and callbacks (Serge Hallyn),<br />
       Improve SCSI volume key generation (Daniel P. Berrange),<br />
       qemu: Rewrite LOOKUP_PTYS macro into a function (Jiri Denemark),<br />
       Enable use of -Wold-style-definition compiler flag (Daniel P. Berrange),<br />
       Enable use of -Wmissing-noreturn (Daniel P. Berrange),<br />
       Enable -Wmissing-format-attribute warning (Daniel P. Berrange),<br />
       Use gnulib's manywarnings and warnings modules (Daniel P. Berrange),<br />
       Use virBufferPtr for sexpr2string instead of manual buffer handling (Matthias Bolte),<br />
       xend: Remove 4kb stack allocation (Matthias Bolte),<br />
       uml: Remove PATH_MAX sized stack allocation from /proc parsing code (Matthias Bolte),<br />
       storage: Remove PATH_MAX sized stack allocation from iSCSI backend (Matthias Bolte),<br />
       qemu: Remove PATH_MAX sized stack allocation used in commandline building (Matthias Bolte),<br />
       Remove PATH_MAX sized stack allocation from virFileOpenTtyAt (Matthias Bolte),<br />
       openvz: Remove several larger stack allocations (Matthias Bolte),<br />
       daemon: Remove 4kb stack allocation of security label (Matthias Bolte),<br />
       virsh: Remove two 4kb stack allocations (Matthias Bolte),<br />
       Use virFileAbsPath instead of manually creating the absolute path (Matthias Bolte),<br />
       xenxs: Remove PATH_MAX sized stack allocation in XM script parsing (Matthias Bolte),<br />
       sasl: Remove stack allocated 8kb temporary buffers (Matthias Bolte),<br />
       qemu: Use heap allocated memory to read the monitor greeting (Matthias Bolte),<br />
       phyp: Remove 16kb stack allocation (Matthias Bolte),<br />
       virt-aa-helper: Remove PATH_MAX sized stack allocations (Matthias Bolte),<br />
       ebtables: Remove PATH_MAX sized stack allocation (Matthias Bolte),<br />
       pci: Remove PATH_MAX sized stack allocations (Matthias Bolte),<br />
       Remove PATH_MAX sized stack allocations related to virFileBuildPath (Matthias Bolte),<br />
       vmx: Use case-insensitive compare functions for all content (Matthias Bolte),<br />
       vmx: Support persistent CPU shares (Matthias Bolte),<br />
       Add autostart support to libxl driver (Markus Groß),<br />
       Allow relative path for qemu backing file (Jesse Cook),<br />
       build: detect potentential uninitialized variables (Eric Blake)<br />
      </li><li> Cleanups:<br />
       esx: Disable performance counter queries in esxDomainGetInfo (Matthias Bolte),<br />
       esx: Remove dead store in esxUtil_ParseDatastorePath (Matthias Bolte),<br />
       util: remove dead assignment (Eric Blake),<br />
       qemu: remove dead assignment (Eric Blake),<br />
       qemu: silence clang false positives (Eric Blake),<br />
       tests: suppress more valgrind situations (Eric Blake),<br />
       tests: avoid compiler warning (Eric Blake),<br />
       qemu: fix uninitialized variable warning (Christophe Fergeau),<br />
       build: fix syntax-check failure (Eric Blake),<br />
       virsh: nuke use of TRUE and FALSE (Eric Blake),<br />
       phyp: another simplification (Eric Blake),<br />
       maint: ignore built file (Eric Blake),<br />
       Change some variable names to follow standard in daemon dispatcher (Daniel P. Berrange),<br />
       Remove curly braces on all single-line conditional jumps in dispatcher (Daniel P. Berrange),<br />
       Remove virConnectPtr from virRaiseErrorFull (Matthias Bolte),<br />
       phyp: prefer memcpy over memmove when legal (Eric Blake),<br />
       phyp: use consistent style for labels (Eric Blake),<br />
       phyp: more return handling cleanup (Eric Blake),<br />
       esx: Fix gcc 4.6 warning about initialized but unused variables (Matthias Bolte),<br />
       maint: silence cppi warnings (Eric Blake),<br />
       Fix gcc 4.6 warnings in vbox_tmpl.c (Christophe Fergeau),<br />
       Fix gcc 4.6 warnings (Christophe Fergeau),<br />
       Remove C99 variable declare in PHYP network driver (Daniel P. Berrange),<br />
       Standard on error variable name in libvirtd dispatcher (Daniel P. Berrange),<br />
       Remove all whitespace before function brackets in daemon dispatcher (Daniel P. Berrange),<br />
       docs: tweak virsh restore warning (Eric Blake),<br />
       setmaxmem: remove the code to invoke virDomainSetMemory in cmdSetmaxmem (Taku Izumi),<br />
       build: fix gitignore sorting (Eric Blake),<br />
       tests: fix recent test failures (Eric Blake),<br />
       libxl: avoid compiler warning (Eric Blake),<br />
       Avoid compiler warnings about int to void * casts (Daniel P. Berrange),<br />
       Remove acinclude.m4 file (Daniel P. Berrange),<br />
       Remove possible uninitialized variable in openvz driver (Daniel P. Berrange)<br />
      </li></ul>
        <h3>0.9.0: Apr 4 2011</h3>
        <ul><li> Features:<br />
      Support cputune cpu usage tuning (Osier Yang and Nikunj A. Dadhania),<br />
      Add public APIs for storage volume upload/download (Daniel P. Berrange),<br />
      Add public API for setting migration speed on the fly (Daniel P. Berrange),<br />
      Add libxenlight driver (Jim Fehlig and Markus Groß),<br />
      qemu: support migration to fd (Eric Blake),<br />
      libvirt: add virDomain{Get,Set}BlkioParameters (Gui Jianfeng),<br />
      setmem: introduce a new libvirt API (virDomainSetMemoryFlags) (Taku Izumi),<br />
      Expose event loop implementation as a public API (Daniel P. Berrange),<br />
      Dump the debug buffer to libvirtd.log on fatal signal (Daniel Veillard),<br />
      Audit support (Eric Blake)<br />
      </li><li> Documentation:<br />
      fix typo (Eric Blake),<br />
      correct invalid xml (Eric Blake),<br />
      virsh: Fix documentation for memtune command (Jiri Denemark),<br />
      Fix several formatting mistakes in doc (Michal Privoznik),<br />
      mention C89 syntax preferences (Eric Blake),<br />
      document recent hook additions (Eric Blake),<br />
      Update on the goal page (Daniel Veillard),<br />
      Document first release with spice and qxl (Cole Robinson),<br />
      Add schema definition for imagelabel (Osier Yang),<br />
      update virGetVersion description (Tiziano Mueller),<br />
      Improve logging documentation including the debug buffer (Daniel Veillard),<br />
      update windows page for initial libvirt 0.8.8 installer (Justin Clift),<br />
      formatdomain.html.in: Fix spelling PIC-&gt;PCI (Philipp Hahn),<br />
      fix missing &lt;p&gt; (Eric Blake),<br />
      documenting the 802.1Qbg parameters of a 'direct' interface (Gerhard Stenzel),<br />
      silence warnings about generated API docs (Eric Blake),<br />
      document &lt;driver name='vhost'/&gt; for interfaces (Eric Blake),<br />
      correct range of default NAT subnet (Eric Blake),<br />
      formatdomain: Add release info for disk &lt;driver&gt; attributes (Cole Robinson),<br />
      Fix spelling mistake: seek (Philipp Hahn),<br />
      maint: fix grammar in error message (Eric Blake)<br />
      </li><li> Portability:<br />
      virsh: fix mingw failure on creating nonblocking pipe (Eric Blake),<br />
      Remove iohelper on Win32 since it is not required (Daniel P. Berrange),<br />
      Fix domain events C example on Win32 (Daniel P. Berrange),<br />
      build: fix compilation on mingw (Eric Blake),<br />
      util: use SCM_RIGHTS in virFileOperation when needed (Eric Blake),<br />
      Don't use INT64_MAX in libvirt.h because it requires stdint.h (Matthias Bolte),<br />
      libvirtd: Remove indirect linking (Guido Günther),<br />
      build: avoid compiler warning on cygwin (Eric Blake),<br />
      build: fix build on cygwin (Eric Blake),<br />
      build: fix building error when building without libvirtd (Wen Congyang),<br />
      virsh: Remove indirect link against libxml2 (Guido Günther),<br />
      Fix build on cygwin (Daniel Veillard),<br />
      Add check for kill() to fix build of cgroups on win32 (Daniel P. Berrange),<br />
      build: fix broken mingw cross-compilation (Eric Blake)<br />
      </li><li> Bug fixes:<br />
      fix memory leak in qemuProcessHandleGraphics() (Wen Congyang),<br />
      do not lock vm while allocating memory (Wen Congyang),<br />
      Fix libxl driver startup (Daniel Veillard),<br />
      qemu: Ignore libvirt debug messages in qemu log (Jiri Denemark),<br />
      qemu: Fix improper logic of qemuCgroupSetup (Osier Yang),<br />
      free tmp after unlinking it (Wen Congyang),<br />
      qemu: Fix media eject with qemu-0.12.* (Jiri Denemark),<br />
      check whether qemuMonitorJSONHMP() failed (Wen Congyang),<br />
      do not send monitor command after monitor meet error (Wen Congyang),<br />
      qemu: unlock qemu driver before return from domain save (Hu Tao),<br />
      qemu: fix regression with fd labeling on migration (Eric Blake),<br />
      Ignore return value of virDomainObjUnref (Markus Groß),<br />
      Fix infinite loop in daemon if client quits with multiple streams open (Daniel P. Berrange),<br />
      qemu: fix regression that hangs on save failure (Eric Blake),<br />
      qemu: fix restoring a compressed save image (Eric Blake),<br />
      util: allow clearing cloexec bit (Eric Blake),<br />
      logging: always NUL-terminate circular buffer (Eric Blake),<br />
      tests: don't alter state in $HOME (Eric Blake),<br />
      qemu: don't restore state label twice (Eric Blake),<br />
      Fix syntax error in configure.ac (Osier Yang),<br />
      remote: Don't leak gnutls session on negotiation error (Matthias Bolte),<br />
      hooks: fix regression in previous patch (Eric Blake),<br />
      Add missing { for qemudDomainInterfaceStats (Philipp Hahn),<br />
      daemon: Avoid resetting errors before they are reported (Jiri Denemark),<br />
      fix the check of the output of monitor command 'device_add' (Wen Congyang),<br />
      Make error reporting in libvirtd thread safe (Jiri Denemark),<br />
      update domain status forcibly even if attach a device failed (Wen Congyang),<br />
      util: Fix return value for virJSONValueFromString if it fails (Osier Yang),<br />
      Initialization error of qemuCgroupData in Qemu host usb hotplug (Wen Congyang),<br />
      build: fix missing initializer (Eric Blake),<br />
      Fix uninitialized variable &amp; error reporting in LXC veth setup (Daniel P. Berrange),<br />
      udev: fix regression with qemu:///session (Eric Blake),<br />
      logging: fix off-by-one bug (Eric Blake),<br />
      do not report OOM error when prepareCall() failed (Wen Congyang),<br />
      Don't return an error on failure to create blkio controller (Hu Tao),<br />
      qemu: respect locking rules (Eric Blake),<br />
      openvz: fix a simple bug in openvzListDefinedDomains() (Jean-Baptiste Rouault),<br />
      Fix delayed event delivery when SASL is active (Daniel P. Berrange),<br />
      qemu: Fix copy&amp;paste error messages in text monitor (Jiri Denemark),<br />
      do not unref obj in qemuDomainObjExitMonitor* (Wen Congyang),<br />
      qemu: check driver name while attaching disk (Wen Congyang),<br />
      remote: Add missing virCondDestroy calls (Matthias Bolte),<br />
      build: improve rpm generation for distro backports (Eric Blake),<br />
      storage: Fix a problem which will cause libvirtd crashed (Osier Yang),<br />
      Fix misc bugs in virCommandPtr (Daniel P. Berrange),<br />
      libvirt: fix a simple bug in virDomainSetMemoryFlags() (Taku Izumi),<br />
      qemu: Check the unsigned integer overflow (Osier Yang),<br />
      audit: eliminate potential null pointer deref when auditing macvtap devices (Laine Stump),<br />
      network driver: don't send default route to clients on isolated networks (Laine Stump),<br />
      virsh: Free stream when shutdown console (Osier Yang),<br />
      Add missing checks for read only connections (Guido Günther),<br />
      qemu: fix -global argument usage (Eric Blake),<br />
      Make sure we reset the umask on the error path (Guido Günther),<br />
      qemu: Stop guest CPUs before creating a snapshot (Jiri Denemark),<br />
      qemu: Escape snapshot name passed to {save,load,del}vm (Jiri Denemark),<br />
      qemu: Fix warnings in event handlers (Jiri Denemark),<br />
      storage: Update qemu-img flag checking (Osier Yang),<br />
      Make sure the rundir is accessible by the user (Guido Günther),<br />
      Fix a wrong error message thrown to user (Hu Tao),<br />
      unlock eventLoop before calling callback function (Wen Congyang),<br />
      fixes for several memory leaks (Phil Petty),<br />
      Fix a counter bug in the log buffer (Daniel Veillard),<br />
      qemu: avoid corruption of domain hashtable and misuse of freed domains (Laine Stump),<br />
      qemu: Add missing lock of virDomainObj before calling virDomainUnref (Laine Stump),<br />
      esx: Escape password for XML (Matthias Bolte),<br />
      util: correct retry path in virFileOperation (Eric Blake),<br />
      util: Allow removing hash entries in virHashForEach (Jiri Denemark),<br />
      qemu: avoid double close on domain restore (Eric Blake),<br />
      Fix port value parsing for serial and parallel ports (Michal Novotny),<br />
      Fix off-by-1 in virFileAbsPath. (Daniel P. Berrange),<br />
      security: avoid memory leak (Eric Blake),<br />
      protect the scsi controller to be deleted when it is in use (Wen Congyang),<br />
      virsh: freecell --all getting wrong NUMA nodes count (Michal Privoznik),<br />
      remove duplicated call to reportOOMError (Christophe Fergeau)<br />
      </li><li> Improvements:<br />
      Make check_fc_host() and check_vport_capable() usable as rvalues (Guido Günther),<br />
      maint: avoid locale-sensitivity in string case comparisons (Eric Blake),<br />
      extend logging to record configuration-related changes (Naoya Horiguchi),<br />
      Add libvirt_iohelper to spec file (Daniel Veillard),<br />
      cputune: New tests for cputune XML (Osier Yang),<br />
      cputune: Support cputune for xend driver (Osier Yang),<br />
      cputune: Support cputune for lxc driver (Osier Yang),<br />
      cputune: Support cputune for qemu driver (Osier Yang),<br />
      cputune: Implementations of parsing and formating cputune xml (Osier Yang),<br />
      cputune: Add data structures presenting cputune XML (Osier Yang),<br />
      cputune: Add document for cputune XML (Osier Yang),<br />
      cputune: Add XML schema for cputune xml (Osier Yang),<br />
      qemu: improve error message on failed fd transfer (Eric Blake),<br />
      maint: ignore new built file (Eric Blake),<br />
      Add domainSuspend/Resume to libxl driver (Markus Groß),<br />
      Add domainGetOSType to libxl driver (Markus Groß),<br />
      Add domainGetSchedulerType to libxl driver (Markus Groß),<br />
      Implements domainXMLTo/FromNative in libxl driver (Markus Groß),<br />
      Add vcpu functions to libxl driver (Markus Groß),<br />
      List authors in copyright headers (Markus Groß),<br />
      Add event callbacks to libxl driver (Markus Groß),<br />
      Remote protocol support for storage vol upload/download APIs (Daniel P. Berrange),<br />
      Support volume data upload/download APIs in storage driver (Daniel P. Berrange),<br />
      Add vol-upload and vol-download commands to virsh (Daniel P. Berrange),<br />
      Enhance the streams helper to support plain file I/O (Daniel P. Berrange),<br />
      Update event loop example programs to demonstrate best practice (Daniel P. Berrange),<br />
      qemu: support fd: migration with compression (Eric Blake),<br />
      qemu: skip granting access during fd migration (Eric Blake),<br />
      qemu: consolidate migration to file code (Eric Blake),<br />
      qemu: use common API for reading difficult files (Eric Blake),<br />
      qemu, storage: improve type safety (Eric Blake),<br />
      util: adjust indentation in previous patch (Eric Blake),<br />
      util: rename virFileOperation to virFileOpenAs (Eric Blake),<br />
      storage: simplify fd handling (Eric Blake),<br />
      qemu: simplify domain save fd handling (Eric Blake),<br />
      qemu: allow simple domain save to use fd: protocol (Eric Blake),<br />
      Update of localisations, switch to transifex (Daniel Veillard),<br />
      build: shorten libxenlight summary for consistent alignment (Eric Blake),<br />
      command: add virCommandAbort for cleanup paths (Eric Blake),<br />
      command: don't mix RunAsync and daemons (Eric Blake),<br />
      command: properly diagnose process exit via signal (Eric Blake),<br />
      Add memory functions to libxl driver (Markus Groß),<br />
      build: enforce reference count checking (Eric Blake),<br />
      maint: prohibit access(,X_OK) (Eric Blake),<br />
      Get cpu time and current memory balloon from libxl (Markus Groß),<br />
      build: nuke all .x-sc* files, and fix VPATH syntax-check (Eric Blake),<br />
      command: reject pidfile on non-daemon (Eric Blake),<br />
      rpm: add missing dependencies (Eric Blake),<br />
      rpm: separate runtime and build requirements (Eric Blake),<br />
      qemu: simplify monitor callbacks (Eric Blake),<br />
      8021Qbh: use preassociate-rr during the migration prepare stage (Roopa Prabhu),<br />
      Wire up virDomainMigrateSetSpeed into QEMU driver (Daniel P. Berrange),<br />
      Wire up virDomainMigrateSetSpeed for the remote RPC driver (Daniel P. Berrange),<br />
      maint: update authors (Eric Blake),<br />
      Disable libxl build in RPM on Fedora &lt; 16 (Daniel P. Berrange),<br />
      qemu: fallback to HMP drive_add/drive_del (Hu Tao),<br />
      qemu: Only use HMP passthrough if it is supported (Jiri Denemark),<br />
      qemu: Detect support for HMP passthrough (Jiri Denemark),<br />
      qemu: add two hook script events "prepare" and "release" (Thibault Vincent),<br />
      qemu: simplify interface fd handling in monitor (Eric Blake),<br />
      qemu: simplify PCI configfd handling in monitor (Eric Blake),<br />
      qemu: simplify monitor fd error handling (Eric Blake),<br />
      util: guarantee sane errno in virFileIsExecutable (Eric Blake),<br />
      Don't build libxenlight driver for Xen 4.0 (Jim Fehlig),<br />
      network driver: log error and abort network startup when radvd isn't found (Laine Stump),<br />
      build: translate changes in previous patch (Eric Blake),<br />
      Ensure binary is resolved wrt $PATH in virExec (Daniel P. Berrange),<br />
      util: Forbid calling hash APIs from iterator callback (Jiri Denemark),<br />
      Avoid taking lock in libvirt debug dump (Daniel Veillard),<br />
      unlock the monitor when unwatching the monitor (Wen Congyang),<br />
      Add vim configuration that makes vim auto-indent code (Hu Tao),<br />
      virsh: fix memtune's help message for swap_hard_limit (Nikunj A. Dadhania),<br />
      Add PCI sysfs reset access (Alex Williamson),<br />
      Support Xen sysctl v8, domctl v7 (Jim Fehlig),<br />
      macvtap: log an error if on failure to connect to netlink socket (Laine Stump),<br />
      qemu: improve efficiency of dd during snapshots (Eric Blake),<br />
      virsh: allow empty string arguments (Eric Blake),<br />
      qemu: Fallback to HMP when cpu_set QMP command is not found (Wen Congyang),<br />
      Change message for VIR_FROM_RPC error domain (Daniel P. Berrange),<br />
      Add compat function for geteuid() (Daniel P. Berrange),<br />
      Add virSetBlocking() to allow O_NONBLOCK to be toggle on or off (Daniel P. Berrange),<br />
      qemu: use more appropriate error (Eric Blake),<br />
      Make LXC container startup/shutdown/I/O more robust (Daniel P. Berrange),<br />
      Allow to dynamically set the size of the debug buffer (Daniel Veillard),<br />
      qemu: consolidate duplicated monitor migration code (Eric Blake),<br />
      qemu: use lighter-weight fd:n on incoming tunneled migration (Eric Blake),<br />
      Fix performance problem of virStorageVolCreateXMLFrom() (Minoru Usui),<br />
      libvirt-guests: avoid globbing when splitting $URIS (Eric Blake),<br />
      libvirt-guest.init: quoting variables (Philipp Hahn),<br />
      virsh: Insert error messages to avoid a quiet abortion of commands (Michal Privoznik),<br />
      python: Use hardcoded python path in libvirt.py (Jiri Denemark),<br />
      virsh: Allow starting domains by UUID (Jiri Denemark),<br />
      network driver: Use a separate dhcp leases file for each network (Laine Stump),<br />
      network driver: Start dnsmasq even if no dhcp ranges/hosts are specified. (Laine Stump),<br />
      libvirt-guest.init: handle domain name with spaces (Philipp Hahn),<br />
      domain.rng vs. formatdomain.html#elementsUSB (Philipp Hahn),<br />
      Ignore backing file errors in FS storage pool (Philipp Hahn),<br />
      remote-protocol: implement new BlkioParameters API (Gui Jianfeng),<br />
      virsh: Adding blkiotune command to virsh tool (Gui Jianfeng),<br />
      qemu: implement new BlkioParameters API (Gui Jianfeng),<br />
      libvirt: implements virDomain{Get,Set}BlkioParameters (Gui Jianfeng),<br />
      setmem: add the new options to "virsh setmem" command (Taku Izumi),<br />
      setmem: implement the remote protocol to address the new API (Taku Izumi),<br />
      setmem: implement the code to address the new API in the qemu driver (Taku Izumi),<br />
      audit: audit use of /dev/net/tun, /dev/tapN, /dev/vhost-net (Eric Blake),<br />
      qemu: don't request cgroup ACL access for /dev/net/tun (Eric Blake),<br />
      qemu: support vhost in attach-interface (Eric Blake),<br />
      qemu: Refactor qemuDomainSnapshotCreateXML (Jiri Denemark),<br />
      qemu: Fallback to HMP for snapshot commands (Jiri Denemark),<br />
      qemu: Setup infrastructure for HMP passthrough (Jiri Denemark),<br />
      qemu: Replace deprecated option of qemu-img (Osier Yang),<br />
      audit: also audit cgroup ACL permissions (Eric Blake),<br />
      cgroup: allow fine-tuning of device ACL permissions (Eric Blake),<br />
      audit: rename remaining qemu audit functions (Eric Blake),<br />
      audit: also audit cgroup controller path (Eric Blake),<br />
      audit: split cgroup audit types to allow more information (Eric Blake),<br />
      audit: tweak audit messages to match conventions (Eric Blake),<br />
      Don't overwrite virRun error messages (Cole Robinson),<br />
      virsh: Change option parsing functions to return tri-state information (Michal Privoznik),<br />
      virsh: change vshCommandOptString return type and fix const-correctness (Michal Privoznik),<br />
      support to detach USB disk (Wen Congyang),<br />
      rename qemuDomainDetachSCSIDiskDevice to qemuDomainDetachDiskDevice (Wen Congyang),<br />
      qemu_hotplug: Reword error if spice password change not available (Cole Robinson),<br />
      Move event code out of the daemon/ into src/util/ (Daniel P. Berrange),<br />
      Convert daemon/virsh over to use primary event APIs, rather than impl (Daniel P. Berrange),<br />
      Cleaning up some of the logging code (Daniel Veillard),<br />
      qemu: Support vram for video of qxl type (Osier Yang),<br />
      Add an an internal API for emergency dump of debug buffer (Daniel Veillard),<br />
      Add logrotate support for libvirtd.log (Daniel Veillard),<br />
      Change default log policy to libvirtd.log instead of syslog (Daniel Veillard),<br />
      Force all logs to go to the round robbin memory buffer (Daniel Veillard),<br />
      AUTHORS: adjust to preferred spelling (KAMEZAWA Hiroyuki),<br />
      Pass virSecurityManagerPtr to virSecurityDAC{Set, Restore}ChardevCallback (Soren Hansen),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      Attempt to improve an error message (Daniel P. Berrange),<br />
      add additional event debug points (Daniel P. Berrange),<br />
      qemu: only request sound cgroup ACL when required (Eric Blake),<br />
      Add support for multiple serial ports into the Xen driver (Michal Novotny),<br />
      Add APIs for killing off processes inside a cgroup (Daniel P. Berrange),<br />
      Allow hash tables to use generic pointers as keys (Daniel P. Berrange),<br />
      Remove deallocator parameter from hash functions (Daniel P. Berrange),<br />
      Make commandtest more robust wrt its execution environment (Daniel P. Berrange),<br />
      audit: audit qemu pci and usb device passthrough (Eric Blake),<br />
      audit: audit qemu memory and vcpu adjustments (Eric Blake),<br />
      audit: add qemu hooks for auditing cgroup events (Eric Blake),<br />
      audit: prepare qemu for listing vm in cgroup audits (Eric Blake),<br />
      cgroup: determine when skipping non-devices (Eric Blake),<br />
      virExec: avoid uninitialized memory usage (Eric Blake),<br />
      Allow 32-on-64 execution for LXC guests (Daniel P. Berrange),<br />
      Put &lt;stdbool.h&gt; into internal.h so it is available everywhere (Daniel P. Berrange),<br />
      qemu: Switch over command line capabilities to virBitmap (Jiri Denemark),<br />
      qemu: Rename qemud\?CmdFlags to qemuCaps (Jiri Denemark),<br />
      qemu: Use helper functions for handling cmd line capabilities (Jiri Denemark),<br />
      qemu: Rename QEMUD_CMD_FLAG_* to QEMU_CAPS_* (Jiri Denemark),<br />
      util: Add API for converting virBitmap into printable string (Jiri Denemark),<br />
      util: Use unsigned long as a base type for virBitmap (Jiri Denemark),<br />
      Expose name + UUID to LXC containers via env variables (Daniel P. Berrange),<br />
      Fix discard of expected errors (Daniel P. Berrange),<br />
      Fix group/mode for /dev/pts inside LXC container (Daniel P. Berrange),<br />
      802.1Qbh: Delay IFF_UP'ing interface until migration final stage (Roopa Prabhu),<br />
      storage: make debug log more useful (Osier Yang),<br />
      virsh: replace vshPrint with vshPrintExtra for snapshot list Otherwise extra information will be printed even if "--quiet" is specified. (Osier Yang),<br />
      check device-mapper when building with mpath or disk storage driver (Wen Congyang),<br />
      build: add dependency on gnutls-utils (Eric Blake),<br />
      Renamed functions in xenxs (Markus Groß),<br />
      Moved XM formatting functions to xenxs (Markus Groß),<br />
      Moved XM parsing functions to xenxs (Markus Groß),<br />
      Moved SEXPR formatting functions to xenxs (Markus Groß),<br />
      Moved SEXPR parsing functions to xenxs (Markus Groß),<br />
      Moved some SEXPR functions from xen-unified (Markus Groß),<br />
      Moved SEXPR unit to utils (Markus Groß),<br />
      virt-*-validate.in: quote all variable references (Dan Kenigsberg),<br />
      virt-pki-validate: behave when CERTTOOL is missing (Dan Kenigsberg),<br />
      autobuild.sh: use VPATH build (Eric Blake),<br />
      maint: fix 'make dist' in VPATH build (Eric Blake),<br />
      build: don't require pod2man for tarball builds (Eric Blake),<br />
      hash: make virHashFree more free-like (Eric Blake),<br />
      build: Fix API docs generation in VPATH build (Jiri Denemark),<br />
      Remove all object hashtable caches from virConnectPtr (Daniel P. Berrange),<br />
      nwfilter: enable rejection of packets (Stefan Berger),<br />
      Drop empty argument from dnsmasq call (Guido Günther),<br />
      esx: Ignore malformed host UUID from BIOS (Matthias Bolte),<br />
      build: speed up non-maintainer builds (Eric Blake),<br />
      build: recompute symbols after changing configure options (Eric Blake),<br />
      Requires gettext for client package (Osier Yang),<br />
      Do not add drive 'boot=on' param when a kernel is specified (Jim Fehlig),<br />
      factor common code in virHashAddEntry and virHashUpdateEntry (Christophe Fergeau),<br />
      add hash table rebalancing in virHashUpdateEntry (Christophe Fergeau),<br />
      hash: modernize debug code (Eric Blake),<br />
      build: improve 'make install' for VPATH builds (Eric Blake),<br />
      check more error info about whether drive_add failed (Wen Congyang),<br />
      logging: make VIR_ERROR and friends preserve errno (Eric Blake),<br />
      maint: avoid 'make syntax-check' from tarball (Eric Blake),<br />
      Give each virtual network bridge its own fixed MAC address (Laine Stump),<br />
      Allow brAddTap to create a tap device that is down (Laine Stump),<br />
      Add txmode attribute to interface XML for virtio backend (Laine Stump),<br />
      Restructure domain struct interface "driver" data for easier expansion (Laine Stump),<br />
      build: Fix VPATH build (Jiri Denemark),<br />
      storage: Allow to delete device mapper disk partition (Osier Yang)<br />
      </li><li> Cleanups:<br />
      The next release is 0.9.0 not 0.8.9 (Daniel Veillard),<br />
      maint: use space, not tab, in remote_protocol-structs (Eric Blake),<br />
      Remove the Open Nebula driver (Daniel P. Berrange),<br />
      domain_conf: drop unused ref-count in snapshot object (Eric Blake),<br />
      Update the set of maintainers for the project (Daniel Veillard),<br />
      Make virDomainObjParseNode() static (Hu Tao),<br />
      maint: make spacing in .sh files easier (Eric Blake),<br />
      network driver: Fix indentation from previous commit (Laine Stump),<br />
      qemu: Rename qemuMonitorCommandWithHandler as qemuMonitorText* (Jiri Denemark),<br />
      qemu: Rename qemuMonitorCommand{,WithFd} as qemuMonitorHMP* (Jiri Denemark),<br />
      maint: avoid long lines in more tests (Eric Blake),<br />
      maint: kill all remaining uses of old DEBUG macro (Eric Blake),<br />
      maint: Expand tabs in python code (Jiri Denemark),<br />
      remove space between function name and ( (Christophe Fergeau),<br />
      don't check for NULL before calling virHashFree (Christophe Fergeau),<br />
      remove no longer needed calls to virReportOOMError (Christophe Fergeau),<br />
      Move all the QEMU migration code to a new file (Daniel P. Berrange),<br />
      Split all QEMU process management code into separate file (Daniel P. Berrange)<br />
      </li></ul>
        <h3>0.8.8: Feb 17 2011</h3>
        <ul><li>Features:<br />
      sysinfo: expose new API (Eric Blake),<br />
      cgroup blkio weight support. (Gui Jianfeng),<br />
      smartcard device support (Eric Blake),<br />
      qemu: Support per-device boot ordering (Jiri Denemark)<br />
      </li><li>Documentation:<br />
      docs: fix typos (Eric Blake),<br />
      docs: added link for nimbus to apps page (Justin Clift),<br />
      Update src/README (Matthias Bolte),<br />
      docs: Add information about libvirt-php new location (Michal Novotny),<br />
      Add libvirt-php information page (Michal Novotny),<br />
      cgroup: Add documentation for blkiotune elements. (Gui Jianfeng),<br />
      docs/index.html.in: update KVM url (Niels de Vos),<br />
      docs/index.html.in: update QEMU url (Alon Levy),<br />
      docs: more on qemu locking patterns (Eric Blake),<br />
      docs: renamed hudson project link to jenkins, matching project rename (Justin Clift),<br />
      docs: Update docs for cpu_shares setting (Osier Yang),<br />
      docs: replace CRLF with LF (Juerg Haefliger),<br />
      docs: Add docs for new extra parameter pkipath (Osier Yang),<br />
      docs: expand the man page text for virsh setmaxmem (Justin Clift),<br />
      docs: fix incorrect XML element mentioned by setmem text (Justin Clift),<br />
      docs: add a link to the bindings page under the downloads menu item (Justin Clift),<br />
      docs: document &lt;controller&gt; element (Eric Blake),<br />
      docs: move the apps page to the top level as its good promo (Justin Clift),<br />
      docs: added new entries to apps page, plus adjusted a few existing (Justin Clift),<br />
      docs: document &lt;sysinfo&gt; and &lt;smbios&gt; elements (Eric Blake),<br />
      datatypes: Fix outdated function names in the documentation (Matthias Bolte),<br />
      Add documentation for VIR_DOMAIN_MEMORY_PARAM_UNLIMITED (Matthias Bolte),<br />
      docs: Move the "Network Filtering" page one level up in the hierarchy (Matthias Bolte),<br />
      docs: add buildbot to the apps page (Justin Clift),<br />
      docs: add new conversion heading to the apps listing (Justin Clift),<br />
      docs: updated windows page for new 0.8.7 installer (Justin Clift),<br />
      docs: clarify virsh setvcpus and setmem usage with active domains (Justin Clift),<br />
      Document HAP domain feature (Jim Fehlig),<br />
      docs: fix trivial typos in currentMemory description (Justin Clift),<br />
      doc: improve the documentation of desturi (Wen Congyang),<br />
      docs: reorder apps page alphabetically, plus add libguestfs entries (Justin Clift),<br />
      docs: add entry for archipel to the apps page (Justin Clift),<br />
      docs: use xml entity encoding for extended character last name (Justin Clift),<br />
      docs: updated memtune info again in virsh command reference (Justin Clift),<br />
      docs: updated release of virsh cmd reference, with memtune info (Justin Clift),<br />
      maint: document dislike of mismatched if/else bracing (Eric Blake),<br />
      docs: added libvirt-announce to contact page (Justin Clift)<br />
      </li><li>Portability:<br />
      qemu: ignore failure of qemu -M ? on older qemu (Eric Blake),<br />
      virsh: avoid mingw compiler warnings (Eric Blake),<br />
      build: avoid problems with autogen.sh runs from tarball (Eric Blake),<br />
      build: fix cygwin strerror_r failure (Eric Blake),<br />
      Avoid pthread_sigmask on Win32 platforms (Daniel P. Berrange),<br />
      Fix compilation when building without sasl (Daniel Veillard),<br />
      build: fix parted detection at configure time (Eric Blake),<br />
      Fix setup of lib directory with autogen.sh --system (Daniel P. Berrange),<br />
      build: fix 'make check' with older git (Eric Blake),<br />
      maint: support --no-git option during autogen.sh (Eric Blake),<br />
      libvirt-guests: remove bashisms (Laurent Léonard),<br />
      build: restore mingw build (Eric Blake),<br />
      commandtest: avoid printing loader-control variables from commandhelper (Diego Elio Pettenò)<br />
      </li><li>Bug fixes:<br />
      qemu: Error prompt when saving a shutoff domain (Osier Yang),<br />
      cgroup: preserve correct errno on failure (Eric Blake),<br />
      qemu: Fix command line generation with faked host CPU (Jiri Denemark),<br />
      tests: Fake host capabilities properly (Jiri Denemark),<br />
      build: address clang reports about virCommand (Eric Blake),<br />
      qemu: don't mask real error with oom report (Eric Blake),<br />
      qemu: avoid NULL derefs (Eric Blake),<br />
      virDomainMemoryStats: avoid null dereference (Eric Blake),<br />
      Fix leak of mutex attributes in POSIX threads impl (Daniel P. Berrange),<br />
      Fix leak in SCSI storage backend (Daniel P. Berrange),<br />
      storage: Create enough volumes for mpath pool (Osier Yang),<br />
      qemu: avoid NULL deref on error (Eric Blake),<br />
      conf: Fix XML generation for smartcards (Jiri Denemark),<br />
      Fix cleanup on VM state after failed QEMU startup (Daniel P. Berrange),<br />
      libvirt-qemu: Fix enum type declaration (Jiri Denemark),<br />
      xen: Prevent updating device when attaching a device (Osier Yang),<br />
      qemu: Fix escape_monitor(escape_shell(command)) (Philipp Hahn),<br />
      qemu: fix attach-interface regression (Wen Congyang),<br />
      Fix typo in parsing of spice 'auth' data (Michal Privoznik),<br />
      Reset logging filter function when forking (Daniel P. Berrange),<br />
      Block SIGPIPE around virExec hook functions (Daniel P. Berrange),<br />
      Only initialize/cleanup libpciaccess once (Daniel P. Berrange),<br />
      macvtap: fix 2 nla_put expressions (non-serious bug) (Stefan Berger),<br />
      qemu: avoid double shutdown (Eric Blake),<br />
      Fix conflicts with glibc globals (Davidlohr Bueso),<br />
      qemuBuildDeviceAddressStr() checks for QEMUD_CMD_FLAG_PCI_MULTIBUS (Niels de Vos),<br />
      Don't sleep in poll() if there is existing SASL decoded data (Daniel P. Berrange),<br />
      Initialization error of controller in QEmu SCSI hotplug (Wen Congyang),<br />
      esx: Ensure max-memory has 4 megabyte granularity (Matthias Bolte),<br />
      Remove double close of qemu monitor (Daniel P. Berrange),<br />
      Prevent overfilling of self-pipe in python event loop (Daniel P. Berrange),<br />
      avoid vm to be deleted if qemuConnectMonitor failed (Wen Congyang),<br />
      tests: Fix virtio channel tests (Jiri Denemark),<br />
      event: fix event-handling allocation crash (Eric Blake),<br />
      storage: Round up capacity for LVM volume creation (Osier Yang),<br />
      Do not use virtio-serial port 0 for generic ports (David Allan),<br />
      Manually kill gzip if restore fails before starting qemu (Laine Stump),<br />
      Set SELinux context label of pipes used for qemu migration (Laine Stump),<br />
      virsh: require --mac to avoid detach-interface ambiguity (Michal Privoznik),<br />
      dispatch error before return (Wen Congyang),<br />
      event: fix event-handling data race (Eric Blake),<br />
      qemu: Retry JSON monitor cont cmd on MigrationExpected error (Jim Fehlig),<br />
      Fix startup with VNC password expiry on old QEMU (Daniel P. Berrange),<br />
      Fix error reporting when machine type probe fails (Daniel P. Berrange),<br />
      Avoid crash in security driver if model is NULL (Daniel P. Berrange),<br />
      qemu: Fix a possible deadlock in p2p migration (Wen Congyang),<br />
      qemu: Avoid sending STOPPED event twice (Jiri Denemark),<br />
      spec: Start libvirt-guests only if it's on in current runlevel (Jiri Denemark),<br />
      Increase size of driver table to make UML work again (Daniel P. Berrange),<br />
      qemu: don't fail capabilities check on 0.12.x (Eric Blake),<br />
      Fix 'make check' after commit 04197350 (Jim Fehlig),<br />
      esx: Fix memory leak in HostSystem managed object free function (Matthias Bolte),<br />
      qemu: Watchdog IB700 is not a PCI device (RHBZ#667091). (Richard W.M. Jones),<br />
      cpu: plug memory leak (Eric Blake),<br />
      network: plug memory leak (Eric Blake),<br />
      network: plug unininitialized read found by valgrind (Eric Blake),<br />
      remote: Don't lose track of events when callbacks are slow (Cole Robinson),<br />
      conf: Report error if invalid type specified for character device (Osier Yang),<br />
      daemon: Fix core dumps if unix_sock_group is set (Jiri Denemark),<br />
      vbox: Use correct VRAM size unit (Matthias Bolte),<br />
      bridge: Fix generation of dnsmasq's --dhcp-hostsfile option (Kay Schubert),<br />
      qemu: Fix bogus warning about uninitialized saveptr (Jiri Denemark),<br />
      Don't chown qemu saved image back to root after save if dynamic_ownership=0 (Laine Stump)<br />
      </li><li>Improvements:<br />
      maint: delete unused 'make install' step (Eric Blake),<br />
      Update czech localization (Zdenek Styblik),<br />
      Avoid empty strings when --with-packager(-version) is not specified (Matthias Bolte),<br />
      Output commandline on status != 0 in virCommandWait (Matthias Bolte),<br />
      add missing error handling to virGetDomain (Christophe Fergeau),<br />
      call virReportOOMError when appropriate in hash.c (Christophe Fergeau),<br />
      xml: avoid compiler warning (Eric Blake),<br />
      nwfilter: reorder match extensions relative to state match (Stefan Berger),<br />
      fix OOM handling in hash routines (Christophe Fergeau),<br />
      docs: Distribute XSLT files to generate HACKING (Matthias Bolte),<br />
      qemu: Report a more informative error for missing cgroup controllers (Matthias Bolte),<br />
      Imprint all logs with version + package build information (Daniel P. Berrange),<br />
      Reduce log level when cgroups aren't mounted (Daniel P. Berrange),<br />
      Avoid warnings from nwfilter driver when run non-root (Daniel P. Berrange),<br />
      build: distribute 'make syntax-check' tweaks (Eric Blake),<br />
      Adjust some log levels in udev driver (Daniel P. Berrange),<br />
      Add check for binary existing in machine type probe (Daniel P. Berrange),<br />
      Add a little more debugging for async events (Daniel P. Berrange),<br />
      Move connection driver modules directory (Daniel P. Berrange),<br />
      Support SCSI RAID type &amp; lower log level for unknown types (Daniel P. Berrange),<br />
      Don't use CLONE_NEWUSER for now (Serge E. Hallyn),<br />
      sysinfo: implement qemu support (Eric Blake),<br />
      sysinfo: refactor xml formatting (Eric Blake),<br />
      sysinfo: implement virsh support (Eric Blake),<br />
      sysinfo: implement the remote protocol (Eric Blake),<br />
      sysinfo: implement the public API (Eric Blake),<br />
      sysinfo: define internal driver API (Eric Blake),<br />
      LXC: LXC Blkio weight configuration support. (Gui Jianfeng),<br />
      qemu: Implement blkio tunable XML configuration and parsing. (Gui Jianfeng),<br />
      cgroup: Update XML Schema for new entries. (Gui Jianfeng),<br />
      cgroup: Implement blkio.weight tuning API. (Gui Jianfeng),<br />
      cgroup: Enable cgroup hierarchy for blkio cgroup (Gui Jianfeng),<br />
      Update Dutch and Polish localizations (Daniel Veillard),<br />
      Vietnamese translations for libvirt (Hero Phương),<br />
      spicevmc: support older -device spicevmc of qemu 0.13.0 (Eric Blake),<br />
      smartcard: add spicevmc support (Eric Blake),<br />
      spicevmc: support new qemu chardev (Daniel P. Berrange),<br />
      smartcard: turn on qemu support (Eric Blake),<br />
      smartcard: enable SELinux support (Eric Blake),<br />
      smartcard: check for qemu capability (Eric Blake),<br />
      smartcard: add domain conf support (Eric Blake),<br />
      smartcard: add XML support for &lt;smartcard&gt; device (Eric Blake),<br />
      qemu: Support booting from hostdev PCI devices (Jiri Denemark),<br />
      Support booting from hostdev devices (Jiri Denemark),<br />
      qemu: Add shortcut for HMP pass through (Jiri Denemark),<br />
      macvtap: fix variable in debugging output (Stefan Berger),<br />
      qemu: Build command line for incoming tunneled	migration (Osier Yang),<br />
      bridge_driver: handle DNS over IPv6 (Paweł Krześniak),<br />
      tests: handle backspace-newline pairs in test input files (Juerg Haefliger),<br />
      qemu: More clear error parsing domain def failure of tunneled migration (Osier Yang),<br />
      maint: reject raw close, popen in 'make syntax-check' (Eric Blake),<br />
      build: avoid close, system (Eric Blake),<br />
      Add VIR_DIV_UP to divide memory or storage request sizes with round up (Matthias Bolte),<br />
      qemu: fix augeas support for vnc_auto_unix_socket (Eric Blake),<br />
      virsh: added --all flag to freecell command (Michal Privoznik),<br />
      esx: Don't try to change max-memory of an active domain (Matthias Bolte),<br />
      qemu aio: enable support (Eric Blake),<br />
      qemu aio: parse aio support from qemu -help (Matthias Dahl),<br />
      qemu aio: add XML parsing (Matthias Dahl),<br />
      Remove bogus log warning lines when launching QEMU (Daniel P. Berrange),<br />
      qemu: fix error messages (Eric Blake),<br />
      qemu: Report more accurate error on failure to attach device. (Hu Tao),<br />
      Force guest suspend at timeout (Wen Congyang),<br />
      Show migration progress. (Wen Congyang),<br />
      Cancel migration if user presses Ctrl-C when migration is in progress (Hu Tao),<br />
      qemu: use separate alias for chardev and associated device (Eric Blake),<br />
      remote: Add extra parameter pkipath for URI (Osier Yang),<br />
      Update localization files from Fedora i10n (Daniel Veillard),<br />
      Add check for poll error events in monitor (Daniel P. Berrange),<br />
      Filter out certain expected error messages from libvirtd (Daniel P. Berrange),<br />
      Add a function to the security driver API that sets the label of an open fd. (Laine Stump),<br />
      qemu: Error prompt when managed save a shutoff domain (Osier Yang),<br />
      build: avoid corrupted gnulib/tests/Makefile (Eric Blake),<br />
      qemu: sound: Support intel 'ich6' model (Cole Robinson),<br />
      vmx: Use VIR_ERR_CONFIG_UNSUPPORTED when appropriated (Matthias Bolte),<br />
      Push unapplied fixups for previous patch (Cole Robinson),<br />
      qemu: Add conf option to auto setup VNC unix sockets (Cole Robinson),<br />
      qemu: Allow serving VNC over a unix domain socket (Cole Robinson),<br />
      qemu: Set domain def transient at beginning of startup process (Cole Robinson),<br />
      qemu: report more proper error for unsupported graphics (Osier Yang),<br />
      qemu: Fail if per-device boot is used but deviceboot is not supported (Jiri Denemark),<br />
      Turn libvirt.c error reporting functions into macros (Daniel P. Berrange),<br />
      build: use more gnulib modules for simpler code (Eric Blake),<br />
      Remove two unused PATH_MAX-sized char arrays from the stack (Matthias Bolte),<br />
      Use VIR_ERR_OPERATION_INVALID when appropriated (Matthias Bolte),<br />
      Fix misuse of VIR_ERR_INVALID_* error code (Matthias Bolte),<br />
      Simplify "NWFilterPool" to "NWFilter" (Matthias Bolte),<br />
      datatypes: Get virSecretFreeName in sync with the other free functions (Matthias Bolte),<br />
      qemu: use -incoming fd:n to avoid qemu holding fd indefinitely (Eric Blake),<br />
      tests: Add tests for per-device boot elements (Jiri Denemark),<br />
      Introduce per-device boot element (Jiri Denemark),<br />
      conf: Move boot parsing into a separate function (Jiri Denemark),<br />
      build: let xgettext see strings in libvirt-guests (Eric Blake),<br />
      A couple of fixes for the search PHP code (Daniel Veillard),<br />
      virsh: Use WITH_SECDRIVER_APPARMOR to detect AppArmor support (Matthias Bolte),<br />
      memtune: Let virsh know the unlimited value for memory tunables (Nikunj A. Dadhania),<br />
      maint: improve sc_prohibit_strncmp syntax check (Eric Blake),<br />
      Enable tuning of qemu network tap device "sndbuf" size (Laine Stump),<br />
      Add XML config switch to enable/disable vhost-net support (Laine Stump),<br />
      Use the new set_password monitor command to set password. (Marc-André Lureau),<br />
      qemu: add set_password and expire_password monitor commands (Marc-André Lureau),<br />
      qemu: move monitor device out of domain_conf common code (Eric Blake),<br />
      domain_conf: split source data out from ChrDef (Eric Blake),<br />
      cpu: Add support for Westmere CPU model (Jiri Denemark),<br />
      qemu: improve device flag parsing (Eric Blake),<br />
      util: add missing string-&gt;integer conversion functions (Eric Blake),<br />
      qemu: convert capabilities to use virCommand (Eric Blake),<br />
      virsh: ensure --maximum flag used only with --config for setvcpus (Justin Clift),<br />
      Add HAP to xen hypervisor capabilities (Jim Fehlig),<br />
      Add support for HAP feature to xen drivers (Jim Fehlig),<br />
      Add HAP to virDomainFeature enum (Jim Fehlig),<br />
      tests: virsh is no longer in builddir/src (Eric Blake),<br />
      virFindFileInPath: only find executable non-directory (Eric Blake),<br />
      Fix old PHP syntax in the search online form (Daniel Veillard),<br />
      report error when specifying wrong desturi (Wen Congyang),<br />
      qemu: Reject SDL graphic if it's not supported by qemu (Osier Yang),<br />
      vbox: Silently ignore missing registry key on Windows (Matthias Bolte),<br />
      python: Use PyCapsule API if available (Cole Robinson),<br />
      event-test: Simplify debug on/off (Cole Robinson),<br />
      Refactor the security drivers to simplify usage (Daniel P. Berrange),<br />
      Add AM_MAINTAINER_MODE (Guido Günther),<br />
      esx: Move occurrence check into esxVI_LookupObjectContentByType (Matthias Bolte),<br />
      esx: Add domain autostart support (Matthias Bolte),<br />
      vmx: Add support for video device VRAM size (Matthias Bolte),<br />
      API: Improve log for domain related APIs (Osier Yang),<br />
      schema: tighten &lt;serial&gt;&lt;protocol type=...&gt; relaxNG (Eric Blake),<br />
      Log an error on attempts to add a NAT rule for non-IPv4 addresses (Laine Stump),<br />
      Improve error reporting when parsing dhcp info for virtual networks (Laine Stump),<br />
      qemu driver: fix positioning to end of log file (Stefan Berger),<br />
      build: satisfy 'make syntax-check' regarding year change (Eric Blake)<br />
      </li><li>Cleanups:<br />
      build: silence some clang warnings (Eric Blake),<br />
      maint: kill dead assignments (Eric Blake),<br />
      build: silence false positive clang report (Eric Blake),<br />
      maint: whitespace cleanup (Eric Blake),<br />
      maint: update AUTHORS (Eric Blake),<br />
      Prefer C style comments over C++ ones (Matthias Bolte),<br />
      Revert all previous error log priority hacks (Daniel P. Berrange),<br />
      Cleanup code style in logging APIs (Daniel P. Berrange),<br />
      Remove redundant brackets around return values (Daniel P. Berrange),<br />
      tests: Remove obsolete secaatest (Matthias Bolte),<br />
      datatypes: avoid redundant __FUNCTION__ (Eric Blake)<br />
      </li></ul>
        <h3>0.8.7: Jan 4 2011</h3>
        <ul><li>Features:<br />
      Preliminary support for VirtualBox 4.0 (Matthias Bolte),<br />
      IPv6 support (Laine Stump),<br />
      Add VMware Workstation and Player driver (Jean-Baptiste Rouault),<br />
      Add network disk support (MORITA Kazutaka and Josh Durgin)<br />
      </li><li>Documentation:<br />
      esx: Fix "occurence" typo (again) (Matthias Bolte),<br />
      update docs for network disks (MORITA Kazutaka),<br />
      docs: Make VMware Workstation / Player page appear in the menu (Matthias Bolte),<br />
      Add info about VMware driver to the libvirt website (Jean-Baptiste Rouault),<br />
      docs: fixed typo, added table of contents (Justin Clift),<br />
      docs: added compiling page and significantly expanded windows page (Justin Clift),<br />
      docs: Add additional indentation to level 3 menu items (Matthias Bolte),<br />
      maint: doc fix (Eric Blake),<br />
      Update documentation of watchdog dump option and add test data for it (Hu Tao),<br />
      virsh: fix a typo in the memtune help description (Justin Clift),<br />
      docs: updated virsh command reference download links to new version (Justin Clift),<br />
      Moved the nodeinfo command to the 'host' help keyword group (Justin Clift),<br />
      man pages: update the description for the virsh help command (Justin Clift),<br />
      virsh: move two commands from domain group to storage pool group (Osier Yang),<br />
      virCommand: docs for usage of new command APIs (Daniel P. Berrange),<br />
      virsh: update help for "virsh help help" (Osier Yang),<br />
      virsh: remove a badly placed line break in virsh -h output (Justin Clift),<br />
      virsh: Categorize commands into groups for virsh help (Osier Yang)<br />
      </li><li>Portability:<br />
      vbox: Handle different IID representation in Version 2.2 on Windows (Matthias Bolte),<br />
      build: make building on cygwin easier (Eric Blake),<br />
      build: improve testsuite results with older automake (Eric Blake),<br />
      build: allow older libselinux again (Eric Blake),<br />
      build: allow autoconf 2.59 again (Eric Blake),<br />
      build: allow mingw compilation with virCommand (Eric Blake),<br />
      build: quote AC_LANG_PROGRAM to avoid warnings with autoconf 2.68 (Diego Elio Pettenò),<br />
      build: properly handle ./configure --with-libpcap (Diego Elio Pettenò),<br />
      build: avoid shadowing devname(),<br /> on BSD systems (Eric Blake)
      Fix undefined symbol errors when macvtap support is disabled (Matthias Bolte),<br />
      Fix warning when macvtap support is disabled (Jean-Baptiste Rouault)<br />
      </li><li>Bug fixes:<br />
      virExec: fix logic bug (Eric Blake),<br />
      Set broadcast address for IPv4 addresses on virtual network bridges (Laine Stump),<br />
      Fix misuse of VIR_ERR_INVALID_DOMAIN (Matthias Bolte),<br />
      build: fix building error when building without libvirtd (Wen Congyang),<br />
      spec: Enable ESX driver on RHEL (Jiri Denemark),<br />
      bridge: Fix uninitialized variable (Jiri Denemark),<br />
      make the dhcp element optional in network.rng (Laine Stump),<br />
      fix syntax error in configure.ac (Wen Congyang),<br />
      qemu: Reparent children when deleting a snapshot (Matthias Bolte),<br />
      Set bitmap size when allocating a bitmap (Jim Fehlig),<br />
      qemu: Return SPICE ports on domain shutdown (Jiri Denemark),<br />
      virterror: avoid API breakage with vmware (Eric Blake),<br />
      Fix memory leak in virsh (Hu Tao),<br />
      Distribute libvirt_vmx.syms (Matthias Bolte),<br />
      vmware: Fix undefine symbol with loadable drivers enabled (Matthias Bolte),<br />
      esx: Fix cluster resource lookup when connecting to a vCenter (Matthias Bolte),<br />
      command: avoid hanging on daemon processes (Eric Blake),<br />
      storage: Ignore dangling symbolic link for filesystem pool (Osier Yang),<br />
      Skip file-based security checks for network disks (Josh Durgin),<br />
      tests: avoid data race (Eric Blake),<br />
      bridge_driver: avoid double call to VIR_FREE (Paweł Krześniak),<br />
      vbox: Don't leak domain names in vboxListDefinedDomains (Matthias Bolte),<br />
      vbox: Don't leak arrays from XPCOM (Matthias Bolte),<br />
      build: fix typo that broke 'make dist' (Eric Blake),<br />
      util: Fix logical error in virReportSystemErrorFull (Jiri Denemark),<br />
      util: Fix error message in __virExec (Jiri Denemark),<br />
      daemon: Change CWD to / before daemonizing (Jiri Denemark),<br />
      daemon, threads: plug a memory leak (Eric Blake),<br />
      daemon: plug a memory leak (Eric Blake),<br />
      conf: plug memory leaks (Eric Blake),<br />
      tests: plug memory leaks (Eric Blake),<br />
      virExec: avoid undefined behavior (Eric Blake),<br />
      command: plug memory leak (Eric Blake),<br />
      build: distribute commandtest files (Eric Blake),<br />
      spec: do not start libvirt-guests if that service is off (Dan Kenigsberg),<br />
      correct the signal's name (Wen Congyang),<br />
      command: avoid memory leak (Eric Blake),<br />
      qemu: call drive_del in DetachPciDiskDevice (Ryan Harper),<br />
      qemu: call drive_unplug in DetachPciDiskDevice (Ryan Harper),<br />
      qemud: fix memory leak in io error events (Anthony Liguori),<br />
      qemu: Enable disabled debug messages (Jiri Denemark),<br />
      qemu: Use -vga none only if it is supported (Jiri Denemark),<br />
      openvz: avoid potential buffer overflow (Eric Blake),<br />
      tests: fix leaks in commandtest (Eric Blake),<br />
      uuid: require smbios uuid and domain uuid to match (Eric Blake),<br />
      qemu: avoid adding "" in smbios arguments (Eric Blake),<br />
      Fix funny off-by-one error in clock-variable (Dan Kenigsberg),<br />
      syntax error "Bad fd number" when stopping libvirt-guests (Laurent Léonard),<br />
      util: Fix bug which will cause libvirtd crash (Osier Yang),<br />
      qemu: Fix a possible deadlock in p2p migration (Jiri Denemark),<br />
      qemu: Don't try to set input FD to -1 (Matthias Bolte),<br />
      Fix memory leak in logging setup (Daniel P. Berrange),<br />
      schemas: Fix cpu element schema (Jiri Denemark),<br />
      virsh: Remove using phy as default disk driver in cmdAttachDisk (Osier Yang),<br />
      OpenVZ: drop fd leackage (Guido Günther),<br />
      qemu: plug memory leak (Eric Blake),<br />
      libvirtd: avoid memory leak on shutdown (Eric Blake),<br />
      Fix flaw in thread creation APIs (Daniel P. Berrange)<br />
      </li><li>Improvements:<br />
      build: avoid compilation warnings (Eric Blake),<br />
      Improve virSocketAddrMask[ByPrefix] API (Laine Stump),<br />
      Utility functions to produce an IPv4 broadcast address (Laine Stump),<br />
      qemu: add -incoming fd:n capability checking (Eric Blake),<br />
      spec: Automatically turn on cgconfig service (Daniel P. Berrange),<br />
      Replace setuid/setgid/initgroups with virSetUIDGID(),<br /> (Laine Stump)
      new virSetUIDGID(),<br /> utility function (Laine Stump)
      Preserve errno across calls to error reporting functions &amp; VIR_FREE (Laine Stump),<br />
      Run radvd for virtual networks with IPv6 addresses (Laine Stump),<br />
      Turn on IPv6 support in the bridge_driver.c virtual network driver (Laine Stump),<br />
      Update iptables.c to also support ip6tables. (Laine Stump),<br />
      Support multiple IP addresses on one network in bridge_driver.c (Laine Stump),<br />
      Change virtual network XML parsing/formatting to support IPv6 (Laine Stump),<br />
      Replace brSetInetAddress/brSetInetNetmask with brAddInetAddress (Laine Stump),<br />
      Make virtual network netmasks optional (Laine Stump),<br />
      Pass prefix rather than netmask into iptables functions (Laine Stump),<br />
      Consistently return 0 on success, -1 on failure in bridge_driver.c (Laine Stump),<br />
      Fix logging of failed iptables commands (Laine Stump),<br />
      New virNetworkDef utility functions (Laine Stump),<br />
      New virSocketAddr utility functions (Laine Stump),<br />
      virsh: Add --force option to update-device (Jiri Denemark),<br />
      esx: Add support for storage volume wiping (Matthias Bolte),<br />
      esx: Add support for storage volume deletion (Matthias Bolte),<br />
      maint: avoid space-tab (Eric Blake),<br />
      build: skip vmware driver when building for RHEL (Eric Blake),<br />
      tests: avoid spurious failure of nodeinfotest (Eric Blake),<br />
      libvirt-guests: avoid sourcing failure (Eric Blake),<br />
      vbox: Handle different array representations of XPCOM and MSCOM (Matthias Bolte),<br />
      vbox: Add glue layer for MSCOM on Windows (Matthias Bolte),<br />
      vbox: Match struct layout of the MSCOM implementation on Windows (Matthias Bolte),<br />
      vbox: Use stdcall convention for all COM methods on Windows (Matthias Bolte),<br />
      maint: improve tests distribution (Eric Blake),<br />
      Update QEMU test cases for new file locations &amp; API renames (Daniel P. Berrange),<br />
      Move QEMU hotplug helper code out of the QEMU driver (Daniel P. Berrange),<br />
      Move QEMU domain lock / job helper code to separate file (Daniel P. Berrange),<br />
      Move QEMU driver lock helpers to a separate file (Daniel P. Berrange),<br />
      Move QEMU hostdev helper code out of the QEMU driver (Daniel P. Berrange),<br />
      Move QEMU cgroup helper code out of the QEMU driver (Daniel P. Berrange),<br />
      Move QEMU audit helper code out of the QEMU driver (Daniel P. Berrange),<br />
      Move QEMU private data &amp; namespace code into separate file (Daniel P. Berrange),<br />
      Move QEMU command line management into a separate file (Daniel P. Berrange),<br />
      Move QEMU capabilities management into a separate file (Daniel P. Berrange),<br />
      Add a new function doStartCPUs (Hu Tao),<br />
      Add a new function doStopCPUs (Hu Tao),<br />
      Add a macro timeval_to_ms to compute micro seconds from timeval (Hu Tao),<br />
      cpu: Unify CPUID data structures (Jiri Denemark),<br />
      esx: Add support for storage volume cloning (Matthias Bolte),<br />
      selinux: avoid memory overhead of matchpathcon (Eric Blake),<br />
      tests: test Fedora 14 qemu-kvm -help parsing (Eric Blake),<br />
      tests: test RHEL 6.0 qemu-kvm -help parsing (Eric Blake),<br />
      sysinfo: convert to virCommand (Eric Blake),<br />
      build: update gnulib for pipe on mingw (Eric Blake),<br />
      test: fix commandtest under autobuild.sh (Eric Blake),<br />
      qemu: Introduce two new job types (Osier Yang),<br />
      qemu: Add RBD support and some network disk fixes (Josh Durgin),<br />
      Missing "Default-Stop" field in LSB comment in libvirt-guests (Laurent Léonard),<br />
      802.1Qbh: Add support for IFLA_VF_MAC (Roopa Prabhu),<br />
      command: ease use with virBuffer, and fix qemu leak (Eric Blake),<br />
      Convert dhcpStartDhcpDaemon from virRun to virCommand (Laine Stump),<br />
      esx: Refactor storage pool type lookup into a function (Matthias Bolte),<br />
      esx: Improve error reporting for failed tasks (Matthias Bolte),<br />
      tests: Add tests for network disks (Josh Durgin),<br />
      Add a watchdog action `dump' (Hu Tao),<br />
      Add a new function doCoreDump (Hu Tao),<br />
      threadpool impl (Hu Tao),<br />
      qemu: Distinguish between domain shutdown and crash (Jiri Denemark),<br />
      qemu: Only build devstr when needs (attach PCI controller),<br /> (Osier Yang)
      configure: improve misleading libnl missing error message (Justin Clift),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      openvz: convert popen to virCommand (Eric Blake),<br />
      command: improve behavior on no output (Eric Blake),<br />
      command: enforce fd vs. buffer considerations (Eric Blake),<br />
      tests: Fix commandtest in VPATH build (Jiri Denemark),<br />
      command: improve allocation failure reporting (Eric Blake),<br />
      tests: Fix detection of expected error (Jiri Denemark),<br />
      tests: Fix code formating in commandtest (Jiri Denemark),<br />
      smbios: allow (),<br /> in smbios strings (Eric Blake)
      smbios: support system family (Eric Blake),<br />
      threads: add virThreadID for debugging use (Eric Blake),<br />
      tests: Don't ignore return value of getcwd(),<br /> (Jiri Denemark)
      build: Fix internal docs generation in VPATH builds (Jiri Denemark),<br />
      Change return value of VIR_DRV_SUPPORTS_FEATURE to bool (Jiri Denemark),<br />
      Implement virVMOperationType{To|From}String independent from WITH_MACVTAP (Matthias Bolte),<br />
      Create file in virFileWriteStr(),<br /> if it doesn't exist (Jean-Baptiste Rouault)
      Remove bogus includes (Daniel P. Berrange),<br />
      uml: convert to virCommand (Daniel P. Berrange),<br />
      qemu: convert to virCommand (Eric Blake),<br />
      Port hooks and iptables code to new command execution APIs (Daniel P. Berrange),<br />
      Introduce new APIs for spawning processes (Daniel P. Berrange),<br />
      util: add virVasprintf (Eric Blake),<br />
      util: fix saferead type (Eric Blake),<br />
      Tweak daemon event debug to include errno (Daniel P. Berrange),<br />
      tests: Add tests for CPU selection in qemu driver (Jiri Denemark),<br />
      tests: Support for faking emulator in qemuxml2argv (Jiri Denemark),<br />
      maint: update .gitignore (Eric Blake),<br />
      qemu: Use macro for max and min vnc port instead of number (Osier Yang),<br />
      tests: Add unit tests for internal CPU APIs (Jiri Denemark),<br />
      cpu: Add support for overriding path to CPU map XML file (Jiri Denemark),<br />
      Fall back to QEMUD_SAVE_FORMAT_RAW if compression method fails. (Hu Tao)<br />
      </li><li>Cleanups:<br />
      esx: Move VMX handling code out of the driver directory (Matthias Bolte),<br />
      qemu: use virAsprintf instead of PATH_MAX (Eric Blake),<br />
      build: fix typo that broke 'make dist' (Wen Congyang),<br />
      sysinfo: formatting cleanups (Eric Blake),<br />
      virsh: Remove redundant commands in group domain (Osier Yang),<br />
      virsh: Remove redundant optional option for cmdHelp (Osier Yang),<br />
      qemu: Fix typo in qemuTeardownDiskPathDeny (Osier Yang),<br />
      maint: allow 'make syntax-check' to run again (Eric Blake)<br />
      </li></ul>
        <h3>0.8.6: Nov 30 2010</h3>
        <ul><li> Features:<br />
      new API virDomainIsUpdated (Osier Yang),<br />
      Add support for iSCSI target auto-discovery (Daniel P. Berrange),<br />
      QED: Basic support for QED images (Adam Litke),<br />
      Introduce a virDomainOpenConsole API (Daniel P. Berrange),<br />
      Support for SPICE graphics (Daniel P. Berrange),<br />
      Add a sysinfo and SMBIOS support (Daniel Veillard),<br />
      Implement virsh qemu-monitor-command. (Chris Lalancette)<br />
      </li><li> Documentation:<br />
      updated c# bindings with arnauds latest changes (Justin Clift),<br />
      Fix spelling of virBufferAsprintf (Jiri Denemark),<br />
      Fix broken XML entity for '&gt;' (Philipp Hahn),<br />
      removed outdated reference to virt-mem (Justin Clift),<br />
      Add doc for missed options of migrate (Osier Yang),<br />
      add doc for missed parameters of attach-disk (Osier Yang),<br />
      update virsh manual (Osier Yang),<br />
      updated virsh command reference with libvirt.org links (Justin Clift),<br />
      Generate HACKING from docs/hacking.html.in (Matthias Bolte),<br />
      Prepare hacking.html.in to generate HACKING from it (Matthias Bolte),<br />
      updated csharp pages with latest info (Justin Clift),<br />
      trivial typo fix (Justin Clift),<br />
      added virsh command reference page. (Justin Clift),<br />
      rpm: Fix summary wording (Cole Robinson),<br />
      Augment bug reporting documentation (Daniel Veillard),<br />
      virsh: fix incorrect help text mentioning non-existent network 'id' (Justin Clift),<br />
      Fix off-by-1 in todo page generator (Daniel P. Berrange),<br />
      Fix comment for video tag in domain RNG schema (Daniel P. Berrange),<br />
      fix typo (Eric Blake)<br />
      </li><li> Portability:<br />
      remote: Fix TLS transport on Windows (Matthias Bolte),<br />
      Rename 'remove' param to 'toremove' to avoid clash with stdio.h (Daniel P. Berrange),<br />
      virt-aa-helper: Fix several compile errors (Matthias Bolte),<br />
      maint: improve i18n on non-Linux (Eric Blake),<br />
      nwfilter: use /bin/sh rather than requiring bash (Eric Blake),<br />
      Use python discovered through env instead of hardcoding a path (Matthias Bolte),<br />
      esx: Avoid warnings about breaking strict-aliasing rules on FreeBSD (Matthias Bolte),<br />
      Make sure struct sockaddr_in is defined on FreeBSD (Matthias Bolte),<br />
      configure: Disable FS storage driver if mntent.h is not available (Matthias Bolte),<br />
      daemon: Include stdlib.h in dispatch.c (Matthias Bolte),<br />
      xen: work with xen 4.0.1 headers (Eric Blake),<br />
      Fix build with polkit 0 (Jim Fehlig),<br />
      xen: work with ia64 MAX_VIRT_CPUS of 64 (Eric Blake),<br />
      build: cleanup declaration of xen tests. (Diego Elio Pettenò),<br />
      qemu: check compression program availability of virsh save and dump (KAMEZAWA Hiroyuki)<br />
      </li><li> Bug Fixes:<br />
      correct the arguments of migrate_speed (Wen Congyang),<br />
      Fix memory leaks in audit &amp; VirtualBox code (Daniel P. Berrange),<br />
      Fix host CPU counting on unusual NUMA topologies (Jiri Denemark),<br />
      security, storage: plug memory leaks for security_context_t (Eric Blake),<br />
      network: plug memory leak (Eric Blake),<br />
      qemu: plug memory leak (Eric Blake),<br />
      Always close drivers when a virConnectPtr is released (Matthias Bolte),<br />
      libvirtd: fix bug when shrinking number of clients (Eric Blake),<br />
      Fix 32-bit int truncation in QED header check (Daniel P. Berrange),<br />
      Fix error handling in virsh when listing storage volumes (Daniel P. Berrange),<br />
      Fix parsing of port attribute in storage XML configuration (Daniel P. Berrange),<br />
      Don't catch SIGCHLD in libvirtd (Daniel P. Berrange),<br />
      Ensure logfile isn't truncated by shutdown message. (Daniel P. Berrange),<br />
      xend: Escape reserved sexpr characters (Cole Robinson),<br />
      xend: urlencode: Properly escape '&amp;' (Cole Robinson),<br />
      conf: Fix parsing python style triple quotes (Cole Robinson),<br />
      nwfilter: re-order lock grabbed by IP addr. learn thread (Stefan Berger),<br />
      virExec: fix bug in setting up child stderr/out with /dev/null (Daniel P. Berrange),<br />
      Fix a failure to restore SELinux label for character devices (Daniel Veillard),<br />
      nwfilter: also purge ip(6)tables rules before detecting IP address (Stefan Berger),<br />
      Fix ipv4-addr definition in interface.rng (Laine Stump),<br />
      remote_driver.c: fix non-literal format strings w/o args (Laine Stump),<br />
      ignore SELinuxSetFilecon error in SELinuxSetSecurityFileLabel if on nfs (Laine Stump),<br />
      Fix reference counting bug in virsh console (Daniel P. Berrange),<br />
      Fix busy-wait loop on closed file descriptor (Daniel P. Berrange),<br />
      Fix LXC container console device setup (Daniel P. Berrange),<br />
      rpm: fix /var/lib/libvirt permissions (Eric Blake),<br />
      xencapstest: Don't fail when Xen is installed (Matthias Bolte),<br />
      virsh: fix non-literal string format (Laine Stump),<br />
      Fix syntax-check error in domain.rng (Matthias Bolte),<br />
      qemu: Fix non-literal format string (Jiri Denemark),<br />
      macvtap: libvirtd forgot macvtap dev name when restarted (Stefan Berger),<br />
      tests: fix daemon-conf testing failure (Osier Yang),<br />
      Fix virPipeReadUntilEOF on more than 1024 bytes of data (Daniel Veillard),<br />
      Misc error handling fixes in text mode monitor commands (Daniel P. Berrange),<br />
      Ignore open failures when relabelling disk images (Daniel P. Berrange),<br />
      Treat failure to relabel stdin_path as non-fatal on NFS (Daniel P. Berrange),<br />
      qemu: add the USB devices to the cgroup whitelist (Diego Elio Pettenò),<br />
      802.1Qbg: use pre-associate state at beginning of inc. migr (Stefan Berger)<br />
      </li><li> Improvements:<br />
      Log client errors in libvirtd at debug priority,<br />
      maint: prohibit most uses of xmlGetProp (Eric Blake),<br />
      maint: ensure syntax check exceptions are distributed (Eric Blake),<br />
      Implementations of virDomainIsUpdated for drivers except qemu (Osier Yang),<br />
      implement callback function for qemu driver (Osier Yang),<br />
      implement the remote protocol (Osier Yang),<br />
      implement public API virDomainIsUpdated (Osier Yang),<br />
      define internal driver API (Osier Yang),<br />
      tests: Fix dispatching internal error reports (Cole Robinson),<br />
      Improve SCSI volume name generation (Daniel P. Berrange),<br />
      Fix error codes returned when a storage pool is inactive (Daniel P. Berrange),<br />
      Check whether pools are already active upon libvirtd startup (Daniel P. Berrange),<br />
      Allow iSCSI IQN to be set with find-storage-pool-sources-as command (Daniel P. Berrange),<br />
      Switch the virsh XML generation to use virBuffer instead of virAsprintf (Daniel P. Berrange),<br />
      Stop iSCSI targets automatically logging back in after logout (Daniel P. Berrange),<br />
      Refactor iSCSI driver code to facilitate future changes (Daniel P. Berrange),<br />
      Ensure virExec preserves logging environment (Daniel P. Berrange),<br />
      Include a thread identifier in log messages (Daniel P. Berrange),<br />
      qemu: setvcpus: Save config changes to disk (Cole Robinson),<br />
      qemu: setvcpus: Simplify altering the persistent config (Cole Robinson),<br />
      qemu: setvcpus: Fix maxvcpus check (Cole Robinson),<br />
      conf: domain: Improve vcpus validation reporting (Cole Robinson),<br />
      Make state driver device hotplug/update actually transient (Cole Robinson),<br />
      domain_conf: Add virDomainObjSetDefTransient (Cole Robinson),<br />
      buf: Simplify virBufferEscapeString (Cole Robinson),<br />
      conf: Convert ParseString to use STRPREFIX (Cole Robinson),<br />
      schemas: domain: Add more valid file path chars (Cole Robinson),<br />
      qed: Minor updates to QED support patches (Adam Litke),<br />
      Support for probing qed image metadata (Adam Litke),<br />
      storage_file: Add a new flag to mark backing files that are safe to probe (Adam Litke),<br />
      Allow probing of image formats without version information (Adam Litke),<br />
      maint: tighten strncmp syntax check (Eric Blake),<br />
      capabilities, cpu: use new array API (Eric Blake),<br />
      memory: make it easier to avoid quadratic scaling of arrays (Eric Blake),<br />
      memory: make it safer to expand arrays (Eric Blake),<br />
      build: fix autobuild failures on gcov upgrade (Eric Blake),<br />
      virt-aa-helper: translate error messages (Eric Blake),<br />
      maint: update to latest gnulib (Eric Blake),<br />
      deprecate fclose() and introduce VIR_{FORCE_}FCLOSE() (Stefan Berger),<br />
      qemu: record timestamp in qemu domain log (Osier Yang),<br />
      virsh: add net-info command (Osier Yang),<br />
      interface.rng: Make miimon and arpmon optional for bond interfaces (Laine Stump),<br />
      macvtap: convert send / recv function to use libnl (Stefan Berger),<br />
      configure: Remove bashism and replace 'test ==' with 'test =' (Matthias Bolte),<br />
      virsh: Fix compile error in VPATH build (Matthias Bolte),<br />
      qemu: Remove unnecessary quoting from the process name argument (John Morrissey),<br />
      phyp: Don't do a flags check in the storage driver (Matthias Bolte),<br />
      qemu: Add qemu-system-s390x to the emulators list (Matthias Bolte),<br />
      macvtap: convert nl msg construction to use libnl (Stefan Berger),<br />
      Do a better job of validating IP and MAC addresses in network.rng (Laine Stump),<br />
      virt-aa-helper should require uuid in XML (Jamie Strandboge),<br />
      esx: Support SMBIOS host mode (Matthias Bolte),<br />
      Wire up virDomainOpenConsole for LXC, Xen and UML (Daniel P. Berrange),<br />
      Re-write virsh console to use streams (Daniel P. Berrange),<br />
      Convert daemon/events.c to use virMutex and virThread (Daniel P. Berrange),<br />
      Introduce portability APIs for creating threads (Daniel P. Berrange),<br />
      Support virDomainOpenConsole with QEMU (Daniel P. Berrange),<br />
      Add a generic internal API for handling any FD based stream (Daniel P. Berrange),<br />
      Lower logging level in remote driver streams (Daniel P. Berrange),<br />
      Remote driver client and server for virDomainOpenConsole (Daniel P. Berrange),<br />
      Support callbacks on virStream APIs in remote driver client (Daniel P. Berrange),<br />
      virsh: supply long option for -V (Eric Blake),<br />
      qemu: Add flag to force a CDROM eject (Cole Robinson),<br />
      Allow non-file disk backingStores (Adam Litke),<br />
      bye to close(), welcome to VIR_(FORCE_)CLOSE() (Stefan Berger),<br />
      esx: Add support for memtune/min_guarantee (Matthias Bolte),<br />
      schema: Move timer element inside clock (Jiri Denemark),<br />
      Misc test case fixes for SPICE (Daniel P. Berrange),<br />
      virsh: Add .xml suffix to tmp files used in *edit commands (Jiri Denemark),<br />
      Support SPICE channel security options (Daniel P. Berrange),<br />
      Support multiple QXL video cards (Daniel P. Berrange),<br />
      Define XML syntax for password expiry (Daniel P. Berrange),<br />
      Add SPICE support for QEMU driver configuration file (Daniel P. Berrange),<br />
      Support automatic port number allocation for SPICE (Daniel P. Berrange),<br />
      Implement QEMU/KVM QXL video card support in QEMU driver (Daniel P. Berrange),<br />
      Add a graphics type for SPICE protocol (Daniel P. Berrange),<br />
      Add a QXL graphics card type to domain XML schema (Daniel P. Berrange),<br />
      Show compiled in options in virsh -V (Daniel Veillard),<br />
      lxc: Exit on first error in lxcDomainGetMemoryParameters (Matthias Bolte),<br />
      Allow virDomainGetMemoryParameters on read-only connections (Matthias Bolte),<br />
      Add a new test for sysinfo and smbios handling (Daniel Veillard),<br />
      Add sysinfo/smbios support to the QEmu driver (Daniel Veillard),<br />
      Read the host sysinfo for the QEmu driver (Daniel Veillard),<br />
      Add smbios element to schema and configuration to HVM os (Daniel Veillard),<br />
      Sysinfo parsing and saving to/from configuration files (Daniel Veillard),<br />
      Sysinfo extension to relax-ng schemas (Daniel Veillard),<br />
      Change calling conventions in remote driver client internals (Daniel P. Berrange),<br />
      util: Add helper function to build timestamp string (Osier Yang),<br />
      misc: encode the Emacs suggstions from HACKING into a .dir-locals.el file (Diego Elio Pettenò),<br />
      add compression support for "virsh dump" (KAMEZAWA Hiroyuki),<br />
      qemu_driver: add virCgroupMounted (Lai Jiangshan),<br />
      OpenVZ: Fix some overwritten error codes (Guido Günther),<br />
      OpenVZ: take veid from vmdef-name when defining new domains (Guido Günther)<br />
      </li><li> Cleanups:<br />
      tests: Fix detection of expected errors (Jiri Denemark),<br />
      Remove bogus check for Xen in example program (Daniel P. Berrange),<br />
      build: enforce files.h usage (Eric Blake),<br />
      maint: sort exports (Eric Blake),<br />
      Remove bogus port handling code in virsh (Daniel P. Berrange),<br />
      Remove trailing ':' from timestamp (Daniel P. Berrange),<br />
      Log all errors at level INFO to stop polluting syslog (Daniel P. Berrange),<br />
      daemon: use safer memory growth macros (Eric Blake),<br />
      maint: avoid remaining sprintf uses (Eric Blake),<br />
      maint: use gnulib configmake rather than open-coding things (Eric Blake),<br />
      replace last instances of close() (Stefan Berger),<br />
      daemon: fix indention problem in daemon/libvirt.c (Osier Yang),<br />
      qemu: fix typos in qemu_monitor_text.c (Osier Yang),<br />
      re-indent network.rng following structural change (Laine Stump),<br />
      Put network.rng contents inside grammar for uniformity with other RNGs (Laine Stump),<br />
      maint: Commit .gitignore sorting done by bootstrap (Jiri Denemark),<br />
      xen-proxy: Remove it entirely and use libvirtd instead (Matthias Bolte),<br />
      qemu: Remove redundant slash in save directory path (Matthias Bolte),<br />
      virterror: supply missing spaces (Eric Blake),<br />
      Fix several warnings about a non-literal format string (Jiri Denemark),<br />
      build: avoid compiler warning in xen code (Eric Blake)<br />
      </li></ul>
        <h3>0.8.5: Oct 29 2010</h3>
        <ul><li> Features: <br />
      Enable JSON and netdev features in QEMU &gt; 0.13 (Daniel P. Berrange),<br />
      framework for auditing integration (Daniel P. Berrange),<br />
      framework for DTrace/SystemTap integration (Daniel P. Berrange),<br />
      Setting the number of vcpu at boot (Eric Blake),<br />
      Enable support for nested SVM (Daniel P. Berrange),<br />
      Virtio plan9fs filesystem QEMU (Daniel P. Berrange),<br />
      Memory parameter controls (Nikunj A. Dadhania),<br />
      portability to OS-X (Justin Clift)
      </li><li> Documentation: <br />
      virsh: improve the help description for managedsave and start (Justin Clift),<br />
      updated the C# bindings page with arnauds latest changes (Justin Clift),<br />
      update ruby bindings maintainer to chris lalancette (Justin Clift),<br />
      reworded and reordered the bindings page, plus minor tweaks (Justin Clift),<br />
      Fix xen API documentation (Philipp Hahn),<br />
      added a table of contents to the first 11 docs files (Justin Clift),<br />
      reformated the bindings page html markup to match other pages (Justin Clift),<br />
      revamp api_extension example, using vcpu patch series (Eric Blake),<br />
      install the generated html files when make install is run (Justin Clift),<br />
      Fix documentation for virEventAddTimeout() (Philipp Hahn),<br />
      esx: Add documentation about certificates and connection problems (Matthias Bolte),<br />
      added a table of contents to the new c sharp bindings page (Justin Clift),<br />
      removed old changelog file, as it is no longer relevant (Justin Clift),<br />
      Update comments for the memory tunables macros (Nikunj A. Dadhania),<br />
      added initial page for c# binding, with links to it (Justin Clift),<br />
      virsh: consolidate memtune docs (Eric Blake),<br />
      Update docs for memory parameters and memtune command (Nikunj A. Dadhania),<br />
      document how to disable memballoon (Eric Blake),<br />
      Update todo list file to point at bugzilla/website (Daniel P. Berrange),<br />
      virsh: update comment about parsing (Eric Blake),<br />
      virsh: document options in man page (Eric Blake),<br />
      Fixes for documentation extraction (Daniel Veillard),<br />
      Add automatic generation of a todo item page (Daniel P. Berrange),<br />
      nwfilter: Add 2nd example to the html docs (Stefan Berger),<br />
      nwfilter: Extend docs with info about the state attribute (Stefan Berger),<br />
      vcpu: improve cpuset attribute (Eric Blake),<br />
      nwfilter: Extend docs with information about comment attr. (Stefan Berger),<br />
      grammar cleanups on logging examples (Eric Blake),<br />
      Fix spelling of Xen in comments (Philipp Hahn),<br />
      reworked the policykit patch submitted by Patrick Dignan (Justin Clift),<br />
      fix the xml validity errors regarding name and id (Justin Clift),<br />
      improve wording for the dev guide (Justin Clift),<br />
      add the app dev guide (Justin Clift)
      </li><li>Portability: <br />
      mingw: Add body for virFork and remove double virDriverLoadModule export (Matthias Bolte),<br />
      daemon: exclude requirement for probes.h on systems without systemtap (Justin Clift),<br />
      build: skip xenapi driver when building for RHEL (Eric Blake),<br />
      build: fix mingw build (Eric Blake),<br />
      build: require pkg-config for bootstrap (Eric Blake),<br />
      configure: disable network and storage-fs drivers on mac os x (Justin Clift),<br />
      build: fix example build on MacOS X (Eric Blake),<br />
      mpath: disable devmapper-multipath checking on non-linux (Justin Clift),<br />
      mac os x: use awk selected by build system rather than first in path (Justin Clift),<br />
      virtualbox: fix a typo in the expected location on mac os x (Justin Clift),<br />
      nwfilter: Don't compile nwfilter driver on other systems than Linux (Stefan Berger),<br />
      nwfilter: add a missing define, so libvirtd builds on macos x (Justin Clift),<br />
      build: avoid non-portable IPv6 struct member, for MacOS X (Eric Blake),<br />
      virsh: change wexitstatus order to allow compilation on mac osx (Justin Clift),<br />
      build: use portable sed expressions (Eric Blake)
      </li><li> Bug Fixes: <br />
      eliminate possibility of a double-closed file descriptor (Stefan Berger),<br />
      qemu: check for vm after starting a job (Eric Blake),<br />
      Only attempt removal of the rule allowing tftp if it was added (Laine Stump),<br />
      qemu: don't use %.3d format for bus/addr of USB devices (Diego Elio Pettenò),<br />
      virsh: fix range of memtune command (Eric Blake),<br />
      qemu: work around dash 0.5.5 bug in managed save (Eric Blake),<br />
      Avoid squashing errors during network startup cleanup path (Daniel P. Berrange),<br />
      xen: Fix domain dump (Jiri Denemark),<br />
      dnsmasq: avoid potential crash (Eric Blake),<br />
      Fix netmask checks for IPv6 in virSocketCheckNetmask (Daniel P. Berrange),<br />
      Don't fail lxc domain start when memory controller support is missing (Guido Günther),<br />
      root_squash: virFileOperation may fail with EPERM too (Dan Kenigsberg),<br />
      qemu: let qemu group look below /var/lib/libvirt/qemu/ (Dan Kenigsberg),<br />
      qemu: Prohibit migration of guests with host devices (Jiri Denemark),<br />
      cpu: Use vendor in baseline CPU only if all hosts use it (Jiri Denemark),<br />
      cpu: Fix vendor for recent CPU models (Jiri Denemark),<br />
      Fix Xen SEXPR generation to properly quote strings containing () (Daniel P. Berrange),<br />
      nwfilter: resolve deadlock between VM ops and filter update (Stefan Berger),<br />
      Don't fail on missing D-Bus (Guido Günther),<br />
      cpu: Remove redundant features (Jiri Denemark),<br />
      xen: Fix virDomain{At,De}tachDevice (Jiri Denemark),<br />
      xen: xenXMDomain*DeviceFlags should obey all flags (Jiri Denemark),<br />
      nwfilter: fix memory leaks (Stefan Berger),<br />
      phyp: Checking for NULL values when building new guest (Eduardo Otubo),<br />
      libvirt-guests: start late and stop early (Jiri Denemark),<br />
      nwfilter bug appearing on big endian machines (Stefan Berger),<br />
      Rebuild network filter for UML guests on updates (Soren Hansen)
      </li><li> Improvements: <br />
      vbox: Stop hardcoding a single path for VBoxXPCOMC.so (Matthias Bolte),<br />
      Add disk/net resource auditing to QEMU driver (Daniel P. Berrange),<br />
      Add auditing of security label in QEMU driver (Daniel P. Berrange),<br />
      Add auditing of start/stop events to the QEMU driver (Daniel P. Berrange),<br />
      Add printf format attribute annotation to virAuditSend method (Daniel P. Berrange),<br />
      Add audit helper for escaping log message strings (Daniel P. Berrange),<br />
      virsh: use - not _ in memtune option names (Eric Blake),<br />
      build: fix shell detection bug (Eric Blake),<br />
      virsh: improve help text where integers are expected (Eric Blake),<br />
      docs: make the location of the xml catalog file a configure option (Justin Clift),<br />
      Fix build for SystemTap 1.0 (Matthias Bolte),<br />
      Fix formatting of network address in iptables helpers (Daniel P. Berrange),<br />
      virsh: Add option 'model' for attach-interface (Osier Yang),<br />
      qemu: Fix detection of drive readonly option (Jiri Denemark),<br />
      vbox: Fix compile errors due to the virSocketAddr series (Matthias Bolte),<br />
      Don't try to parse a NULL ip address for boot server (Daniel P. Berrange),<br />
      Convert virNetwork to use virSocketAddr everywhere (Daniel P. Berrange),<br />
      Include socket address in client probe data (Daniel P. Berrange),<br />
      Add dtrace static probes in libvirtd (Daniel P. Berrange),<br />
      Add test suite for virSocket APIs (Daniel P. Berrange),<br />
      Ban use of all inet_* functions (Daniel P. Berrange),<br />
      Fix error reporting for virSocketParse (Daniel P. Berrange),<br />
      Expand virSocketFormat to be more flexible (Daniel P. Berrange),<br />
      Fix passing of address family to virSocketParseAddr (Daniel P. Berrange),<br />
      Include length with virSocketAddr data (Daniel P. Berrange),<br />
      audit: simplify declaration (Eric Blake),<br />
      qemu: Exit on first error in qemuDomainGetMemoryParameters (Matthias Bolte),<br />
      virsh: Don't read nparams when virDomainGetMemoryParameters fails (Matthias Bolte),<br />
      Fix formatting of the memtune XML element (Matthias Bolte),<br />
      Add process= support for 'qemu-kvm -name' (John Morrissey),<br />
      nwfilter: avoid dir. enforcement for certain types of rules (Stefan Berger),<br />
      Audit SELinux label assignment. (Miloslav Trmač),<br />
      Audit VM start/stop/suspend/resume (Miloslav Trmač),<br />
      vcpu: remove dead xen code (Eric Blake),<br />
      vcpu: improve support for setting xen vcpu counts (Eric Blake),<br />
      vcpu: improve support for getting xen vcpu counts (Eric Blake),<br />
      vcpu: improve vcpu support in xen command line (Eric Blake),<br />
      vcpu: complete vcpu support in qemu driver (Eric Blake),<br />
      vcpu: improve vcpu support in qemu command line (Eric Blake),<br />
      vcpu: support all flags in test driver (Eric Blake),<br />
      vcpu: add virsh support (Eric Blake),<br />
      vcpu: support maxvcpu in domain_conf (Eric Blake),<br />
      vcpu: make old API trivially wrap to new API (Eric Blake),<br />
      vcpu: implement the remote protocol (Eric Blake),<br />
      vcpu: implement the public APIs (Eric Blake),<br />
      vcpu: define internal driver API (Eric Blake),<br />
      vcpu: add new public API (Eric Blake),<br />
      nwfilter: changes to rules in VM-&gt;host table (Stefan Berger),<br />
      esx: Handle non-UTF-8 encoded VMX files (Matthias Bolte),<br />
      Run initgroups() in qemudOpenAsUID() (Dan Kenigsberg),<br />
      memtune: Add min_guarantee to the virsh memtune command (Nikunj A. Dadhania),<br />
      esx: Fix check in esxDomainGetInfo's perf metric handling (Matthias Bolte),<br />
      virsh: add tests for recent cli improvements (Eric Blake),<br />
      virsh: new echo command (Eric Blake),<br />
      virsh: add support for accepting arbitrary argv (Eric Blake),<br />
      esx: Explicitly declare VMX file content as UTF-8 (Matthias Bolte),<br />
      esx: Handle name escaping properly (Matthias Bolte),<br />
      nwfilter: prevent filters with different name but same UUID (Stefan Berger),<br />
      new attribute accessmode to filesystem element (Harsh Prateek Bora),<br />
      nwfilter: cut off connections after changing filters (Stefan Berger),<br />
      build: provide URL in 'configure --help' (Eric Blake),<br />
      tests: Honor LIBVIRT_{DEBUG,LOG_*} variables (Jiri Denemark),<br />
      tests: Do not override LIBVIRT_DEBUG variable (Jiri Denemark),<br />
      Improve error reporting in test suites (Daniel P. Berrange),<br />
      virsh: move code into topological order (Eric Blake),<br />
      virsh: simplify top-level option parsing (Eric Blake),<br />
      virsh: add -- support (Lai Jiangshan),<br />
      virsh: support single quote (Lai Jiangshan),<br />
      virsh: add escaper \ for command string parsing (Lai Jiangshan),<br />
      virsh: rework command parsing (Lai Jiangshan),<br />
      virsh: add vshCommandParser abstraction (Lai Jiangshan),<br />
      virsh: better handling the boolean option (Lai Jiangshan),<br />
      virsh: allow zero length arguments (Lai Jiangshan),<br />
      virsh: better support double quote (Lai Jiangshan),<br />
      Add todo.pl and config example to EXTRA_DIST (Daniel P. Berrange),<br />
      Fix several minor problems introduced by the memtune series (Matthias Bolte),<br />
      Remote protocol implementation of virDomainSet/GetMemoryParameters (Nikunj A. Dadhania),<br />
      Adding memtune command to virsh tool (Nikunj A. Dadhania),<br />
      Implement domainGetMemoryParamters for LXC (Nikunj A. Dadhania),<br />
      Implement domainSetMemoryParamters for LXC (Nikunj A. Dadhania),<br />
      Adding memtunables to libvirt-lxc command (Nikunj A. Dadhania),<br />
      Adding memtunables to qemuSetupCgroup (Nikunj A. Dadhania),<br />
      Implement domainGetMemoryParamters for QEmu (Nikunj A. Dadhania),<br />
      Implement domainSetMemoryParamters for QEmu (Nikunj A. Dadhania),<br />
      Implement cgroup memory controller tunables (Nikunj A. Dadhania),<br />
      XML parsing for memory tunables (Nikunj A. Dadhania),<br />
      Adds xml entries for memory tunables in domain schema (Nikunj A. Dadhania),<br />
      Adding structure and defines for virDomainSet/GetMemoryParameters (Nikunj A. Dadhania),<br />
      Set sensible defaults for cpu match and feature policy (Daniel P. Berrange),<br />
      xen: Fix logic bug in xenDaemon*DeviceFlags (Jiri Denemark),<br />
      xen: Make xenDaemon*DeviceFlags errors less confusing (Jiri Denemark),<br />
      Return a suitable error message if we can't find a matching emulator (Guido Günther),<br />
      Pass -n to ip(6)tables (Guido Günther),<br />
      nwfilter: Extend schema to accept state attribute (Stefan Berger),<br />
      nwfilter: Add test case for testing the state attribute (Stefan Berger),<br />
      nwfilter: Instantiate state match in ip(6)tables rules (Stefan Berger),<br />
      nwfilter: Extend XML parser and gen. to support state attr. (Stefan Berger),<br />
      xen: Fix bogus error when attaching a device (Jiri Denemark),<br />
      esx: Add support for virtual serial device network backing (Matthias Bolte),<br />
      phyp: Verify that domain XML contains at least one disk element (Matthias Bolte),<br />
      implement usb and pci hot attach in AppArmor driver (Jamie Strandboge),<br />
      nwfilter: Add a test case for testing the comment attribute (Stefan Berger),<br />
      nwfilter: Extend nwfilter schema to accept comment attrib. (Stefan Berger),<br />
      nwfilter: Instantiate comments in ip(6)tables rules (Stefan Berger),<br />
      nwfilter: Extend XML parser and generator w/ comment attribute (Stefan Berger),<br />
      configure: tweak logic flow of virtport check (Justin Clift),<br />
      Rework configure logic for virtualport support (Stefan Berger),<br />
      nwfilter: report if ip(6)tables rules would not be active (Stefan Berger),<br />
      app-armor: add 'rw' for appropriate devices (Jamie Strandboge),<br />
      add extra tests to virt-aa-helper-test for new '-p' option (Jamie Strandboge),<br />
      esx: Allow '-' in VMX entry names (Matthias Bolte),<br />
      Make SASL work over UNIX domain sockets (Daniel P. Berrange),<br />
      Refactor some daemon code to facilitate introduction of static probes (Daniel P. Berrange),<br />
      nodeinfo: work when hot-plugging is disabled (Eric Blake),<br />
      libvirtd: improve the error message displayed on tls client auth failure (Justin Clift),<br />
      virsh: Use virBuffer for generating XML (Jiri Denemark)
      </li><li> Cleanups: <br />
      audit: printf warning fix (KAMEZAWA Hiroyuki),<br />
      build: use shorter file names for 'make dist' (Eric Blake),<br />
      maint: fix syntax-check failure of previous patch (Eric Blake),<br />
      maint: ignore new test executable (Eric Blake),<br />
      tests: Silence qemuxml2argv test (Jiri Denemark),<br />
      Remove all use of inet_pton and inet_ntop (Daniel P. Berrange),<br />
      Remove both addrToString methods (Daniel P. Berrange),<br />
      Remove pointless nwIPAddress struct &amp; void *casts (Daniel P. Berrange),<br />
      Remove useless code in error path of getnameinfo() (Daniel P. Berrange),<br />
      maint: sort private sym lists (Eric Blake),<br />
      Rename VIR_DOMAIN_SWAP_HARD_LIMIT to VIR_DOMAIN_MEMORY_SWAP_HARD_LIMIT (Matthias Bolte),<br />
      Fix make check on RHEL-5 (Jiri Denemark),<br />
      Don't let daemon-conf test fail when auditing is disabled (Matthias Bolte),<br />
      Fix compile errors in remote.c and newly added audit code (Matthias Bolte),<br />
      Fix symbol exports &amp; remove duplicated libvirt_util.la linkage (Daniel P. Berrange),<br />
      Fix statstest when driver modules are enabled (Daniel P. Berrange),<br />
      build: avoid false positive syntax-check failure (Eric Blake),<br />
      proxy: Fix undefined reference to virClose (Matthias Bolte),<br />
      Introduce VIR_CLOSE to be used rather than close() (Stefan Berger),<br />
      Fix warning about a non-literal format string in qemu_driver.c (Laine Stump),<br />
      test: silence nwfilter test (Stefan Berger),<br />
      tests: fix spurious test failure (Eric Blake),<br />
      memory: fix remote protocol compilation (Eric Blake),<br />
      virsh: poison raw allocation routines (Eric Blake),<br />
      Avoid checking against strncpy in virsh.c (Daniel Veillard),<br />
      Cleanup some tabs issues (Daniel Veillard),<br />
      util: add missing export (Eric Blake),<br />
      virt-aa-helper-test cleanups (Jamie Strandboge),<br />
      python: drop unnecessary conn assignment (Dan Kenigsberg),<br />
      pciFindStubDriver should return NULL on error (Chris Wright),<br />
      tests: silence qemuargv2xmltest noise (Eric Blake),<br />
      tests: clean up qemuargv2xmltest (Eric Blake),<br />
      maint: silence warning from libtool (Eric Blake),<br />
      tests: Fix preprocessor indentation (Jiri Denemark)
      </li></ul>
        <h3>0.8.4: Sep 10 2010</h3>
        <ul><li> Features:
      various improvements to UML driver (Soren Hansen)
      </li><li> Documentation:<br />
      docs: fix lxc examples (Serge Hallyn),<br />
      docs: mention domain clock improvements (Eric Blake),<br />
      docs: fix an incorrect keyword in updated hooks page (Justin Clift),<br />
      docs: significant expansion of custom hook script information (Justin Clift)

      </li><li> Portability:<br />
      cygwin: build fix (Stefan Berger),<br />
      build: allow mingw VPATH build (Eric Blake),<br />
      Generate libvirt_qemu.def from libvirt_qemu.syms for MinGW builds (Matthias Bolte),<br />
      Only require XDR when building libvirtd or the remote driver (Matthias Bolte),<br />
      build-sys: fix build when daemon is disabled by not installing libvirtd.8 (Diego Elio Pettenò)

      </li><li> Bug Fixes:<br />
      Fix block statistics with newer versions of Xen (Guido Günther),<br />
      Fix off-by-1 in QEMU boot arg array handling (Daniel P. Berrange),<br />
      bridge: Fix static-only DHCP configuration (Jiri Denemark),<br />
      qemu: qemuMonitorJSONEjectMedia(): Fix arguments' type (Luiz Capitulino),<br />
      qemu: qemuMonitorJSONMigrate(): Fix arguments' type (Luiz Capitulino),<br />
      test: Don't overwrite storage volume target path and key (Matthias Bolte),<br />
      build: Fix permissions of sysconfig files (Jiri Denemark),<br />
      virsh: remove driver check from attach-disk command (Ryan Harper),<br />
      phyp: Bad comparison when checking for existing domain name (Eduardo Otubo),<br />
      esx: Fix esxVI_BuildSelectSet's invalid argument check (Matthias Bolte),<br />
      spec: Fix undefined with_libnl (Jiri Denemark),<br />
      Fix handling of sparse NUMA topologies (Daniel P. Berrange),<br />
      qemu: Check for errors when converting PCI address to string (Jiri Denemark),<br />
      qemu: Fix JSON migrate_set_downtime command (Jiri Denemark),<br />
      uml: fix logic bug in checking reply length (Eric Blake),<br />
      xen: Fix scheduler setting problems (Daniel Veillard),<br />
      nodedev: Free the right pointers when getting WWNs fails (Jiri Denemark),<br />
      nodedev: Fix sysfs paths for vport operations (Dave Allan),<br />
      xen: Fix device count on detach (Daniel Berrange),<br />
      remote: Fix incorrect use of private data field (Daniel Berrange),<br />
      esx: Fix memory leak when looking up an non-existing domain by name (Matthias Bolte),<br />
      Fix up qemu domain save/managed save locking. (Chris Lalancette),<br />
      qemu: Release PCI slot when detaching disk and net devices (Jiri Denemark),<br />
      qemu: Re-reserve all PCI addresses on libvirtd restart (Jiri Denemark),<br />
      Close fd's of persistent tap devices (Soren Hansen),<br />
      Fix tunnelled migration with qemu running as qemu:qemu. (Chris Lalancette),<br />
      Fix valgrind complaints when using kill -SIGHUP on libvirtd (Stefan Berger),<br />
      bridge: Fix potential segfault when preparing dnsmasq arguments (Jiri Denemark),<br />
      Fix return value usage (Doug Goldstein),<br />
      nodeinfo: skip offline CPUs (Eric Blake),<br />
      Do not use boot=on on IDE device (Daniel Veillard)

      </li><li> Improvements:<br />
      virsh: Option for overriding disk type in attach-disk (Jiri Denemark),<br />
      Explicitly pass uml_dir argument to user-mode-linux (Soren Hansen),<br />
      Fix dependancies for remote generated files (Daniel P. Berrange),<br />
      Ensure remote daemon unions are always non-zero length (Daniel P. Berrange),<br />
      Add nwfilter support to UML driver (Soren Hansen),<br />
      esx: Use SessionIsActive when available (Matthias Bolte),<br />
      esx: Fall back to path as key when QueryVirtualDiskUuid isn't available (Matthias Bolte),<br />
      mingw: match recent changes in spec file (Eric Blake),<br />
      Update of localization files (Daniel Veillard),<br />
      esx: Use the VirtualDisk UUID as storage volume key (Matthias Bolte),<br />
      esx: Add .vmdk storage volume creation (Matthias Bolte),<br />
      OpenVZ: add ethernet interface type support (Jean-Baptiste Rouault),<br />
      esx: Rework datastore path parsing and handling (Matthias Bolte),<br />
      esx: Fix generator for string return values (Matthias Bolte),<br />
      build: add some modules (Eric Blake),<br />
      Use global directory as UML's monitorDir for privileged connections (Soren Hansen),<br />
      maint: track moved file (Eric Blake),<br />
      Add tests for Xen's blktap2 implementation (Jim Fehlig),<br />
      Add blktap2 support to xend driver (Jim Fehlig),<br />
      esx: Map the .vmx annotation to the domain XML description (Matthias Bolte),<br />
      esx: Add read-only storage volume access (Matthias Bolte),<br />
      Move libvirt-guests init script and config to tools (Jiri Denemark),<br />
      Support virDomainAttachDevice and virDomainDetachDevice for disks in UML (Soren Hansen),<br />
      Log return value for virConnectGetCapabilities (Daniel P. Berrange),<br />
      Try harder to send RPC error message back to client (Daniel P. Berrange),<br />
      Add explicit warning messages when failing to serialize to XDR (Daniel P. Berrange),<br />
      Allow chardev of type 'file' for UML domains. (Soren Hansen),<br />
      esx: Improve object-by-type lookup performance (Matthias Bolte),<br />
      xen tests: Fix PV-VFB tests with RHEL-5 API (Jiri Denemark),<br />
      xen tests: Fix missing "type ioemu" with rhel5-api (Jiri Denemark),<br />
      nodeinfotest: Print libvirt error on failure (Jiri Denemark),<br />
      xenapi: support xenapi 5.6.0 headers (Eric Blake),<br />
      Add support for -enable-kqemu flag (Daniel P. Berrange),<br />
      esx: Use MD5 sum of mount path as storage pool UUID (Matthias Bolte),<br />
      esx: Make sure dumpxml outputs proper ID for active domains (Matthias Bolte),<br />
      Add actions to virDomainLifecycle enum (Jim Fehlig),<br />
      vbox: add location used in rpmfusion release (Eric Blake),<br />
      storage: add support for Vendor and Model in XML (Patrick Dignan),<br />
      qemu: Fix copy and paste error in warning message (Jiri Denemark),<br />
      nwfilter: extend nwfilter reload support (Stefan Berger),<br />
      esx: Explicitly disable unused floppy devices (Matthias Bolte),<br />
      phyp: Add rudimentary network driver (Eduardo Otubo),<br />
      Make umlConnectTapDevice ask brAddTap for a persistent tap device. (Soren Hansen),<br />
      Make sure all command line arguments get passed to UML (Soren Hansen),<br />
      nwfilter: Discard class D,E IP addresses when sniffing pkts (Stefan Berger),<br />
      nwfilter: serialize execution of scripts with ebtables cmds (Stefan Berger),<br />
      Move the tunnelled migration unix socket to /var/lib/libvirt/qemu (Chris Lalancette),<br />
      qemu: avoid calling the balloon info command if disabled (Daniel Veillard),<br />
      bridge: Add --dhcp-no-override option to dnsmasq (Jiri Denemark),<br />
      esx: Improve VMX file name parsing and formatting (Matthias Bolte),<br />
      esx: Split VMX code into a general and an ESX specific part (Matthias Bolte),<br />
      allow memballoon type of none to desactivate it (Daniel Veillard),<br />
      Add a detailed message when tap device add fails (Doug Goldstein),<br />
      qemu: Hack around asynchronous device_del (Jiri Denemark),<br />
      build-sys: only build the test programs during the check phase. (Diego Elio Pettenò),<br />
      Add "ubd" to the list of disk prefixes (Soren Hansen),<br />
      Extend virSocketParseAddr() to allow a NULL result pointer (Daniel Veillard),<br />
      bootloader_args is named bootargs in xen-xm (Philipp Hahn),<br />
      Fix return value usage (Doug Goldstein),<br />
      qemu: improve error if tun device is missing (Doug Goldstein),<br />
      build: rerun bootstrap if po/Makevars got nuked (Eric Blake)

      </li><li> Cleanups:<br />
      Remove hack to get static binaries in DV environment (Daniel Veillard),<br />
      build: avoid uninitialized variable warning (Eric Blake),<br />
      vbox: factor a large function (Eric Blake),<br />
      lxc: avoid large stacks with veth creation (Eric Blake),<br />
      openvz: use virAsprintf to avoid large stacks (Eric Blake),<br />
      openvz: formatting cleanups (Eric Blake),<br />
      network: use virAsprintf when appropriate (Eric Blake),<br />
      Move hextobin as virHexToBin to util.c (Matthias Bolte),<br />
      Rename qemudShrinkDisks to virDomainDiskRemove and move to domain_conf.c (Soren Hansen),<br />
      xml2sexprtest: Remove graphics from unrelated tests (Jiri Denemark),<br />
      xenapi: Fix compile error in previous commit (Matthias Bolte),<br />
      qemu: Remove code duplication (Jiri Denemark),<br />
      vbox: factor a large function (Eric Blake),<br />
      xenapi: avoid sprintf (Eric Blake),<br />
      storage: avoid s[n]printf (Eric Blake),<br />
      maint: whitespace cleanups (Eric Blake),<br />
      build: delete dead comments (Eric Blake),<br />
      nwfilter: use consistent OOM reporting (Eric Blake),<br />
      build: fix compiler warning (Eric Blake),<br />
      build: fix AppArmor compilation (Jamie Strandboge),<br />
      Avoid unnecessary bootstrap runs in VPATH builds (Jiri Denemark),<br />
      maint: update an email address preference (Eric Blake),<br />
      phyp: refactor phypListDomainsGeneric to eliminate buffer overflow (Eduardo Otubo)
      </li></ul>
        <h3>0.8.3: Aug  4 2010</h3>
        <ul><li> Features:<br />
      esx: Support vSphere 4.1 (Matthias Bolte),<br />
      Qemu arbitrary monitor commands. (Chris Lalancette),<br />
      Qemu Monitor API entry point. (Chris Lalancette)
      </li><li> Documentation:<br />
      docs: Link wiki FAQ to main page (Cole Robinson),<br />
      Document the memory balloon device (Daniel P. Berrange),<br />
      man pages: update authors and copyright notice for libvirtd and virsh (Justin Clift),<br />
      Add openauth example to demonstrate a custom auth callback (Matthias Bolte),<br />
      docs: fix so generated .html files are removed with make clean (Justin Clift),<br />
      virsh: Fix man page syntax (Jiri Denemark),<br />
      html docs: added firewall explanation page by daniel berrange (Justin Clift),<br />
      libvirtd: add man page for libvirtd (Justin Clift)
      </li><li> Portability:<br />
      Fix compile on i686. (Chris Lalancette),<br />
      daemon: dispatch.c should include stdio.h (and stdarg.h) (Ryota Ozaki)
      </li><li> Bug fixes:<br />
      qemu: Fix PCI address allocation (Jiri Denemark),<br />
      Don't leak delay string when freeing virInterfaceBridgeDefs (Laine Stump),<br />
      qemu: don't lose error on setting monitor capabilities (Eric Blake),<br />
      Add iptables rule to fixup DHCP response checksum. (Laine Stump),<br />
      Fix the ACS checking in the PCI code. (Chris Lalancette),<br />
      Free up memballoon def. (Chris Lalancette),<br />
      Fix a bogus warning when parsing &lt;hostdev&gt; (Chris Lalancette),<br />
      Update ID after stopping a domain (Matthias Bolte),<br />
      openvzDomainCreateWithFlags: set domain id to the correct value (Jean-Baptiste Rouault),<br />
      xenapi: Update ID after starting a domain (Matthias Bolte),<br />
      esx: Update ID after starting a domain (Matthias Bolte),<br />
      Fix DMI uuid parsing. (Chris Lalancette),<br />
      Do not activate boot=on on devices when not using KVM (Daniel Veillard),<br />
      Fix a memory leak in the qemudBuildCommandLine. (Chris Lalancette),<br />
      esx: Fix freeing of heterogeneous lists (Matthias Bolte),<br />
      xen: fix logic bug (Eric Blake),<br />
      Eliminate memory leak in xenUnifiedDomainInfoListFree (Laine Stump),<br />
      lxc: Fix 'autostart' doesn't take effect actually (Ryota Ozaki),<br />
      Fix --with-xen-proxy related compile error (Matthias Bolte),<br />
      Fix a potential race in pciInitDevice. (Chris Lalancette),<br />
      Invert logic for checking for QEMU disk cache options (Daniel P. Berrange),<br />
      libvirt-guests: Don't throw errors if libvirtd is not installed (Jiri Denemark),<br />
      pciResetDevice: use inactive devices to determine safe reset (Chris Wright),<br />
      secaatest: Fix compilation (Matthias Bolte),<br />
      virt-aa-helper-test: Fix failure due to the new disk format probing option (Matthias Bolte),<br />
      virt-aa-helper: Make getopt accept the p option (Matthias Bolte),<br />
      virt-aa-helper: Fix return value of add_file_path (Matthias Bolte),<br />
      Fix SEGV on exit after domainEventDeregister() (Philipp Hahn),<br />
      pciSharesBusWithActive fails to find multiple devices on bus (Chris Wright),<br />
      Fix incorrect use of private data in remote driver (Daniel P. Berrange),<br />
      Set a stable &amp; high MAC addr for guest TAP devices on host (Daniel P. Berrange),<br />
      Fix PCI address assignment if no IDE controller is present (Daniel P. Berrange),<br />
      lxc: force kill of init process by sending SIGKILL if needed (Ryota Ozaki),<br />
      Fix a NULL dereference in the case that the arg in question didn't exist. (Chris Lalancette),<br />
      Remove bogus free of static strings (Daniel P. Berrange),<br />
      Fix a deadlock in bi-directional p2p concurrent migration. (Chris Lalancette),<br />
      Make virsh setmaxmem balloon only when successful. (Chris Lalancette),<br />
      fsync new storage volumes even if new volume was copied. (Laine Stump),<br />
      Don't skip zero'ing end of volume file when inputvol is shorter than newvol (Laine Stump),<br />
      Always clear out the last_error in virshReportError. (Chris Lalancette),<br />
      CVE-2010-2242 Apply a source port mapping to virtual network masquerading (Daniel P. Berrange),<br />
      uml_driver: correct logic error in umlMonitorCommand (Jim Meyering),<br />
      qemuConnectMonitor: fix a bug that would have masked SELinux failure (Jim Meyering),<br />
      python: Fix IOErrorReasonCallback bindings (Cole Robinson),<br />
      cpuCompare: Fix crash on unexpected CPU XML (Jiri Denemark),<br />
      cpu: Fail when CPU type cannot be detected from XML (Jiri Denemark),<br />
      cpuCompare: Fix comparison of two host CPUs (Jiri Denemark),<br />
      Fix potential crash in QEMU monitor JSON impl (Daniel P. Berrange)
      </li><li> Improvements:<br />
      OpenVZ: implement suspend/resume driver APIs (Jean-Baptiste Rouault),<br />
      esx: Set storage pool target path to host.mountInfo.path (Matthias Bolte),<br />
      esx: Make storage pool lookup by name and UUID more robust (Matthias Bolte),<br />
      esx: Restrict vpx:// to handle a single host in a vCenter (Matthias Bolte),<br />
      esx: Map some managed object types (Matthias Bolte),<br />
      esx: Parse the path of the URI (Matthias Bolte),<br />
      Make virsh -d check its input (Daniel Veillard),<br />
      esx: Switch from name to number checks in the subdrivers (Matthias Bolte),<br />
      esx: Improve blocked task detection and fix race condition (Matthias Bolte),<br />
      build: distribute libvirt_qemu.syms (Eric Blake),<br />
      build: restore operation of bit-rotted 'make cov' (Eric Blake),<br />
      qemu: virtio console support (Cole Robinson),<br />
      domain conf: Track &lt;console&gt; target type (Cole Robinson),<br />
      domain conf: char: Add an explicit targetType field (Cole Robinson),<br />
      domain conf: Rename character prop targetType -&gt; deviceType (Cole Robinson),<br />
      docs: domain: Document virtio &lt;channel&gt; (Cole Robinson),<br />
      tests: Test qemuxml2xml when expected xml changes (Cole Robinson),<br />
      fix handling of PORT_PROFILE_RESPONSE_INPROGRESS netlink message (Gerhard Stenzel),<br />
      maint: turn on gcc logical-op checking (Eric Blake),<br />
      libvirt-guests: add reload, condrestart (Eric Blake),<br />
      libvirt-guests: enhance status (Eric Blake),<br />
      libvirt-guests: detect invalid arguments (Eric Blake),<br />
      qemu: Allow setting boot menu on/off (Cole Robinson),<br />
      qemu: Error on unsupported graphics config (Cole Robinson),<br />
      Force FLR on for buggy SR-IOV devices. (Chris Lalancette),<br />
      qemudDomainAttachHostPciDevice refactor to use new helpers (Chris Wright),<br />
      Add helpers qemuPrepareHostdevPCIDevice and qemuDomainReAttachHostdevDevices (Chris Wright),<br />
      qemuGetPciHostDeviceList take hostdev list directly (Chris Wright),<br />
      esx: Add vpx:// scheme to allow direct connection to a vCenter (Matthias Bolte),<br />
      esx: Don't ignore the vcenter query parameter (Matthias Bolte),<br />
      esx: Add autodetection for the SCSI controller model (Matthias Bolte),<br />
      esx: Allow 'vmpvscsi' as SCSI controller model (Matthias Bolte),<br />
      Add tests for the new Qemu namespace XML. (Chris Lalancette),<br />
      Qemu remote protocol. (Chris Lalancette),<br />
      Handle arbitrary qemu command-lines in qemuParseCommandLine. (Chris Lalancette),<br />
      Qemu arbitrary command-line arguments. (Chris Lalancette),<br />
      Add namespace callback hooks to domain_conf. (Chris Lalancette),<br />
      Remove erroneous setting of return value to errno. (Laine Stump),<br />
      Change virDirCreate to return -errno on failure. (Laine Stump),<br />
      Make virStorageBackendCopyToFD return -errno. (Laine Stump),<br />
      Change virFileOperation to return -errno (ie &lt; 0) on error. (Laine Stump),<br />
      Re-arrange PCI device address assignment to match QEMU's default (Daniel P. Berrange),<br />
      Explicitly represent balloon device in XML and handle PCI address (Daniel P. Berrange),<br />
      Rearrange VGA/IDE controller address reservation (Daniel P. Berrange),<br />
      Use unsigned long in cmdSetmem. (Chris Lalancette),<br />
      Fix up inconsistent virsh option error reporting. (Chris Lalancette),<br />
      Use the extract backing store format in storage volume lookup (Daniel P. Berrange),<br />
      Rewrite qemu-img backing store format handling (Daniel P. Berrange),<br />
      Add ability to set a default driver name/type when parsing disks (Daniel P. Berrange),<br />
      Disable all disk probing in QEMU driver &amp; add config option to re-enable (Daniel P. Berrange),<br />
      Pass security driver object into all security driver callbacks (Daniel P. Berrange),<br />
      Convert all disk backing store loops to shared helper API (Daniel P. Berrange),<br />
      Add an API for iterating over disk paths (Daniel P. Berrange),<br />
      Require format to be passed into virStorageFileGetMetadata (Daniel P. Berrange),<br />
      Refactor virStorageFileGetMetadataFromFD to separate functionality (Daniel P. Berrange),<br />
      Remove 'type' field from FileTypeInfo struct (Daniel P. Berrange),<br />
      Extract the backing store format as well as name, if available (Daniel P. Berrange),<br />
      RFC: Canonicalize block device paths (David Allan),<br />
      .gitignore: Ignore generated libvirtd docs (Cole Robinson),<br />
      esx: Make esxVI_*_Deserialize dynamically dispatched (Matthias Bolte),<br />
      qemu: Use -nodefconfig when probing for CPU models (Jiri Denemark),<br />
      Ensure we return the callback ID in python events binding (Daniel P. Berrange),<br />
      virsh: add new --details option to vol-list (Justin Clift),<br />
      Implement virsh managedsave-remove command. (Chris Lalancette),<br />
      cpu: Add new models from qemu's target-x86_64.conf (Jiri Denemark),<br />
      cpu: Add support for CPU vendor (Jiri Denemark),<br />
      cpuBaseline: Detect empty set of common features (Jiri Denemark),<br />
      cpuBaseline: Don't mess with the CPU returned by arch driver (Jiri Denemark),<br />
      Make html docs in non-srcdir build (Jiri Denemark)
      </li><li> Cleanups:<br />
      Fix build error in virsh.c (Laine Stump)<br />
      Fix virsh error message when -d arg is not numeric (Eric Blake)<br />
      Fix a couple of typo in iSCSI backend (Aurelien ROUGEMONT)<br />
      Don't put a semicolon on the end of a VIR_ENUM_IMPL. (Chris Lalancette)<br />
      Remove duplicate &lt;p&gt; from downloads.html.in (Matthias Bolte)<br />
      storage: kill dead stores (Eric Blake)<br />
      qemu: kill some dead stores (Eric Blake)<br />
      network: kill dead store (Eric Blake)<br />
      esx: silence spurious compiler warning (Eric Blake)<br />
      build: fix 'make syntax-check' failure (Eric Blake)<br />
      lxc: Fix return values of veth.c functions (Ryota Ozaki)<br />
      maint: fix comment typos (Eric Blake)<br />
      Fix up confusing indentation in qemudDomainAttachHostPciDevice. (Chris Lalancette)<br />
      build: fix VPATH builds (Eric Blake)<br />
      virt-aa-helper: Ignore open errors again (Matthias Bolte)<br />
      qemu-api: avoid build failure (Eric Blake)<br />
      Fix .mailmap after accidental wrong committer address (Daniel P. Berrange)<br />
      Remove inappropriate use of VIR_ERR_NO_SUPPORT (Daniel P. Berrange)<br />
      Remove unused and bitrotting vshCommandOptStringList (Chris Lalancette)<br />
      Remove error checking after using vshMalloc. (Chris Lalancette)<br />
      Remove the "showerror" parameter from vshConnectionUsability. (Chris Lalancette)<br />
      Eliminate compiler warning due to gettext string with no format args (Laine Stump)<br />
      Fix build by removing unknown pod2man flag (Daniel P. Berrange)
      </li></ul>
        <h3>0.8.2: Jul  5 2010</h3>
        <ul><li> Features:<br />
      phyp: adding support for IVM (Eduardo Otubo),<br />
      libvirt: introduce domainCreateWithFlags API (Eric Blake),<br />
      add 802.1Qbh and 802.1Qbg switches handling (Stefan Berger),<br />
      Support for VirtualBox version 3.2 (Jean-Baptiste Rouault),<br />
      Init script for handling guests on shutdown/boot (Jiri Denemark),<br />
      qemu: live migration with non-shared storage for kvm (Kenneth Nagin)
      </li><li> Documentation:<br />
      html docs: add link to PHP bindings by Radek Hladik (Justin Clift),<br />
      virsh: document attach-disk better (Eric Blake),<br />
      bridge_driver.c: fix file description (Alan Pevec),<br />
      nwfilter: extensions of docs with (Stefan Berger),<br />
      Fix description of virStorageVolGetInfo() (Philipp Hahn),<br />
      virsh: improve help text for vol query commands (Justin Clift),<br />
      virsh: fixed trivial comment and debug message in vshCommandOptVolBy function (Justin Clift),<br />
      virsh: remove xen reference in header comment (Justin Clift),<br />
      virsh: add the volume commands to the virsh man page (Justin Clift),<br />
      virsh: fix minor virsh man page typos and formatting problems (Justin Clift),<br />
      Trivial virsh.pod additions --all for "list" command and similar (Justin Clift),<br />
      Add docs on drive &lt;serial&gt; element (Марк Коренберг),<br />
      daemon: sysconf: Update comment about VNC audio (Cole Robinson),<br />
      nwfilter: documentation (Stefan Berger),<br />
      docs: distribute more coding convention documentation (Eric Blake),<br />
      note a typo: VIR_MIGRATE_TUNNELLED should be VIR_MIGRATE_TUNNELED, (Jim Meyering),<br />
      datatypes: fix comment typo (Eric Blake),<br />
      Fix a typo in docs (Ersek Laszlo),<br />
      docs: hacking: explain why using curly braces well is important (Jim Meyering)
      </li><li> Portability:<br />
      cgroup: Fix compilation broken on MinGW due to dirent-&gt;d_type (Ryota Ozaki),<br />
      parthelper: fix compilation without optimization (Eric Blake),<br />
      build: fix some mingw issues (Eric Blake),<br />
      build: avoid pthreads-win32 on mingw (Eric Blake),<br />
      build: fix cygwin build, correctly this time (Eric Blake),<br />
      build: fix up some compiler flags (Eric Blake),<br />
      build: avoid compile failure on linux kernels older than 2.6.19 (Jim Meyering),<br />
      libvirt_proxy: link with -lpthread if needed (Eric Blake),<br />
      build: allow older gettext (Eric Blake),<br />
      mingw32-libvirt.spec: bring up to date (Eric Blake),<br />
      avoid link error in tests using libvirt_util; due to pthread_sigmask (Jim Meyering),<br />
      configure.ac: Avoid uname, which breaks cross-compilation (Matthias Bolte),<br />
      mingw: Fix two undefined symbols (Matthias Bolte),<br />
      build: avoid compiler warning (Eric Blake),<br />
      build: prefer WIN32 over __MINGW32__ checks (Eric Blake),<br />
      dnsmasqReload: avoid mingw link failure (Eric Blake),<br />
      mingw: Fix symbol export (Matthias Bolte)
      </li><li> Bug Fixes:<br />
      Avoid invoking the qemu monitor destroy callback if the constructor fails (Daniel P. Berrange),<br />
      cgroup: Add missing errno == ENOENT check in virCgroupRemoveRecursively (Ryota Ozaki),<br />
      Fix crash when detaching devices from qemu domains. (Chris Lalancette),<br />
      virFileResolveLink: guarantee an absolute path (Eric Blake),<br />
      phyp: don't steal storage management from other drivers (Eric Blake),<br />
      Avoid calling virStorageFileIsSharedFS with NULL (Laine Stump),<br />
      lxc: Fix virsh console doesn't work after restarting libvirtd (Ryota Ozaki),<br />
      lxc: Fix error handlings in lxcContainerRenameAndEnableInterfaces (Ryota Ozaki),<br />
      Set proper selinux label on image file during qemu domain restore (Laine Stump),<br />
      build: fix regression with libvirt-api.xml generation (Eric Blake),<br />
      Fix a reference leak for node devices. (Chris Lalancette),<br />
      Don't squash file permissions when migration fails (Daniel P. Berrange),<br />
      Fix migration in text mode and shared storage migration in json mode (Daniel P. Berrange),<br />
      Add missing parameter in python Disk IO error callback (Daniel P. Berrange),<br />
      Check for presence of qemu -nodefconfig option before using it (Laine Stump),<br />
      cgroup: Change virCgroupRemove to remove all descendant groups at first (Ryota Ozaki),<br />
      Fix reference handling leak on qemuMonitor (Daniel P. Berrange),<br />
      Don't leak open fd to virsh in libvirt-guests init script (Jiri Denemark),<br />
      nwfilter: fix loadable module support (Stefan Berger),<br />
      Do not free static buffer with UUID (Jiri Denemark),<br />
      qemu: Fix crash on failed VM startup (Cole Robinson),<br />
      Add several missing vir*Free calls in libvirtd's remote code (Matthias Bolte),<br />
      Fix enumeration of partitions in disks with a trailing digit in path (Daniel P. Berrange),<br />
      vbox: check getenv("DISPLAY") for NULL in vboxDomainDumpXML (Matthias Bolte),<br />
      Check getenv("PATH") for NULL in virFindFileInPath (Matthias Bolte),<br />
      Fix cgroup setup code to cope with root squashing NFS (Daniel P. Berrange),<br />
      Fix leaks in udev device add/remove v3 (David Allan),<br />
      Ensure that PCI device is reattached to host if hotadd fails (Daniel P. Berrange),<br />
      Don't raise errors in the selinux restore code (Daniel P. Berrange),<br />
      Fix check for errors in device_add command in QEMU text monitor (Daniel P. Berrange),<br />
      Network duplicate UUID/name checking (Daniel P. Berrange),<br />
      Storage pool duplicate UUID/name checking (Daniel P. Berrange),<br />
      Fix auto-adding of virtio serial controllers (Daniel P. Berrange),<br />
      Ensure UNIX domain sockets are removed on daemon shutdown (Daniel P. Berrange),<br />
      Fix AppArmor save/restore.Add stdin_path to qemudStartVMDaemon() args. (Jamie Strandboge),<br />
      Adjust block size used by dd to speed QEMU domain save operations. (Laine Stump),<br />
      Fix dereference of potentially freed pointer in qemudDomainSaveFlags (Laine Stump),<br />
      Update nodedev scsi_host data before use (David Allan),<br />
      Fix device destroy return value (David Allan),<br />
      storage: Check for invalid storage mode before opening (Cole Robinson),<br />
      Improve nodedev parent/child relationships (David Allan),<br />
      network: bridge: Don't start network if it collides with host routing (Cole Robinson),<br />
      Fix integer overflow in hotplug methods (Daniel P. Berrange),<br />
      Fix failing virGetHostname. (Chris Lalancette),<br />
      storage: Sanitize pool target paths (Cole Robinson),<br />
      Fix handling of disk backing stores with cgroups (Daniel P. Berrange),<br />
      Fix up basic migration. (Chris Lalancette),<br />
      qemu: Release bus address on PCI host device remove (Alex Williamson),<br />
      qemu: avoid corrupting guest info struct on host device PCI hot add (Alex Williamson),<br />
      Query block allocation extent from QEMU monitor (Daniel P. Berrange),<br />
      Don't overwrite virDomainAssignDef errors. (Chris Lalancette),<br />
      Fix race in finding available vnc port (Jim Fehlig),<br />
      qemu driver: fix version check typos (Chris Wright),<br />
      daemon: A few initscript corrections (Cole Robinson),<br />
      qemu: Properly cleanup in security startup error path (Cole Robinson),<br />
      qemudDomainMigrateFinish2: handle a case of virDomainSaveStatus failure (Jim Meyering),<br />
      Fix potential NULL dereference in remoteDomainMigratePrepare2 (Jiri Denemark),<br />
      qemudDomainRestore: handle a case of virDomainSaveStatus failure (Jim Meyering),<br />
      python: don't ignore virInitialize failure in module initialization (Jim Meyering),<br />
      tests: do not ignore virInitialize failure (Jim Meyering),<br />
      qemuMonitorTextMigrate: avoid leak on OOM-error path (Jim Meyering),<br />
      virNWFilterDefParseXML: avoid leak on error paths (Jim Meyering),<br />
      virDomainNetDefParseXML: avoid leak upon multiple "filterref" (Jim Meyering),<br />
      ebiptablesWriteToTempFile: don't close a negative file descriptor (Jim Meyering),<br />
      Protect against NULL pointer flaws in monitor usage (Daniel P. Berrange),<br />
      Fix multiple potential NULL pointer references in monitor usage (Daniel P. Berrange),<br />
      umlAutostartDomain: avoid NULL-deref upon virGetLastError failure (Jim Meyering),<br />
      x86ModelHasFeature: avoid NULL-dereference for unmatched CPU "feature" (Jim Meyering),<br />
      qemudDomainSetVcpus: avoid NULL-deref (Jim Meyering),<br />
      nwfilter: Add missing driver lock in qemu driver (Stefan Berger),<br />
      Fix a misuse of virAsprintf in qemudDomainMemoryPeek (Ryota Ozaki),<br />
      Don't reset user/group/security label on shared filesystems during migrate (Daniel P. Berrange),<br />
      Fix handling of disk backing stores with cgroups (Daniel P. Berrange),<br />
      Fix possible crash in handling IO Error event (Daniel P. Berrange),<br />
      Fix monitor ref counting when adding event handle (Jiri Denemark),<br />
      Remove watches before calling REMOTE_PROC_CLOSE (Jiri Denemark),<br />
      node_device: udev: Fix PCI product/vendor swappage (Cole Robinson),<br />
      virsh: schedinfo --set invalid=value would simply ignore the option (Jim Meyering),<br />
      Remove unused nwfilter field from struct remote_error (Matthew Booth),<br />
      util: fix va_start usage bug (Eric Blake),<br />
      Don't wipe generated iface target in active domains (Jiri Denemark),<br />
      Various fixes for the spec file (Daniel Veillard),<br />
      lxc: Check domain is active/inactive as required by operation (Jiri Denemark),<br />
      lxc: Make SetMemory work for active domains only (Jiri Denemark),<br />
      cgroup: Fix possible memory leak in virCgroupMakeGroup (Ryota Ozaki),<br />
      Fix memory leaks in cmdInterfaceEdit and cmdNWFilterEdit. (Laine Stump),<br />
      lxc: Fix failure on starting a domain with multiple interfaces (Ryota Ozaki)
      </li><li> Improvements:<br />
      vbox: Let configure detect/set the XPCOMC directory (Matthias Bolte),<br />
      udev: Parse PCI devices even if libpciaccess fails (Cole Robinson),<br />
      qemu: Improve some qemu.conf error reporting (Cole Robinson),<br />
      util: virExec: Dispatch all errors raised after fork (Cole Robinson),<br />
      virsh: tweak help output for VSH_OT_DATA (Eric Blake),<br />
      Check for active PCI devices when doing nodedevice operations. (Chris Lalancette),<br />
      virsh: add new --details option to pool-list (Justin Clift),<br />
      Selectively ignore domainSetSecurityAllLabel failure in domain restore (Laine Stump),<br />
      use virStorageFileIsSharedFS utility function in qemudDomainSaveFlag (Laine Stump),<br />
      Enhance virStorageFileIsSharedFS (Laine Stump),<br />
      phyp: optimize use of sed (Eric Blake),<br />
      phyp: add storage management driver (Eduardo Otubo),<br />
      phyp: add rudimentary storage driver (Eduardo Otubo),<br />
      maint: add gnulib gettimeofday module (Eric Blake),<br />
      Avoid blocking all APIs during incoming migration (Daniel P. Berrange),<br />
      Set labelling for character devices in security drivers (Daniel P. Berrange),<br />
      Add API for iterating over all character devices (Daniel P. Berrange),<br />
      Adding Storage Management driver (style and indentation) (Eduardo Otubo),<br />
      esx: Add support for the controller element (Matthias Bolte),<br />
      Add optional model attribute to the controller element (Matthias Bolte),<br />
      Add wide SCSI bus disk address generation support (Matthias Bolte),<br />
      cgroup: Enable memory.use_hierarchy of cgroup for domain (Ryota Ozaki),<br />
      network: allow tftp port if tftp is defined (Alan Pevec),<br />
      Add '-nodefconfig' command line arg to QEMU (Daniel P. Berrange),<br />
      Make checks for inactive QEMU guest more robust (Daniel P. Berrange),<br />
      Improve some error messages about unsupported APIs/URIs (Daniel P. Berrange),<br />
      Index hashes by UUID instead of name (Jiri Denemark),<br />
      Allow one-or-more &lt;boot dev="..."/&gt; entries (Philipp Hahn),<br />
      virsh: add --uuid option to vol-pool (Justin Clift),<br />
      nwfilter: add XML attribute to control iptables state match (Stefan Berger),<br />
      virsh: ensure persistence and autostart are shown for dominfo and pool-info (Justin Clift),<br />
      nwfilter: use match target on incoming traffic (Stefan Berger),<br />
      macvtap: work-around for 2.6.32 and older kernels (Stefan Berger),<br />
      virsh: add pool support to vol-key command (Justin Clift),<br />
      esx: Update case insensitive .vmx tests (Matthias Bolte),<br />
      esx: Accept 'disk' as harddisk device type in .vmx files (Matthias Bolte),<br />
      virsh: mark autostart answers for translation (Justin Clift),<br />
      virsh: add start --paused support (Eric Blake),<br />
      qemu: support starting persistent domain paused (Eric Blake),<br />
      drivers: add virDomainCreateWithFlags if virDomainCreate exists (Eric Blake),<br />
      remote: protocol implementation for virDomainCreateWithFlags (Eric Blake),<br />
      uml: sanity check external data before using it (Eric Blake),<br />
      Improve error message for disabled client-side drivers (Matthias Bolte),<br />
      virsh: add snapshot backing store support to vol-create-as (Justin Clift),<br />
      esx: Add proxy query parameter (Matthias Bolte),<br />
      esx: Refactor esxUtil_ParseQuery's parameter handling (Matthias Bolte),<br />
      virsh: add new vol-pool command (Justin Clift),<br />
      virsh: add --paused option to create (Eric Blake),<br />
      qemu: allow creation of a paused domain (Eric Blake),<br />
      virDomainCreateXML: support new flag (Eric Blake),<br />
      Add multiIQN tests (David Allan),<br />
      Add multiiqn XML dump (David Allan),<br />
      Fix test breakage from virtio serial changes (Daniel P. Berrange),<br />
      Enable probing of VPC disk format type (Daniel P. Berrange),<br />
      Prefer UDEV to HAL drivers if both a compiled (Daniel P. Berrange),<br />
      Add support for setting socket MLS level in SELinux driver (Daniel J Walsh),<br />
      Fix error codes for missing storage pools (Daniel P. Berrange),<br />
      Include port number with virtio serial devices (Daniel P. Berrange),<br />
      Disable use of 'reason' field in block IO event in QEMU (Daniel P. Berrange),<br />
      Add stdin_path to qemudStartVMDaemon() args. (Jamie Strandboge),<br />
      Allocate buffer to hold xend response (Jim Fehlig),<br />
      phyp: Strict check when listing domains (Eduardo Otubo),<br />
      hostusb: Properly handle 'usbX' sysfs files (Cole Robinson),<br />
      Add --source-format argument to virsh pool-define-as and pool-create-as (Justin Clift),<br />
      Add --source-format argument to virsh pool-define-as and pool-create-as (Justin Clift),<br />
      build: fix VPATH 'make syntax-check' (Eric Blake),<br />
      qemu: Add a qemu.conf option for clearing capabilities (Cole Robinson),<br />
      macvtap: cannot support target device name (Stefan Berger),<br />
      Fix libvirt-guests init script (Jiri Denemark),<br />
      maint: new syntax-check rule to ensure that AUTHORS stays in sync (Jim Meyering),<br />
      maint: update AUTHORS with recent contributors (Eric Blake),<br />
      xen: Fix chardev listen sexpr formatting (Cole Robinson),<br />
      v2 of Cole's wlan support (David Allan),<br />
      Install, distribute and package domainsnapshot.rng (Matthias Bolte),<br />
      build: support 'make check' in pristine tree (Eric Blake),<br />
      esx: Expose host UUID in the capabilities XML (Matthias Bolte),<br />
      Pass pre-opened PCI device sysfs config file to QEMU (Alex Williamson),<br />
      xen-proxy build broken (Matthias Bolte),<br />
      esx: Add read-only storage pool access (Matthias Bolte),<br />
      libvirtd: diagnose invalid host UUID (Jim Meyering),<br />
      vepa: parsing for 802.1Qb{g|h} XML (Stefan Berger),<br />
      vepa+vsi: Introduce dependency on libnl (Stefan Berger),<br />
      Expose a host UUID in the capabilities XML (Daniel P. Berrange),<br />
      qemu: Allow using regular audio backends with VNC (Cole Robinson),<br />
      lxcSetSchedulerParameters: reverse order of tests; diagnose a failure (Jim Meyering),<br />
      libvirtd: start each diagnostic with "argv0: " (Jim Meyering),<br />
      libvirtd: mark strings for translation, including --help output (Jim Meyering),<br />
      build: force init scripts to rebuild on changed --prefix (Eric Blake),<br />
      build: Distribute the whole tests/qemuhelpdata directory (Matthias Bolte),<br />
      Add defines for QEMU_VNC_PORT_{MIN,MAX} and use them (Jim Fehlig),<br />
      Add simple bitmap operations to utils (Jim Fehlig),<br />
      daemon: Export SDL audio environment variables (Cole Robinson),<br />
      Autostart domains using virDomainObjStart (Jiri Denemark),<br />
      maint: update po/POTFILES.in (Jim Meyering),<br />
      maint: enforce policy wrt VIR_DEBUG and VIR_DEBUG0 (Jim Meyering),<br />
      maint: enforce policy wrt VIR_ERROR and VIR_ERROR0 (Jim Meyering),<br />
      maint: change empty string in err message to localized 'unknown error' (Jim Meyering),<br />
      qemu: Use ShutdownVMDaemon for all startup cleanup paths (Cole Robinson),<br />
      Domain snapshot RNG and tests. (Chris Lalancette),<br />
      Fix up the python bindings for snapshotting. (Chris Lalancette),<br />
      qemu_conf.c: also recognize new first line of qemu -help output (Jim Meyering),<br />
      lxc_controller.c: don't ignore failed "accept" (Jim Meyering),<br />
      qemu: Don't deny ShutdownVMDaemon for non-running VMs (Cole Robinson),<br />
      libvirtd: don't ignore virInitialize failure (Jim Meyering),<br />
      maint: prohibit newline at end of diagnostic (Jim Meyering),<br />
      maint: remove unwanted newline at end of diagnostic (Jim Meyering),<br />
      build: distribute missing file (Eric Blake),<br />
      esx: Make esxVI_*_CastFromAnyType dynamically dispatched (Matthias Bolte),<br />
      esx: Allow esxVI_X_DynamicCast to be called successfully on X objects (Matthias Bolte),<br />
      tests: the remote_protocol check also accommodates older pdwtags (Jim Meyering),<br />
      maint: enforce no-markup policy wrt VIR_WARN-like macros (Jim Meyering),<br />
      Add support for SSE4.1 and SSE4.2 CPU features (Jiri Denemark),<br />
      maint: add more free-like functions to the list and deal with fallout (Jim Meyering),<br />
      maint: add virCgroupFree to the list of free-like functions (Jim Meyering),<br />
      qemudDomainSetVcpus: avoid NULL-deref on failed uuid look-up (Jim Meyering),<br />
      Add CIFS to the list of network file systems (Matthias Bolte),<br />
      Add VIR_STORAGE_POOL_INACCESSIBLE to denote inaccessible storage pools (Matthias Bolte),<br />
      qemu_conf: fix flag value (Eric Blake),<br />
      qemu: Clarify a couple error messages (Cole Robinson),<br />
      virFileResolveLink: fix return value (Eric Blake),<br />
      tests: Skip daemon-conf test if dir exceeds UNIX_PATH_MAX (Cole Robinson),<br />
      pci: Give an explicit error if device not found (Cole Robinson),<br />
      qemu: Report cmdline output if VM dies early (Cole Robinson),<br />
      qemu_driver: avoid NULL dereference (Jim Meyering),<br />
      Make domain save work when dynamic_ownership=0 (Daniel P. Berrange),<br />
      Add support for NIC hotplug using netdev_add in QEMU (Daniel P. Berrange),<br />
      build: update gnulib (Eric Blake),<br />
      tests: correct PATH in new test, for when running manually (Jim Meyering),<br />
      Add env variable for debugging gnutls usage (Daniel P. Berrange),<br />
      maint: allow VPATH use of remote_protocol-structs (Eric Blake),<br />
      help avoid accidental remote_protocol.x changes (Jim Meyering),<br />
      build: use LIBADD, not LDFLAGS, for adding libraries (Eric Blake),<br />
      Implement SCSI disk unplugging (Wolfgang Mauerer),<br />
      qemu: use better types (Eric Blake),<br />
      Refactor disk unplugging (Wolfgang Mauerer),<br />
      build: simplify checks for sched.h (Eric Blake),<br />
      build: use gnulib's sys/wait.h (Eric Blake),<br />
      build: use gnulib's uname (Eric Blake),<br />
      build: rely on gnulib's pthread module (Eric Blake),<br />
      rpmbuild: add ebtables &amp; ip(6)tables dependency for rpm (Stefan Berger),<br />
      lxc: Use virDomainFindByUUID for domain lookup (Jiri Denemark),<br />
      nwfilter: skip some interfaces on filter update (Stefan Berger),<br />
      pass info where request stems from to have rules applied (Stefan Berger),<br />
      dnsmasq.c: Fix OOM error reporting (Matthias Bolte),<br />
      autobuild.sh: provide default prefix (Eric Blake)
      </li><li> Cleanups:<br />
      lxc: Change VIR_ERROR to VIR_DEBUG for just a debugging message (Ryota Ozaki),<br />
      phyp: reduce scope of driver functions (Eric Blake),<br />
      Fix test case failure due to missing -nodefconfig (Daniel P. Berrange),<br />
      esx: Use bool instead of int where appropriated (Matthias Bolte),<br />
      Cleanup some LIBADD and CFLAGS (Matthias Bolte),<br />
      virsh: remove a doubled up include for errno.h (Justin Clift),<br />
      Misc cleanups (Jiri Denemark),<br />
      Remove unnecessary check for non-NULL uuid (Jiri Denemark),<br />
      qemu: reduce file padding requirements (Eric Blake),<br />
      virsh: change printf() calls to vshPrint() (Justin Clift),<br />
      phyp: sed cleanups (Eric Blake),<br />
      maint: simplify some ignore files (Eric Blake),<br />
      avoid syntax-check failure (Jim Meyering),<br />
      autobuild.sh: avoid bashism (Eric Blake),<br />
      bitmap: reject zero-size bitmap (Eric Blake),<br />
      build: depend on correct file (Eric Blake),<br />
      build: make cpp indentation conform (Jim Meyering),<br />
      hooks: fix typo (Paolo Smiraglia),<br />
      build: silence cppi warning, clarify vbox headers (Eric Blake),<br />
      xen: Remove unused function (Cole Robinson),<br />
      esx: Simplify goto usage (Matthias Bolte),<br />
      Use printf instead of echo -e in libvirt.spec.in (Matthias Bolte),<br />
      build: fix HTML errors in nwfilter docs (Eric Blake),<br />
      build: fix compilation without macvtap (Eric Blake),<br />
      tests: avoid new failure of the daemon-conf test (Jim Meyering),<br />
      storage: mpath: Fix incorrect VIR_ERROR use (Cole Robinson),<br />
      Allow nwfilter functions to be compiled with C++ (Chris Lalancette),<br />
      storage: Combine some duplicate code (Cole Robinson),<br />
      storage: mpath: Clean up some error handling (Cole Robinson),<br />
      Remove dead code after refactoring qemudDomainStart (Jiri Denemark),<br />
      build: fix cppi warnings (Eric Blake),<br />
      Remove isValidIfname. (Chris Lalancette),<br />
      Refactor qemudDomainStart (Jiri Denemark),<br />
      Factor out def assignment to existing domain from virDomainAssignDef (Jiri Denemark),<br />
      Refactor qemudDomainRestore (Jiri Denemark),<br />
      maint: don't mark VIR_DEBUG or VIR_DEBUG0 diagnostics for translation (Jim Meyering),<br />
      maint: more of same, but manual: convert VIR_ERROR("%s" to VIR_ERROR0( (Jim Meyering),<br />
      maint: VIR_ERROR/VIR_ERROR0: mark up the remaining ones manually (Jim Meyering),<br />
      maint: mark translatable string args of VIR_ERROR (Jim Meyering),<br />
      maint: mark translatable string args of VIR_ERROR0 (Jim Meyering),<br />
      maint: use VIR_ERROR0 rather than VIR_ERROR with a bare "%s" (Jim Meyering),<br />
      qemu: Remove explicit VNC XML cleanup (Cole Robinson),<br />
      Rename qemuBuildCommandLine tapfds -&gt; vmfds. (Alex Williamson),<br />
      initialize "meta" in virStorageFileGetMetadata, not in each caller (Jim Meyering),<br />
      (qemu*DiskCgroup): avoid dead code (Jim Meyering),<br />
      maint: more VIR_WARN corrections: now manually (Jim Meyering),<br />
      maint: use VIR_WARN0("...") rather than VIR_WARN("%s", "...") (Jim Meyering),<br />
      maint: remove _(...) from VIR_WARN arg manually (Jim Meyering),<br />
      maint: don't mark VIR_WARN or VIR_WARN0 diagnostics for translation (Jim Meyering),<br />
      do not ignore qemuMonitorAddDrive failure; make uses identical (Jim Meyering),<br />
      ebtablesAddRemoveRule, iptablesAddRemoveRule: don't skip va_end (Jim Meyering),<br />
      linuxNodeInfoCPUPopulate: avoid used-uninitialized via a test (Jim Meyering),<br />
      lxcFreezeContainer: avoid test-after-deref of never-NULL pointer (Jim Meyering),<br />
      Remove debugging fprintf() calls (Daniel P. Berrange),<br />
      tests: use GPLv2+, not GPLv3 (Jim Meyering),<br />
      tests: adjust copyrights on scripts: s/FSF/Red Hat/ (Jim Meyering),<br />
      virsh: fix a typo in a diagnostic (Jim Meyering),<br />
      delMacvtap: typo fix (Eric Blake),<br />
      docs/Makefile.am: remove unnecessary subshells (Eric Blake),<br />
      maint: avoid spurious output if program not present (Eric Blake),<br />
      storage_encryption: silence clang warning (Eric Blake),<br />
      maint: whitespace cleanups (Eric Blake),<br />
      qemu: Fix warning about a non-literal format string (Matthias Bolte),<br />
      build: drop more redundant configure checks (Eric Blake),<br />
      build: silence a clang false positive (Eric Blake)
      </li><li>
      </li></ul>
        <h3>0.8.1: Apr 30 2010</h3>
        <ul><li> Features:<br />
      Add virDomainGetBlockInfo API to query disk sizing (Daniel P. Berrange),<br />
      Starts dnsmasq from libvirtd with --dhcp-hostsfile option (Satoru SATOH)
      </li><li> Documentation:<br />
      cleanup the download section of the documentation (Daniel Veillard),<br />
      Fix messsage as message. (Chris Lalancette),<br />
      Fix up a debug typo. (Chris Lalancette),<br />
      add nwfilter functions to virsh man page (Stefan Berger)
      </li><li> Portability:<br />
      Fix build on Ubuntu. (Chris Lalancette),<br />
      cygwin/mingw: Fix version script handling (Matthias Bolte),<br />
      build: fix autogen rule for VPATH build (Eric Blake),<br />
      Fix build with DEBUG_RAW_IO=1 (Jiri Denemark),<br />
      Don't try to build qemu and lxc on non-Linux platforms (Daniel Veillard),<br />
      cygwin: Handle differences in the XDR implementation (Matthias Bolte),<br />
      Cygwin's GCC doesn't like this .sa_handler initialization for some reason (Matthias Bolte),<br />
      linux/if.h header is not available on non-Linux platforms (Matthias Bolte),<br />
      cygwin: Check explicitly for getmntent_r (Matthias Bolte),<br />
      Disable stateful OpenNebula driver if libvirtd is disabled (Matthias Bolte),<br />
      build: don't include winsock2.h on cygwin (Eric Blake),<br />
      portability fixes to tools/virt-pki-validate.in (Dustin Kirkland),<br />
      virt-aa-helper-test: avoid non-portable echo -n (Eric Blake),<br />
      schematestutils.sh: improve shell portability: avoid "echo -e" (Jim Meyering),<br />
      Fix build of openvz on RHEL-5. (Chris Lalancette),<br />
      Fix spec file for builds without lxc (Daniel Berteaud)
      </li><li> Bug Fixes:<br />
      domain: Fix PCI address decimal parsing regression (Cole Robinson),<br />
      Fix virt-pki-validate's determination of CN (Dustin Kirkland),<br />
      Fix detection of disk in IO events (Daniel P. Berrange),<br />
      Fix a virsh edit memory leak (Chris Lalancette),<br />
      Fix a qemuDomainPCIAddressSetFree memory leak (Chris Lalancette),<br />
      Fix a memory leak in the node_device_udev code (Chris Lalancette),<br />
      qemuDomainSnapshotCreateXML: avoid NULL dereferences (Jim Meyering),<br />
      qemudDomainCreate: correct a slightly misdirected goto (Jim Meyering),<br />
      Fix handling of security driver restore failures in QEMU domain save (Daniel P. Berrange),<br />
      Fix QEMU domain save to block devices with cgroups enabled (Daniel P. Berrange),<br />
      Fix QEMU save/restore with block devices (Daniel P. Berrange),<br />
      Fix crash when cleaning up from failed save attempt (Daniel P. Berrange),<br />
      The base used for conversion of USB values should be 16 not 10. (Klaus Ethgen),<br />
      Fix up the locking in the snapshot code. (Chris Lalancette),<br />
      Ignore qemu STOP event when stopping CPUs (Jiri Denemark),<br />
      Fix memory leak in virsh snapshot-list. (Chris Lalancette),<br />
      Fix virDomainSnapshotObjFree memory leak. (Chris Lalancette),<br />
      Fix a memory leak in the snapshot code in libvirtd. (Chris Lalancette),<br />
      QEmu JSON drop timestamp from command object (Luiz Capitulino),<br />
      Fix crash in nwfilter driver check (Daniel P. Berrange),<br />
      qemu: fix security context references in DAC code (Spencer Shimko),<br />
      Properly indent encryption tags (David Allan),<br />
      Fix locking in qemudDomainCoreDump (Jiri Denemark),<br />
      Poll for migration end every 50ms instead of 50us (Jiri Denemark),<br />
      configure.ac SELinux fixes (Spencer Shimko),<br />
      Fix QEMU text monitor command error checking (Daniel P. Berrange),<br />
      Fix CPU hotplug command names (Daniel P. Berrange),<br />
      Fix printing of event detail in python events demo program (Daniel P. Berrange),<br />
      Fix initial VCPU pinning in qemu driver (Jiri Denemark),<br />
      Make avahi startup more robust. (Chris Lalancette),<br />
      esx: Don't treat an empty root snapshot list as error (Chris Wong),<br />
      esx: Fix FindByIp response handling (Matthias Bolte),<br />
      esx: Fix virtualHW.version generation (Matthias Bolte),<br />
      Fix device_del in JSON mode for QEMU (Daniel P. Berrange),<br />
      nwfilter: Free nwfilter hash of virConnectPtr (Matthias Bolte),<br />
      remote: react to failures on wakeupFD (Eric Blake),<br />
      Fix CDROM media change for QEMU when using -device syntax (Daniel P. Berrange),<br />
      Fix QEMU memory stats JSON mode (Daniel P. Berrange),<br />
      Trivial fix: Add braces to for statement to avoid crashes (Stefan Berger),<br />
      qemudDomainAttachSCSIDisk: avoid FP NULL-ptr-deref from clang (Jim Meyering),<br />
      qemudDomainAttachSCSIDisk: avoid FP NULL-ptr-deref from clang (Jim Meyering),<br />
      virGetHostnameLocalhost: avoid FP NULL-ptr-deref from clang (Jim Meyering),<br />
      nwfilter_ebiptables_driver.c: avoid NULL dereference (Jim Meyering),<br />
      esxVMX_GatherSCSIControllers: avoid NULL dereference (Jim Meyering),<br />
      Fix nodeinfotest on NUMA machines (Daniel P. Berrange)
      </li><li> Improvements:<br />
      Add support for another explicit IO error event (Daniel P. Berrange),<br />
      Report all errors in SELinuxRestoreSecurityFileLabel (Jiri Denemark),<br />
      Prevent updates while IP address learn thread is running (Stefan Berger),<br />
      Syncronize the teardown of rules with the thread (Stefan Berger),<br />
      Clean all tables before applying 'basic' rules (Stefan Berger),<br />
      Make virFileHasSuffix case insensitive (Paul Dorman),<br />
      nwfilter: Also pick IP address from a DHCP ACK message (Stefan Berger),<br />
      Implement python binding for virDomainGetBlockInfo (Daniel P. Berrange),<br />
      Add new domblkinfo command to virsh (Daniel P. Berrange),<br />
      Implement virDomainGetBlockInfo in QEMU driver (Daniel P. Berrange),<br />
      Remote protocol impl for virDomainGetBlockInfo (Daniel P. Berrange),<br />
      Internal driver API infrastructure for virDomainGetBlockInfo (Daniel P. Berrange),<br />
      Report better error if qemuSnapshotIsAllowed failed. (Chris Lalancette),<br />
      nwfilter: python bindings for nwfilter (Stefan Berger),<br />
      Move dnsmasq host file to a separate directory (Daniel Veillard),<br />
      nwfilter: allow to mix filterrefs and rules in the schema (Stefan Berger),<br />
      Avoid create/unlink with block devs used for QEMU save (Daniel P. Berrange),<br />
      nwfilter: let qemu's after-migration packet pass (Stefan Berger),<br />
      Fix up the error message if we can't parse the snapshot XML. (Chris Lalancette),<br />
      nwfilter: add support for RAPR protocol (Stefan Berger),<br />
      nwfilter: enable hex number inputs in filter XML (Stefan Berger),<br />
      Add build support for dnsmasq module (Satoru SATOH),<br />
      Add dnsmasq module files (Satoru SATOH),<br />
      Fix make dist missing ESX generated files (Daniel Veillard),<br />
      Fix printing of pathnames on error in qemuDomainSnapshotLoad. (Chris Lalancette),<br />
      Improve configure error message about missing Linux headers (Matthias Bolte),<br />
      nwfilter: extend schema + add testcase w/ connlimit-above (Stefan Berger),<br />
      addrToString: give better error message (Eric Blake),<br />
      Fake host CPU for qemu tests (Jiri Denemark),<br />
      Use configured CPU model if possible (Jiri Denemark),<br />
      Support removing features when converting data to CPU (Jiri Denemark),<br />
      Move MIN macro to util.h so that others can use it (Jiri Denemark),<br />
      Deal with CPU models in [] (Jiri Denemark),<br />
      Ignore empty type attribute in driver element of virtual disks (Guido Günther),<br />
      esx: Gather some XML generation macros in esx_vi.h (Matthias Bolte),<br />
      nwfilter: add support for connlimit match (Stefan Berger),<br />
      Extend fwall-drv interface and call functions via interface (Stefan Berger),<br />
      esx: Add support for the VMXNET 2 (Enhanced) NIC model (Matthias Bolte),<br />
      Install nwfilter xml files from source directory. (Philipp Hahn),<br />
      Fixup python binding for virDomainSnapshot APIs (Daniel P. Berrange),<br />
      Fix network hotplug to use device_add in QEMU (Daniel P. Berrange),<br />
      Fix error reporting for getfd + host_net_add in QEMU (Daniel P. Berrange),<br />
      Replace printf with logging macros (Matthias Bolte),<br />
      Mark internal.h for translation (Jiri Denemark),<br />
      Use virCheckFlags for APIs added in 0.8.0 (Jiri Denemark),<br />
      Introduce virCheckFlags for consistent flags checking (Jiri Denemark),<br />
      nwfilter: Clear all state tracking from a drop rule (Stefan Berger),<br />
      Update to latest gnulib to get strtok_r relaxed to LGPLv2+ (Matthias Bolte),<br />
      esx: Add nwfilter driver stub (Matthias Bolte),<br />
      util: ensure safe{read,write,zero} return is checked (Eric Blake),<br />
      Update QEMU device_add command in JSON mode (Daniel P. Berrange),<br />
      Rename parameter in qemuMonitorDeviceDel (Daniel P. Berrange),<br />
      Run test suite as part of RPM build process (Daniel P. Berrange),<br />
      Fix QEMU command building errors to reflect unsupported configuration (Daniel P. Berrange),<br />
      nwfilter: fix tear down order and consolidate functions (Stefan Berger),<br />
      Fix close_used_without_including_unistd_h error (Matthias Bolte),<br />
      Implement variable length structure allocator (David Allan),<br />
      build: set STATIC_ANALYSIS when running via clang or coverity (Jim Meyering),<br />
      sa_assert: assert-like macro, enabled only for use with static analyzers (Jim Meyering),<br />
      Implement forgotten backend of virInterfaceIsActive() (Laine Stump),<br />
      nwfilter: use virFindFileInPath for needed CLI tools (Stefan Berger),<br />
      esx: Extend esx_vi_generator.py to cover methods too (Matthias Bolte),<br />
      Consolidate interface related functions in interface.c (Stefan Berger),<br />
      build: include usleep gnulib module (Eric Blake)
      </li><li> Cleanups:<br />
      qemudDomainSaveFlag: remove dead store (Jim Meyering),<br />
      Remove unused goto label from qemudDomainCreate (Daniel P. Berrange),<br />
      Fix indentation for storage conf XML (David Allan),<br />
      Make virDomainSnapshotObjListDeinit static. (Chris Lalancette),<br />
      Some NWFilter symbols are conditional and have to be exported conditional (Matthias Bolte),<br />
      xen: Fix inside_daemon being unused when libvirtd is disabled (Matthias Bolte),<br />
      maint: update AUTHORS (Marco Bozzolan),<br />
      maint: update AUTHORS with recent contributors (Eric Blake),<br />
      maint: enforce whitespace on shell scripts (Eric Blake),<br />
      testutilsqemu: avoid uninitialized variable (Eric Blake),<br />
      maint: ignore 'make syntax-check' failure files (Eric Blake),<br />
      build: fix preprocessor indentation (Eric Blake),<br />
      build: avoid compiler warning (Eric Blake),<br />
      Explicitly set virStoragePoolTypeInfo FS and NETFS defaults (Matthias Bolte),<br />
      Mark in_open parameter of remoteAuthenticate as unused when it's unused (Matthias Bolte),<br />
      Don't ship generated python/libvirt.? files. (Philipp Hahn),<br />
      esx: Replace scanf with STRSKIP and strtok_r (Matthias Bolte),<br />
      maint: another preprocessor fix (Eric Blake),<br />
      Remove code from JSON monitor for commands that won't be ported (Daniel P. Berrange),<br />
      Fix apibuild.py warnings about missing ':' (Matthias Bolte),<br />
      xend_internal.c: assure clang that we do not dereference NULL (Jim Meyering),<br />
      build: fix recent 'make syntax-check' failure (Eric Blake),<br />
      virStorageBackendFileSystemMount: prefer strdup over virAsprintf (Jim Meyering),<br />
      virStorageBackendFileSystemMount: placate clang (Jim Meyering),<br />
      openvzGetProcessInfo: address clang-detected low-probability flaw (Jim Meyering),<br />
      vshCommandRun: avoid used-uninitialized timing-related report from clang (Jim Meyering),<br />
      Fix up formatting of remote protocol stuff. (Chris Lalancette),<br />
      Remove some debugging leftovers. (Chris Lalancette),<br />
      build: fix syntax-check problems (Eric Blake)
      </li></ul>
        <h3>0.8.0: Apr 12 2010</h3>
        <ul><li>Features:<br />
      esx: Add domain snapshot support (Matthias Bolte),<br />
      Snapshot API framework. (Chris Lalancette),<br />
      Add managed save API entry points (Daniel Veillard),<br />
      Implement XML parser/formatter for "timer" subelement of domain clock (Laine Stump),<br />
      Add hook utilities (Daniel Veillard),<br />
      cpuUpdate() for updating guest CPU according to host CPU (Jiri Denemark),<br />
      Network filtering API (Stefan Berger),<br />
      Introduce a new virDomainUpdateDeviceFlags public API (Daniel P. Berrange),<br />
      Introduce a new public API for domain events (Daniel P. Berrange),<br />
      Public virDomainMigrateSetMaxDowntime API (Jiri Denemark),<br />
      Add public API for volume wiping (David Allan),<br />
      xenapi: Initial commit of the new driver (Sharadha Prabhakar)
      </li><li>Documentation:<br />
      Add documentation for synchronous hooks (Daniel Veillard),<br />
      Small fixes to virsh man page (Luiz Capitulino),<br />
      Avoid using multicast addresses for Ethernet MAC examples (redshift),<br />
      Fix unterminated B&lt;...&gt; in virsh man page (Jiri Denemark),<br />
      Document all options of virsh dumpxml (Jiri Denemark),<br />
      virsh: improve documentation (Eric Blake),<br />
      Document snapshot virsh commands in the man page. (Chris Lalancette),<br />
      Website documentation for the snapshot XML. (Chris Lalancette),<br />
      website: Add archive link for libvirt-users list (Matthias Bolte),<br />
      virsh: improve man page (Eric Blake),<br />
      Mention direct device support since 0.7.7 in docs (Stefan Berger),<br />
      esx: Improve documentation about remote URIs (Matthias Bolte),<br />
      doc: fix typos in hacking.html.in; mark HACKING as read-only (Jim Meyering),<br />
      doc: fix more typos in HACKING (Jim Meyering),<br />
      hacking: add a section on preprocessor conventions (Eric Blake),<br />
      hacking: fix typos (Eric Blake),<br />
      Update hacking.html.in (David Allan)
      </li><li>Portability:<br />
      Fix Win32 portability problems (Daniel P. Berrange),<br />
      This patch fixes some compilation issues for the RHEL5 build (Stefan Berger),<br />
      util: Add stubs for some functions on Windows (Matthias Bolte),<br />
      Add HAVE_PTHREAD_H guard for pthread_sigmask (Matthias Bolte),<br />
      bootstrap: Enable copy-mode for MinGW builds (Matthias Bolte),<br />
      util: Handle lack of (f)chmod and (f)chown on Windows (Matthias Bolte),<br />
      bootstrap: Remove rsync from buildreq list (Matthias Bolte),<br />
      Make sure virtTestCaptureProgramOutput has a body on Windows (Matthias Bolte),<br />
      Fix export of virConnectAuthPtrDefault for MinGW builds (Matthias Bolte),<br />
      Make sure uid_t and gid_t are available (Matthias Bolte)
      </li><li>Bug Fixes:<br />
      nwfilter: Fix memory leak on daemon init and shutdown (Stefan Berger),<br />
      More event callback fixes (Daniel P. Berrange),<br />
      Fix error in nwfilter test driver (Stefan Berger),<br />
      qemu: catch cdrom change error (Ryan Harper),<br />
      nwfilter: fix for directionality of ICMP traffic (Stefan Berger),<br />
      Fix CPU comparison for x86 arch (Jiri Denemark),<br />
      Don't ignore guest CPU selection when unsupported by HV (Jiri Denemark),<br />
      domain_event.c: don't deref NULL on an OOM error path (Jim Meyering),<br />
      nwfiler: fix due to non-symmetric src mac address match in iptables (Stefan Berger),<br />
      qemu_driver.c: don't close an arbitrary file descriptor (Jim Meyering),<br />
      Add VIR_DOMAIN_XML_INACTIVE flag when parsing domain XML (Jamie Strandboge),<br />
      virt-aa-helper should not fail if profile was removed (Jamie Strandboge),<br />
      Do nor clear caps when invoking virt-aa-helper (Jamie Strandboge),<br />
      virterror.c: avoid erroneous case "fall-through" (Jim Meyering),<br />
      Increase the number of available VNC ports. (Chris Lalancette),<br />
      Only assign newDef when we have a new def. (Chris Lalancette),<br />
      nwfilter: Fix random index in virNWFilterRuleDefDetailsFormat (Matthias Bolte),<br />
      xenapi: Fix uninitialized variable warning (Matthias Bolte),<br />
      Add a missing break statement to nwfilter errors. (Chris Lalancette),<br />
      VBox: Fix use of uninitialized value (Jiri Denemark),<br />
      Allow domain disk images on root-squash NFS to coexist with security driver. (Laine Stump),<br />
      Don't use virFileReadLimFD in qemuDomainRestore. (Chris Lalancette),<br />
      nwfilter's XML parser bug fixes (Stefan Berger),<br />
      ESX test case needs '/' in interface name (Stefan Berger),<br />
      Fix linker errors in proxy (Matthias Bolte),<br />
      virConnectGetLibVersion: Avoid error message on success. (Paolo Smiraglia),<br />
      Fix daemon hook script initialization (Daniel Veillard),<br />
      Fix QEMU cpu affinity at startup to include all threads (Daniel P. Berrange),<br />
      Fix "make check" run requesting authentication (Stefan Berger),<br />
      Don't replace persistent domain config with migrated config (Jiri Denemark),<br />
      Fix build break (David Allan),<br />
      esx: Make the conf parser compare names case insensitive in VMX mode (Matthias Bolte),<br />
      vbox: Fix segfault on empty device source (Matthias Bolte),<br />
      python example: poll(-0.001) does not sleep forever (Philipp Hahn),<br />
      Fix error reporting when parsing CPU XML strings (Jiri Denemark),<br />
      virDiskNameToIndex: ignore trailing digits (Jim Meyering),<br />
      esx: Fix potential memory leak in esxVI_BuildFullTraversalSpecItem (Matthias Bolte),<br />
      Avoid libvirtd crash when cgroups is not configured on host (Jim Fehlig),<br />
      security: selinux: Fix crash when releasing non-existent label (Cole Robinson),<br />
      Don't crash without a security driver (Guido Günther),<br />
      qemu: Fix FD leak in qemudStartVMDaemon (Matthias Bolte),<br />
      util: ensure virMutexInit is not recursive (Eric Blake),<br />
      Fix logroate rpm build breakage (Daniel Veillard),<br />
      Fix LSB compliance of init script (Daniel Veillard),<br />
      python: Fix networkLookupByUUID (Philip Hahn),<br />
      Fix make dist with XenAPI changes (Cole Robinson),<br />
      xenapi: Don't leak url and caps in case of error (Matthias Bolte),<br />
      xenapi: Check for NULL before accessing the scheme (Matthias Bolte),<br />
      xenapi: Request a username if there is non in the URI (Matthias Bolte),<br />
      xenapi: Check for valid private data in xenapiSessionErrorHandle (Matthias Bolte),<br />
      Use fsync() at the end of file allocation instead of O_DSYNC (Jiri Denemark),<br />
      security: Set permissions for kernel/initrd (Cole Robinson),<br />
      qemu: Fix USB by product with security enabled (Cole Robinson),<br />
      Make nodeGetInfo report the correct number of NUMA nodes. (Chris Lalancette),<br />
      Fix crash in virsh after bogus command (Chris Lalancette),<br />
      Fix virsh command 'cd' (Chris Lalancette),<br />
      Fix hang in qemudDomainCoreDump. (Chris Lalancette),<br />
      Make sure qemudDomainSetVcpus doesn't hang. (Chris Lalancette),<br />
      Fix a JSON CPU information bug. (Chris Lalancette),<br />
      Free resources on error in udev startup (David Allan),<br />
      Fix up nodeinfo parsing code. (Chris Lalancette),<br />
      Wipe nodeinfo structure before filling it (Jiri Denemark),<br />
      macvtap build detection fix (Stefan Berger),<br />
      Fix virDomainGetXMLDesc cache settings output (Soren Hansen),<br />
      Fix locking in qemudDomainMemoryStats (Adam Litke),<br />
      qemu restore: don't let corrupt input provoke unwarranted OOM (Jim Meyering),<br />
      virFileReadLimFD: diagnose maxlen &lt;= 0, rather than passing it on... (Jim Meyering),<br />
      xen: don't let bogus packets trigger over-allocation and segfault (Jim Meyering)
      </li><li>Improvements:<br />
      Rename virsh "revert-to-snapshot" to "snapshot-revert" (Chris Lalancette),<br />
      nwfilter: Process DHCP option to determine whether packet is a DHCP_OFFER (Stefan Berger),<br />
      Add enospace option to qemu disk error policy (David Allan),<br />
      nwfilter: More XML parser test cases (Stefan Berger),<br />
      remote: Replace some virRaiseError with remoteError (Matthias Bolte),<br />
      Generate libvirt.def from libvirt.syms (Matthias Bolte),<br />
      Fix up python bindings for new event callbacks (Daniel P. Berrange),<br />
      esx: Allow 'lsisas1068' as SCSI controller type (Matthias Bolte),<br />
      esx: Report an error for invalid arguments in esxList(Defined)Domains (Matthias Bolte),<br />
      nwfilter: Support for learning a VM's IP address (Stefan Berger),<br />
      Properly advertise cpuselection guest capability (Jiri Denemark),<br />
      Update of the apparmor regression tests (Jamie Strandboge),<br />
      Improve the apparmor example (Jamie Strandboge),<br />
      Improve virt-aa-helper to handle SDL graphics and cleanups (Jamie Strandboge),<br />
      Adjust virt-aa-helper to handle pci devices (Jamie Strandboge),<br />
      Add backingstore support to apparmor (Jamie Strandboge),<br />
      build: avoid autogen on 'make clean' (Eric Blake),<br />
      Add filter schema for nwfilter XML, extend domain XML schema (Stefan Berger),<br />
      Add filter schema for nwfilter XML, extend domain XML schema (Stefan Berger),<br />
      nwfilter: Fix instantiated layer 2 rules for 'inout' direction (Stefan Berger),<br />
      Better error reporting in virsh. (Chris Lalancette),<br />
      Snapshot virsh implementation. (Chris Lalancette),<br />
      Snapshots for VBox (Jiri Denemark),<br />
      Snapshot QEMU driver. (Chris Lalancette),<br />
      Snapshot internal methods. (Chris Lalancette),<br />
      xenapi: Add managedsave entries to the driver struct (Matthias Bolte),<br />
      Add a managedsave command to virsh (Daniel Veillard),<br />
      Implement managed save operations for qemu driver (Daniel Veillard),<br />
      Implement remote protocol for managed save (Daniel Veillard),<br />
      build: improve check for out-of-date .gnulib submodule (Eric Blake),<br />
      optimizes the validation of the name of an interface (Stefan Berger),<br />
      adds a couple of test cases for the XML parsing test suite (Stefan Berger),<br />
      build: import latest gnulib (Eric Blake),<br />
      Changes to clock timer XML to match final design. (Laine Stump),<br />
      Keep build quiet for generated file (Daniel P. Berrange),<br />
      Keep track of guest paused state after disk IO / watchdog events (Daniel P. Berrange),<br />
      virsh: add 'exit' as an alias for 'quit' (Eric Blake),<br />
      maint: mark xenapiSessionErrorHandler messages for translation (Jim Meyering),<br />
      Blank out invalid interface names with escaped letters etc. (Stefan Berger),<br />
      esx: Generate most SOAP mapping and improve inheritance handling (Matthias Bolte),<br />
      Distribute nwfilter xml files and add them to rpm (Daniel Veillard),<br />
      Make sure nwfilter headers are part of distribution (Daniel Veillard),<br />
      maint: show which compiler warning triggered (Eric Blake),<br />
      build: automate the rerun of autogen.sh (Eric Blake),<br />
      makes the entries in the int-2-string maps more readable (Stefan Berger),<br />
      Add ip6tables support for IPv6 filtering (Stefan Berger),<br />
      Add support for so-far missing protocols for iptables filtering (Stefan Berger),<br />
      Implement the qemu-kvm backend of clock timer elements (Laine Stump),<br />
      Add flags to indicate presence of timekeeping-related qemu options (Laine Stump),<br />
      Add timer element to domain schema (Laine Stump),<br />
      virsh: support VISUAL, and allow metacharacters in EDITOR (Eric Blake),<br />
      Add dummy nwfilter driver to test driver (Stefan Berger),<br />
      Add script hook support to the LXC driver (Daniel Veillard),<br />
      Add script hook support to the QEmu driver (Daniel Veillard),<br />
      Add the script hook support to the libvirt daemon (Daniel Veillard),<br />
      Add an error module and message for the hooks subsystem (Daniel Veillard),<br />
      Export virPipeReadUntilEOF internally (Daniel Veillard),<br />
      Introduce UPDATE_CPU flag for virDomainGetXMLDesc (Jiri Denemark),<br />
      Helper function for making a copy of virCPUDefPtr (Jiri Denemark),<br />
      filter new files through cppi, so syntax-check passes once again (Jim Meyering),<br />
      Add disk error policy to domain XML (David Allan),<br />
      build: don't lose prior configure args on autogen.sh (Eric Blake),<br />
      build: update gnulib (Eric Blake),<br />
      Add some examples filters (Stefan Berger),<br />
      Extensions for iptables rules (Stefan Berger),<br />
      Add IPv6 support for the ebtables layer (Stefan Berger),<br />
      Add qemu support (Stefan Berger),<br />
      Core driver implementation with ebtables support (Stefan Berger),<br />
      Add XML parser extensions for network filtering (Stefan Berger),<br />
      Add virsh support for new CLI commands (Stefan Berger),<br />
      Definition of the wire format, RPC client &amp; server (Stefan Berger),<br />
      Add Network filtering internal API (Stefan Berger),<br />
      Add Network filtering public API (Stefan Berger),<br />
      Add recursive locks (Stefan Berger),<br />
      Implement VNC password change in QEMU (Daniel P. Berrange),<br />
      Allow parsing &lt;graphics&gt; in device XML (Daniel P. Berrange),<br />
      Introduce a update-device command in virsh (Daniel P. Berrange),<br />
      Implement virDomainUpdateDeviceFlags API in all drivers with media change (Daniel P. Berrange),<br />
      Remote protocol impl for virDomainUpdateDeviceFlags (Daniel P. Berrange),<br />
      Add domain events for graphics network clients (Daniel P. Berrange),<br />
      Add support for an explicit IO error event (Daniel P. Berrange),<br />
      Add support for an explicit watchdog event (Daniel P. Berrange),<br />
      Add support for an explicit  RTC change event (Daniel P. Berrange),<br />
      Add support for an explicit guest reboot event (Daniel P. Berrange),<br />
      Rename domain lifecycle event message (Daniel P. Berrange),<br />
      Convert domain events example to new API (Daniel P. Berrange),<br />
      Remote driver &amp; daemon impl of new event API (Daniel P. Berrange),<br />
      Support new event register/deregister APis in all drivers except remote (Daniel P. Berrange),<br />
      Add new internal domain events APIs for handling other event types (Daniel P. Berrange),<br />
      Refactor domain events to handle multiple event types (Daniel P. Berrange),<br />
      Make internal domain events struct definitions private (Daniel P. Berrange),<br />
      tests: teach syntax-check that virDomainDefFree has free-like semantics (Jim Meyering),<br />
      Add entry point logging for cpu functions (Jiri Denemark),<br />
      build: suppress distracting build output (Jim Meyering),<br />
      maint: add syntax-check rule to prohibit use of test's -a operator (Jim Meyering),<br />
      tests: shell script portability and clean-up (Jim Meyering),<br />
      tests: Don't add extra padding if counter mod 40 is 0 (Matthias Bolte),<br />
      Use common XML parsing functions (Jiri Denemark),<br />
      Introduce XML parsing utility functions (Jiri Denemark),<br />
      virDomainDiskDefAssignAddress: return int, not void (Jim Meyering),<br />
      tests: do not use the ":disk" suffix in sample xml input (Jim Meyering),<br />
      util: Make some conditional symbols unconditional (Matthias Bolte),<br />
      Export conditional state driver symbols only when they are defined (Matthias Bolte),<br />
      esx: Add esxVI_LookupVirtualMachineByName (Matthias Bolte),<br />
      esx: Generate method mappings via macros (Matthias Bolte),<br />
      Add migrate-setmaxdowntime command to virsh (Jiri Denemark),<br />
      Implement virDomainMigrateSetMaxDowntime in qemu driver (Jiri Denemark),<br />
      Implement virDomainMigrateSetMaxDowntime in remote driver (Jiri Denemark),<br />
      Wire protocol and dispatcher for virDomainMigrateSetMaxDowntime (Jiri Denemark),<br />
      Internal driver API for virDomainMigrateSetMaxDowntime (Jiri Denemark),<br />
      Virsh support for vol wiping (David Allan),<br />
      Simplified version of volume wiping based on feedback from the list. (David Allan),<br />
      Implement remote bits for vol wiping (David Allan),<br />
      Implement the public API for vol wiping (David Allan),<br />
      Define the internal driver API for vol wiping (David Allan),<br />
      Support vhost-net mode at qemu startup for virtio network devices (Laine Stump),<br />
      maint: enforce recent N_ usage (Eric Blake),<br />
      Allow suspend during live migration (Jiri Denemark),<br />
      do not require two ./autogen.sh runs to permit "make" (Jim Meyering),<br />
      esx: Move username and password helper functions to authhelper.c (Matthias Bolte),<br />
      Use WARN_CFLAGS when compiling virsh.c (Jiri Denemark),<br />
      qemu: Add some debugging at domain startup (Cole Robinson),<br />
      qemu: pass the information when disks are read-only (Daniel Veillard),<br />
      macvtap: Only export symbols if support is enabled (Matthias Bolte),<br />
      Only use the numa functions when they are available. (Chris Lalancette),<br />
      Allow devices without a parent (Ed Swierk),<br />
      build: change to gnulib module list should rerun bootstrap (Eric Blake),<br />
      build: enforce preprocessor indentation (Eric Blake),<br />
      build: update gnulib submodule to newer (but not latest) (Jim Meyering),<br />
      Make virsh reconnect when losing connection (Daniel Veillard),<br />
      Change logrotate to be per-hypervisor logs (Daniel Veillard),<br />
      build: consistently indent preprocessor directives (Eric Blake),<br />
      virsh: use N_ rather than gettext_noop (Eric Blake),<br />
      virsh: fix existing N_ uses (Eric Blake),<br />
      Get thread and socket information in virsh nodeinfo. (Chris Lalancette),<br />
      Eliminate large stack buffer in doTunnelSendAll (Laine Stump),<br />
      build: consistently use C99 varargs macros (Eric Blake)
      </li><li>Cleanups:<br />
      Fix some cppi prepocessor indentation issues (Daniel Veillard),<br />
      Cleanup the msg_gen_function list in cfg.mk (Matthias Bolte),<br />
      remote: Remove virConnectPtr from error/errorf (Matthias Bolte),<br />
      Remove undefined symbols from symbols file (Matthias Bolte),<br />
      Add missing nwfilter_learnipaddr.c to POTFILES.in (Daniel P. Berrange),<br />
      Avoid searching for windres when not building for Windows (Diego Elio Pettenò),<br />
      Executable does not belong into repository. (Stefan Berger),<br />
      xenXMDomainDefineXML: remove dead store and useless/leaky virGetDomain (Jim Meyering),<br />
      createRawFileOpHook: avoid dead stores (Jim Meyering),<br />
      qemudDomainGetSecurityLabel: avoid dead store to "type" (Jim Meyering),<br />
      Cleanup x86Compute() (Jiri Denemark),<br />
      qemuDomainSnapshotLoad: avoid dead store (Jim Meyering),<br />
      maint: s/initialis/initializ/ (Eric Blake),<br />
      Fix 'avialable' typo (Matthias Bolte),<br />
      macvtap: Remove virConnectPtr from ReportError (Matthias Bolte),<br />
      phyp: Remove virConnectPtr from PHYP_ERROR (Matthias Bolte),<br />
      esx: Mark error messages for translation (Matthias Bolte),<br />
      vbox: Mark all error messages for translation (Matthias Bolte),<br />
      Clarify an error message in setmem. (Chris Lalancette),<br />
      Fix up comments for isEncrypted, isSecure, domainIsActive, and domainIsPersistent. (Chris Lalancette),<br />
      Fix compiler warning about unused conn parameter (Matthias Bolte),<br />
      openvz: Remove virConnectPtr from openvzError (Matthias Bolte),<br />
      one: Remove virConnectPtr from oneError (Matthias Bolte),<br />
      uml: Remove virConnectPtr from umlReportError (Matthias Bolte),<br />
      Remove virConnectPtr from eventReportError (Matthias Bolte),<br />
      Remove virConnectPtr from virLibConnError (Matthias Bolte),<br />
      xen: Remove virConnectPtr from xenUnifiedError (Matthias Bolte),<br />
      Remove virConnectPtr from nodeReportError (Matthias Bolte),<br />
      netcf: Remove virConnectPtr from interfaceReportError (Matthias Bolte),<br />
      xen: Remove virConnectPtr from virXenInotifyError (Matthias Bolte),<br />
      xen: Remove virConnectPtr from virXenStoreError (Matthias Bolte),<br />
      xen: Remove virConnectPtr from virXenError/virXenErrorFunc (Matthias Bolte),<br />
      xen: Remove virConnectPtr from virXMError (Matthias Bolte),<br />
      xen: Remove virConnectPtr from virXendError (Matthias Bolte),<br />
      proxy: Remove virConnectPtr from virProxyError (Matthias Bolte),<br />
      vbox: Remove virConnectPtr from vboxError (Matthias Bolte),<br />
      test: Remove virConnectPtr from testError (Matthias Bolte),<br />
      Remove unnecessary trailing \n in log messages (Matthias Bolte),<br />
      Fix compiler warning about non-literal format string (Matthias Bolte),<br />
      removes the virConnectPtr parameter where not necessary (Stefan Berger),<br />
      Clarified error message (David Allan),<br />
      Eliminate compiler warning about non-const format string (Laine Stump),<br />
      Get rid of the regular expressions (Stefan Berger),<br />
      Use the virStrToLong_ui() function rather than virStrToLong_i() (Stefan Berger),<br />
      Make virDomainLoadConfig static. (Chris Lalancette),<br />
      Eliminate compile warnings in nwfilter error log calls (Laine Stump),<br />
      Only parse 'CPU XML' in virCPUDefParseXML() (Jim Fehlig),<br />
      Replace sscanf in PCI device address parsing (Matthias Bolte),<br />
      xen: Use virStrToLong_i instead of sscanf for XenD port parsing (Matthias Bolte),<br />
      xenapi: Use virStrToLong_i instead of sscanf for CPU map parsing (Matthias Bolte),<br />
      openvz: Use strtok_r instead of sscanf for VPS UUID parsing (Matthias Bolte),<br />
      xen: Use virParseMacAddr instead of sscanf (Matthias Bolte),<br />
      vbox: Replace atoi with virStrToLong_i (Matthias Bolte),<br />
      cgroup: Replace sscanf with virStrToLong_ll (Matthias Bolte),<br />
      Refactor major.minor.micro version parsing into a function (Matthias Bolte),<br />
      Replace sscanf in nwfilter rule parsing (Matthias Bolte),<br />
      Replace sscanf in legacy device address parsing (Matthias Bolte),<br />
      build: more fallout from test -a (Eric Blake),<br />
      Fix apibuild.py warning about virNWFilterLookupByUUIDString (Matthias Bolte),<br />
      maint: remove redundant tests after virStrToLong (Eric Blake),<br />
      maint: update AUTHORS (Eric Blake),<br />
      maint: fix cpp indentation syntax-check failure (Jim Meyering),<br />
      Add virt-aa-helper and secaatest to .gitignore (Matthias Bolte),<br />
      esx: Remove redundant semicolons (Matthias Bolte),<br />
      Use libvirt's existing ipv6/ipv4 parser/printer (Stefan Berger),<br />
      Remove driver dependency from nwfilter_conf.c (Stefan Berger),<br />
      Fix a merge error leftover (Daniel Veillard),<br />
      Use enum of virDomainNetType (Stefan Berger),<br />
      Silence cppi syntax-check warning (Daniel Veillard),<br />
      maint: update syntax-check rule to also catch test's -o operator (Eric Blake),<br />
      build: don't use "test cond1 -o cond2": it's not portable (Eric Blake),<br />
      build: don't use "test cond1 -a cond2" in configure: it's not portable (Jim Meyering),<br />
      Remove interfaceRegister from libvirt_private.syms (Matthias Bolte),<br />
      esx: Cleanup file header comments (Matthias Bolte),<br />
      maint: enforce recent copyright style (Eric Blake),<br />
      maint: make Red Hat copyright notices consistent (Eric Blake),<br />
      maint: fix typo (Eric Blake),<br />
      docs: &lt;pre&gt; cannot be nested in &lt;p&gt; (Matthias Bolte),<br />
      .gitignore: Ignore generated daemon/libvirtd.logrotate (Cole Robinson),<br />
      phyp: Use virRequestUsername and virRequestPassword (Matthias Bolte),<br />
      fix two "make syntax check" failures (Jim Meyering),<br />
      Fix syntax-check errors (Jiri Denemark),<br />
      Fix error messages in qemu text monitor (Jiri Denemark),<br />
      Fix compiler warnings in virsh.c (Laine Stump),<br />
      Silence compiler complaints about non-literal format strings (Laine Stump),<br />
      Remove qemudDomainSetMaxMemory. (Chris Lalancette),<br />
      Fix copy&amp;paste typos in virProcessInfoGetAffinity (Jiri Denemark),<br />
      AUTHORS: add recent contributors (Eric Blake),<br />
      Fix format string warnings (Laine Stump),<br />
      ebtablesAddRemoveRule: avoid dead store (Jim Meyering),<br />
      virInterfaceDefParseBond: avoid dead stores (Jim Meyering),<br />
      xenXMDomainConfigParse: avoid dead store (Jim Meyering),<br />
      qemuMonitorTextGetMemoryStats: decrease risk of false positive in parsing (Jim Meyering)
      </li></ul>
        <h3>0.7.7: Mar 5 2010</h3>
        <ul><li>Features:<br />
      Introduce public API for domain async job handling (Daniel P. Berrange),<br />
      macvtap support (Stefan Berger),<br />
      Add QEMU support for virtio channel (Matthew Booth),<br />
      Add persistence of PCI addresses to QEMU (Daniel P. Berrange),<br />
      Functions for computing baseline CPU from a set of host CPUs (Jiri Denemark),<br />
      Public API for virDomain{Attach,Detach}DeviceFlags (Jim Fehlig)
      </li><li>Documentation:<br />
      web docs -- macvtap mode explanation (Stefan Berger),<br />
      Expand docs about clock modes (Daniel P. Berrange),<br />
      docs: Fix syntax warnings from recent changes. (Cole Robinson),<br />
      docs: network: Document &lt;domain&gt; element (Cole Robinson),<br />
      docs: network: Document STP and delay attributes (Cole Robinson),<br />
      docs: domain: Document &lt;description&gt; element (Cole Robinson),<br />
      docs: storage: Document multipath pools (Cole Robinson),<br />
      docs: storage: Document SCSI pools (Cole Robinson),<br />
      docs: storage: Fix backingStore &lt;format&gt; docs (Cole Robinson),<br />
      docs: storage: &lt;volume&gt;&lt;key&gt; is always generated. (Cole Robinson),<br />
      docs: storage: Document capacity/alloc 'unit' (Cole Robinson),<br />
      docs: add 3 missing spaces (Dan Kenigsberg),<br />
      Fix typo in comment (Matthew Booth),<br />
      libvirt: Update docs for hotplug only commands (Cole Robinson),<br />
      Fix up a misspelled comment. (Chris Lalancette),<br />
      doc: restrict virDomain{Attach,Detach}Device to active domains (Jim Fehlig),<br />
      docs: Refer to virReportOOMError in the HACKING file (Matthias Bolte),<br />
      docs: Emphasize that devices have to be inside the &lt;devices&gt; element (Matthias Bolte)
      </li><li>Portability:<br />
      build: vbox: avoid build failure when linking with --no-add-needed (Diego Elio Pettenò),<br />
      build: avoid dlopen-related link failure on rawhide/F13 (Diego Elio Pettenò),<br />
      Add a define for NFS_SUPER_MAGIC (Chris Lalancette),<br />
      Fix compliation of AppArmor related code (Matthias Bolte)
      </li><li>Bug Fixes:<br />
      Fix USB passthrough based on product/vendor (Daniel P. Berrange),<br />
      Misc fixes for LXC cgroups setup (Daniel P. Berrange),<br />
      Change default for storage uid/gid from getuid()/getgid() to -1/-1 (Laine Stump),<br />
      Fix parser checking of storage pool device (Daniel P. Berrange),<br />
      Add missing device type check in QEMU PCI hotunplug (Daniel P. Berrange),<br />
      Make domain save work on root-squash NFS (Laine Stump),<br />
      Fix domain restore for files on root-squash NFS (Laine Stump),<br />
      Fix USB/PCI device address aliases in QEMU hotplug driver (Daniel P. Berrange),<br />
      Fix detection of errors in QEMU device_add command (Daniel P. Berrange),<br />
      uml: avoid crash on partial read (Eric Blake),<br />
      Fix QEMU domain state after a save attempt fails (Daniel P. Berrange),<br />
      Fix error messages when parsing USB devices in QEMU (Rolf Eike Beer),<br />
      Fix USB hotplug device string in QEMU driver (Rolf Eike Beer),<br />
      phypUUIDTable_Push: do not corrupt output stream upon partial write (Jim Meyering),<br />
      qemu: avoid null dereference on failed migration (Eric Blake),<br />
      Free the macvtap mode string (Stefan Berger),<br />
      libvirtd: do not ignore failure to set group ID in privileged mode (Jim Meyering),<br />
      Ignore SIGWINCH in remote client call to poll(2) (RHBZ#567931). (Richard Jones),<br />
      storage: conf: Correctly calculate exabyte unit (Cole Robinson),<br />
      virsh.c: avoid all leaks in OOM path in cmdCPUBaseline (Jiri Denemark),<br />
      Fixed reference count in virsh pool-build command (David Allan),<br />
      Fix daemon-conf invalid failures (David Allan),<br />
      virBufferAsprintf: do not omit va_end(argptr) call (Jim Meyering),<br />
      xend_internal.c: don't dereference NULL for unexpected input (Jim Meyering),<br />
      virsh: be careful to return "FALSE" upon OOM (Jim Meyering),<br />
      virBufferStrcat: do not skip va_end (Jim Meyering),<br />
      qparams.c: do not skip va_end, twice (Jim Meyering),<br />
      get_virtual_functions_linux: would mistakenly always return zero (Jim Meyering),<br />
      network: bridge: Fix IsActive, IsPersistent (Cole Robinson),<br />
      qemuMonitorTextAddUSBDisk: avoid unconditional leak (Jim Meyering),<br />
      tests: avoid NULL deref upon OOM failure (Jim Meyering),<br />
      qemuInitPasswords: avoid unconditional leak (Jim Meyering),<br />
      qemuMonitorTextAddDevice: avoid unconditional leak (Jim Meyering),<br />
      libvirt-override.c: avoid a leak upon call with invalid argument (Jim Meyering),<br />
      vboxDomainDumpXML: avoid a leak on OOM error path (Jim Meyering),<br />
      virNodeDevCapScsiHostParseXML: avoid an unconditional leak (Jim Meyering),<br />
      uml_driver.c: avoid leak upon failure (Jim Meyering),<br />
      vbox_tmpl.c: avoid an unconditional leak (Jim Meyering),<br />
      openvz (openvzFreeDriver): avoid leaks (Jim Meyering),<br />
      Fix crash in LXC driver open method when URI has no path (Daniel P. Berrange),<br />
      Fix USB device path formatting mixup (Daniel P. Berrange),<br />
      qemu_driver.c: honor dname parameter once again (Jim Meyering),<br />
      plug four virStoragePoolSourceFree-related leaks (Jim Meyering),<br />
      remote_driver.c: avoid leak on OOM error path (Jim Meyering),<br />
      qemu: Increase guest startup timeout to 30 seconds (Cole Robinson),<br />
      Fix security driver configuration (Daniel P. Berrange),<br />
      Escape strings serialized in XML (Daniel Veillard),<br />
      absolutePathFromBaseFile: don't leak when first arg contains no "/" (Jim Meyering),<br />
      sexpr_string: avoid leak on OOM error path (Jim Meyering),<br />
      virDomainChrDefParseXML: don't leak upon invalid input (Jim Meyering),<br />
      virExecWithHook: avoid leak on OOM error path (Jim Meyering),<br />
      cgroup.c: don't leak mem+FD upon OOM (Jim Meyering),<br />
      cgroup.c: avoid unconditional leaks (Jim Meyering),<br />
      virt-pki-validate contains unexpanded SYSCONFDIR variable (Doug Goldstein)
      </li><li>Improvements:<br />
      Convert QEMU driver all hotunplug code from pci_del to device_del (Daniel P. Berrange),<br />
      Support hot-unplug for USB devices in QEMU (Daniel P. Berrange),<br />
      Tweak container initialization to make upstart/init happier (Daniel P. Berrange),<br />
      Avoid creating top level cgroups if just querying for existence (Daniel P. Berrange),<br />
      Support VCPU hotplug in QEMU guests (Daniel P. Berrange),<br />
      Fix mis-leading error message in pool delete API (Daniel P. Berrange),<br />
      Fix typo in QEMU migration command name (Daniel P. Berrange),<br />
      Don't raise error message from cgroups if QEMU fails to start (Daniel P. Berrange),<br />
      esx: don't ignore failure on close (Eric Blake),<br />
      Fix safezero() (Jiri Denemark),<br />
      Support job cancellation in QEMU driver (Daniel P. Berrange),<br />
      Remote driver implementation for the virDomainAbortJob APi (Daniel P. Berrange),<br />
      Wire up internal entry points for virDomainAbortJob API (Daniel P. Berrange),<br />
      Introduce public API for cancelling async domain jobs (Daniel P. Berrange),<br />
      Add QEMU driver support for job info on migration ops (Daniel P. Berrange),<br />
      Remote driver implmentation of job info API (Daniel P. Berrange),<br />
      Stub out internal driver entry points for job processing (Daniel P. Berrange),<br />
      Use device_del to remove SCSI controllers (Wolfgang Mauerer),<br />
      Fix PCI address handling when controllers are deleted (Wolfgang Mauerer),<br />
      Fix data structure handling when controllers are attached (Wolfgang Mauerer),<br />
      Allow configurable timezones with QEMU (Daniel P. Berrange),<br />
      Allow a timezone to be specified instead of sync to host timezone (Daniel P. Berrange),<br />
      Support variable clock offset mode in QEMU (Daniel P. Berrange),<br />
      Add new clock mode allowing variable adjustments (Daniel P. Berrange),<br />
      Change the internal domain conf representation of localtime/utc (Daniel P. Berrange),<br />
      Use standard spacing for user/pass prompt (Cole Robinson),<br />
      libvirtd: Better initscript error reporting (Cole Robinson),<br />
      qemu: Report binary path if error parsing -help (Cole Robinson),<br />
      remote: Improve daemon startup error reporting (Cole Robinson),<br />
      virsh: Show errors reported by nonAPI functions (Cole Robinson),<br />
      remote: Improve error message when libvirtd isn't running (Cole Robinson),<br />
      build: make git submodule checking more reliable (Jim Meyering),<br />
      Add descriptions for macvtap direct type interfaces (Stefan Berger),<br />
      maint: import modern bootstrap (Eric Blake),<br />
      maint: start factoring bootstrap (Eric Blake),<br />
      build: update gnulib submodule to latest (Jim Meyering),<br />
      Create raw storage files with O_DSYNC (again) (Jiri Denemark),<br />
      Use virFileOperation hook function in virStorageBackendFileSystemVolBuild (Laine Stump),<br />
      Rename virFileCreate to virFileOperation, add hook function (Laine Stump),<br />
      qemu: Check for IA64 kvm (Dustin Xiong),<br />
      remote: Print ssh stderr on connection failure (Cole Robinson),<br />
      fix multiple veth problem for OpenVZ (Yuji NISHIDA),<br />
      Better error reporting for failed migration (Chris Lalancette),<br />
      Make an error message in PCI util code clearer (Chris Lalancette),<br />
      macvtap mac_filter support (Stefan Berger),<br />
      macvtap IFF_VNET_HDR configuration (Stefan Berger),<br />
      Use virFork() in __virExec(), virFileCreate() and virDirCreate() (Laine Stump),<br />
      Add virFork() function to utils (Laine Stump),<br />
      Add domain support for virtio channel (Matthew Booth),<br />
      qemu: Explicitly error if guest virtual network is inactive (Cole Robinson),<br />
      virterror: Make SetError work if no previous error was set (Cole Robinson),<br />
      macvtap teardown rework (Stefan Berger),<br />
      Update QEMU JSON balloon command handling (Daniel P. Berrange),<br />
      python: Actually add virConnectGetVersion to generated bindings (Cole Robinson),<br />
      build: inform libtool of m4 directory (Eric Blake),<br />
      Adds a cpu-baseline command for virsh (Jiri Denemark),<br />
      qemu: Make SetVcpu command hotplug only (Cole Robinson),<br />
      qemu: Make Set*Mem commands hotplug only (Cole Robinson),<br />
      Treat missing QEMU 'thread_id' as non-fatal in JSON monitor (Daniel P. Berrange),<br />
      Fix check for primary IDE controller in QEMU PCI slot assignment (Daniel P. Berrange),<br />
      Make error reporting for QEMU JSON mode more friendly (Daniel P. Berrange),<br />
      Run 'qmp_capabilities' command at QEMU monitor startup (Daniel P. Berrange),<br />
      macvtap support for libvirt -- schema extensions (Stefan Berger),<br />
      macvtap support for libvirt -- qemu support (Stefan Berger),<br />
      macvtap support for libvirt -- helper code (Stefan Berger),<br />
      macvtap support for libvirt -- parse new interface XML (Stefan Berger),<br />
      interface: Use proper return codes in the open function (Matthias Bolte),<br />
      Support 'block_passwd' command for QEMU disk encryption (Daniel P. Berrange),<br />
      Implement cpuBaseline in remote and qemu drivers (Jiri Denemark),<br />
      Wire protocol format and dispatcher for virConnectBaselineCPU (Jiri Denemark),<br />
      virConnectBaselineCPU public API implementation (Jiri Denemark),<br />
      Internal driver API for virConnectBaselineCPU (Jiri Denemark),<br />
      virConnectBaselineCPU public API (Jiri Denemark),<br />
      Implement cpuArchBaseline in x86 CPU driver (Jiri Denemark),<br />
      Implement cpuArchBaseline in generic CPU driver (Jiri Denemark),<br />
      Mark all error messages for translation (Jiri Denemark),<br />
      Add cpu_generic.c to the list of translated files (Jiri Denemark),<br />
      Fix &lt;cpu&gt; element in domain XML schema (Jiri Denemark),<br />
      Fix disk stats retrieval with QEMU &gt;= 0.12 (Daniel P. Berrange),<br />
      qemu: Properly report a startup timeout error (Cole Robinson),<br />
      test: Fake security driver support in capabilities (Cole Robinson),<br />
      Annotate some virConnectPtr as mandatory non-null (Daniel P. Berrange),<br />
      Convert qemu command line flags to 64-bit int (Daniel P. Berrange),<br />
      Create raw storage files with O_DSYNC (Jiri Denemark),<br />
      Re-generate remote protocol files for new APIs (Daniel P. Berrange),<br />
      Modify virsh commands (Jim Fehlig),<br />
      domain{Attach,Detach}DeviceFlags handler for drivers (Jim Fehlig),<br />
      Server side dispatcher (Jim Fehlig),<br />
      Remote driver (Jim Fehlig),<br />
      Wire protocol format (Jim Fehlig),<br />
      Public API Implementation (Jim Fehlig)
      </li><li>Cleanups:<br />
      virsh: silence compiler warning (Eric Blake),<br />
      build: silence coverity warning in node_device (Eric Blake),<br />
      Tiny spelling fix (Wolfgang Mauerer),<br />
      libvirtd: avoid false-positive NULL-deref warning from clang (Eric Blake),<br />
      x86Decode: avoid NULL-dereference upon questionable input (Jim Meyering),<br />
      openvzDomainDefineCmd: remove useless increment (Jim Meyering),<br />
      maint: disallow TAB-in-indentation also in *.rng files (Jim Meyering),<br />
      maint: convert leading TABs in *.rng files to equivalent spaces (Jim Meyering),<br />
      udevEnumerateDevices: remove dead code (Jim Meyering),<br />
      qemudNetworkIfaceConnect: remove dead store (Jim Meyering),<br />
      cmdPoolDiscoverSources: initialize earlier to avoid FP from clang (Jim Meyering),<br />
      build: avoid warning about return-with-value in void function (Jim Meyering),<br />
      Only build virDomainObjFormat if not building proxy. (Chris Lalancette),<br />
      openvzGetVEID: don't leak (memory + file descriptor) (Jim Meyering),<br />
      build: avoid warning about unused variables (Jim Meyering),<br />
      build: avoid "make rpm" failure in docs/ (Jim Meyering),<br />
      build: teach apibuild.py to work in a non-srcdir build (Jim Meyering),<br />
      build: avoid non-srcdir "make distcheck" failures (CLEANFILES) (Jim Meyering),<br />
      build: avoid non-srcdir "make distcheck" failures (srcdir vs wildcard) (Jim Meyering),<br />
      build: avoid non-srcdir "make distcheck" failure (test_conf.sh) (Jim Meyering),<br />
      build: avoid non-srcdir installation failure (sitemap.html.in) (Jim Meyering),<br />
      build: avoid non-srcdir installation failure (apibuild.py) (Jim Meyering),<br />
      build: fix typos in makefile variable names (Jim Meyering),<br />
      build: ensure that MKINSTALLDIRS is AC_SUBST-defined (Jim Meyering),<br />
      maint: relax git minimum version (Eric Blake),<br />
      maint: sort .gitignore (Eric Blake),<br />
      maint: fix quoting in autogen.sh (Eric Blake),<br />
      virFork: placate static analyzers: ignore pthread_sigmask return value (Jim Meyering),<br />
      virsh.c: avoid leak on OOM error path (Jim Meyering),<br />
      Make virDomainObjFormat static (Chris Lalancette),<br />
      xenDaemonDomainSetAutostart: avoid appearance of impropriety (Jim Meyering),<br />
      Remove unused functions from domain_conf (Matthew Booth),<br />
      Fix whitespace in domain.rng (Matthew Booth),<br />
      openvzLoadDomains: don't ignore failing virUUIDFormat (Jim Meyering),<br />
      vshCommandParse: placate coverity (Jim Meyering),<br />
      virStorageBackendIsMultipath: avoid dead store (Jim Meyering),<br />
      Convert virSecurityReportError into a macro (Matthias Bolte),<br />
      Swap position of nmodels and models parameters in cpuDecode() (Jiri Denemark),<br />
      Remove virConnectPtr from secret XML APIs (Daniel P. Berrange),<br />
      Remove virConnectPtr from interface XML APIs (Daniel P. Berrange),<br />
      Remove virConnectPtr from CPU XML APIs (Daniel P. Berrange),<br />
      Remove virConnectPtr from storage APIs &amp; driver (Daniel P. Berrange),<br />
      Remove virConnectPtr from all node device XML APIs (Daniel P. Berrange),<br />
      Remove virConnectPtr from network XML APis (Daniel P. Berrange),<br />
      Remove virConnectPtr from USB/PCI device iterators (Daniel P. Berrange),<br />
      Fix generation of floppy disk arg for QEMU's -global arg (Daniel P. Berrange),<br />
      Fix compile error in Xen proxy from virConnectPtr changes (Daniel P. Berrange),<br />
      Remove use of virConnectPtr from security driver APIs (Daniel P. Berrange),<br />
      Remove virConnectPtr from all domain XML parsing/formatting APIs (Daniel P. Berrange),<br />
      Remove virConnectPtr from LXC driver (Daniel P. Berrange),<br />
      Remove passing of virConnectPtr throughout QEMU driver (Daniel P. Berrange),<br />
      virAsprintf: remove its warn_unused_result attribute (Jim Meyering),<br />
      absolutePathFromBaseFile: avoid an unnecessary use of assert (Jim Meyering),<br />
      Remove conn parameter from USB functions (Matthias Bolte),<br />
      Remove conn parameter from JSON error macro (Matthias Bolte),<br />
      Remove conn parameter from PCI functions (Matthias Bolte),<br />
      Remove conn parameter from Linux stats functions (Matthias Bolte),<br />
      Remove conn parameter from storage file functions (Matthias Bolte),<br />
      Remove conn parameter from util functions (Matthias Bolte),<br />
      Remove conn parameter from virXPath* functions (Matthias Bolte),<br />
      Remove conn parameter from virReportSystemError (Matthias Bolte),<br />
      Remove conn parameter from virReportOOMError (Matthias Bolte),<br />
      website: Add a 1em right margin (Matthias Bolte),<br />
      storage: Replace storageLog with VIR_ERROR (Matthias Bolte),<br />
      opennebula: Remove unnecessary casts (Matthias Bolte),<br />
      esx: Remove unnecessary casts (Matthias Bolte),<br />
      cpu conf: Use virBufferFreeAndReset instead of virBufferContentAndReset and VIR_FREE (Matthias Bolte),<br />
      esx: Cleanup preprocessing structure in esxVI_EnsureSession (Matthias Bolte)
      </li></ul>
        <h3>0.7.6: Feb 3 2010</h3>
        <ul><li>Features:<br />
      Implement support for multi IQN (David Allan),<br />
      Implement CPU topology support for QEMU driver (Jiri Denemark),<br />
      Use QEmu new device addressing when possible (Daniel P. Berrange),<br />
      Implement SCSI controller hotplug/unplug for QEMU (Wolfgang Mauerer)
      </li><li>Documentation:<br />
      Add missing function parameter documentation (Matthias Bolte),<br />
      Add docs about new mailing list (Daniel P. Berrange),<br />
      Document cpu-compare command in virsh man page (Jiri Denemark),<br />
      Document cpu elements in capabilities and domain XML (Jiri Denemark),<br />
      docs: Remove outdated information about remote limitations (Matthias Bolte),<br />
      documentation improvements (David Jorm),<br />
      Minor fixes for API extension doc (Jim Fehlig),<br />
      cpu_shares parameter limit documented (David Jorm),<br />
      Document the domain XML cache attribute for disk devices (Matthias Bolte),<br />
      Replace old CVS references with GIT (Matthias Bolte)
      </li><li>Portability:<br />
      portability to non-glibc: don't use realpath(..., NULL) (Jim Meyering),<br />
      Add some missing include files which break build in certain platforms (Daniel P. Berrange),<br />
      Remove AppArmor compile warnings (Jamie Strandboge),<br />
      Fix compilation of virt-aa-helper.c (Matthias Bolte),<br />
      Fix linkage of virt-aa-helper to libgnu.a (Matthias Bolte)
      </li><li>Bug Fixes:<br />
      Fix restore of QEMU guests with PCI device reservation (Daniel P. Berrange),<br />
      Another fork() log locking cleanup in file creation (Laine Stump),<br />
      Fix log locking problem when using fork() in the library (Cole Robinson),<br />
      Fix locking for udev device add/remove (David Allan),<br />
      interface_conf.c: don't use a negative value as allocation size (Jim Meyering),<br />
      virStoragePoolSourceListNewSource: avoid unconditional leak (Jim Meyering),<br />
      xs_internal.c: don't use a negative value as allocation size (Jim Meyering),<br />
      Ensure QEMU DAC security driver is activated at all times (Daniel P. Berrange),<br />
      udev: Don't let strtoul parse USB busnum and devnum as octal (Matthias Bolte),<br />
      json.c: avoid an unconditional leak from most qemuMonitorJSON* functions (Jim Meyering),<br />
      Fix PCI host reattach on domain detach. (Chris Lalancette),<br />
      Clarify controllers -device string in QEMU driver (Matthew Booth),<br />
      util.c (virGetUserEnt): don't use a negative value as allocation size (Jim Meyering),<br />
      cpu_x86.c: avoid NULL-deref for invalid arguments (Jim Meyering),<br />
      Fix a crash when restarting libvirtd. (Chris Lalancette),<br />
      qemuMonitorTextAttachDrive: avoid two leaks (Jim Meyering),<br />
      usbGetDevice: don't leak a "usbDevice" buffer on failure path (Jim Meyering),<br />
      qemuMonitorTextGetMemoryStats: plug a leak on an error path (Jim Meyering),<br />
      usbFindBusByVendor: don't leak a DIR buffer and FD (Jim Meyering),<br />
      Fix libvirtd restart for domains with PCI passthrough devices (Chris Lalancette),<br />
      qemu: Fix race between device rebind and kvm cleanup (Chris Lalancette),<br />
      Fix device assignment with root devices (Chris Lalancette),<br />
      Corrected log level of WWN path message (David Allan),<br />
      Fix an error when looking for devices in syspath (Daniel Veillard),<br />
      Fix off-by-1 in SCSI drive hotplug (Daniel P. Berrange),<br />
      Fix leak in hotplug code in QEMU driver (Daniel P. Berrange),<br />
      Fix security driver calls in hotplug cleanup paths (Daniel P. Berrange),<br />
      Add missing call to re-attach host devices if VM startup fails (Daniel P. Berrange),<br />
      Pull initial disk labelling out into libvirtd instead of exec hook (Daniel P. Berrange),<br />
      Fix leak of allocated security label (Daniel P. Berrange),<br />
      Create storage pool directories with proper uid/gid/mode (Laine Stump),<br />
      Create storage volumes directly with desired uid/gid (Laine Stump),<br />
      Unset copied environment variables in qemuxml2argvtest (Matthias Bolte),<br />
      qemu: Don't allocate zero bytes (Matthias Bolte),<br />
      node_device_linux_sysfs.c: avoid opendir/fd leak on error path (Jim Meyering),<br />
      domain_conf.c: avoid a leak and the need for "cleanup:" block (Jim Meyering),<br />
      Fix QEMU driver custom domain status XML extensions (Daniel P. Berrange),<br />
      xen_driver: don't leak a parsed-config buffer (Jim Meyering),<br />
      storage_conf: plug a leak on OOM error path (Jim Meyering),<br />
      Tests for ACS in PCIe switches (Jiri Denemark),<br />
      storage_backend_fs.c: do not ignore probe failure (Jim Meyering),<br />
      Avoid free'ing a constant string in chardev lookup code (Daniel P. Berrange),<br />
      Fix build of Xen proxy daemon (Daniel P. Berrange),<br />
      xen: do not report a write-to-Xen-daemon failure as a read failure (Jim Meyering),<br />
      daemon: Don't blindly unregister domain events (Cole Robinson),<br />
      node_device: udev: Fix memory leak (Cole Robinson),<br />
      Fix migration in xend driver (Jim Fehlig),<br />
      Ensure error handling callback functions are called from safe context (Daniel P. Berrange),<br />
      qemu: Fix a memory leak in qemudExtractTTYPath (Matthias Bolte),<br />
      Fix UUID random generator to use /dev/random (Laine Stump),<br />
      let "configure --disable-shared" work once again (Jim Meyering),<br />
      Qemu: ask for memory preallocation with large pages (Daniel Veillard),<br />
      network/bridge_driver.c: avoid potential NULL-dereference (Jim Meyering),<br />
      Don't free an uninitalized pointer in update_driver_name() (Matthias Bolte),<br />
      xend_internal: don't let invalid input provoke NULL dereference (Jim Meyering),<br />
      Don't update vol details after build (David Allan),<br />
      vbox_tmpl.c: don't leak a domain pointer upon failure to create (Jim Meyering),<br />
      vbox_tmpl.c: avoid NULL deref upon vboxDomainCreateXML failure (Jim Meyering),<br />
      qemu_driver.c: avoid NULL dereference upon disk-op failure (Jim Meyering),<br />
      openvz_conf.c: don't dereference NULL upon failure (Jim Meyering),<br />
      Distribute vmx2xml and xml2vmx test data files (Matthias Bolte)
      </li><li>Improvements:<br />
      Tweak USB hostdevice XML handling (Daniel P. Berrange),<br />
      Fix QEMU hotplug device alias assignment (Daniel P. Berrange),<br />
      Disable QEMU monitor IO debugging by default (Daniel P. Berrange),<br />
      Re-arrange QEMU device alias assignment code (Daniel P. Berrange),<br />
      Remove direct storage of hostnet_name &amp; vlan (Daniel P. Berrange),<br />
      Remove use of -netdev arg with QEMU (Daniel P. Berrange),<br />
      Assign PCI addresses before hotplugging devices (Daniel P. Berrange),<br />
      Rewrite way QEMU PCI addresses are allocated (Daniel P. Berrange),<br />
      Introduce generic virDomainDeviceInfo iterator function (Daniel P. Berrange),<br />
      Make hotplug use new device_add where possible (Daniel P. Berrange),<br />
      Introduce internal QEMU monitor APIs for drive + device hotadd (Daniel P. Berrange),<br />
      Split out QEMU code for building PCI/USB hostdev arg values (Daniel P. Berrange),<br />
      Standard internal API syntax for building QEMU command line arguments (Daniel P. Berrange),<br />
      Log flags in virConnectCompareCPU (Jiri Denemark),<br />
      Look in /usr/libexec for the qemu-kvm binary. (Chris Lalancette),<br />
      Support Xen 4.0 sysctl version 7 (Jim Fehlig),<br />
      Add missing sata controller type to domain.rng (Matthew Booth),<br />
      udev: Set the state driver name (Matthias Bolte),<br />
      udev: Remove event handle on shutdown (Matthias Bolte),<br />
      esx: Output error details from libcurl (Matthias Bolte),<br />
      qemu: Search binaries in PATH instead of hardcoding /usr/bin (Matthias Bolte),<br />
      Implement QMP support for extracting CPU thread ID (Daniel P. Berrange),<br />
      Misc fixes to QMP monitor support for QEMU (Daniel P. Berrange),<br />
      Fix setup of compatibility serial devices from console device (Daniel P. Berrange),<br />
      Start modernizing configure (Eric Blake),<br />
      Add a rule to check for uses of readlink. (Chris Lalancette),<br />
      Add virConnectGetVersion Python API (Taizo ITO),<br />
      domMemoryStats / qemu: Fix parsing of unknown stats (Adam Litke),<br />
      Allow surrounding whitespace in uuid (Dan Kenigsberg),<br />
      Add configuration option to turn off dynamic permissions management (Daniel P. Berrange),<br />
      Switch QEMU driver over to use the DAC security driver (Daniel P. Berrange),<br />
      Introduce a new DAC security driver for QEMU (Daniel P. Berrange),<br />
      Introduce a stacked security driver impl for QEMU (Daniel P. Berrange),<br />
      Make security drivers responsible for checking dynamic vs static labelling (Daniel P. Berrange),<br />
      New utility functions virFileCreate and virDirCreate (Laine Stump),<br />
      Add virRunWithHook util function (Laine Stump),<br />
      Update interface.rng and xml test files to match netcf 0.1.5 (Laine Stump),<br />
      Support bond interfaces attached to bridges in interface xml. (Laine Stump),<br />
      Allow empty bridges in interface xml. (Laine Stump),<br />
      Support delay property in interface bridge xml. (Laine Stump),<br />
      Use pciDeviceIsAssignable in qemu driver (Jiri Denemark),<br />
      Allow for CPU topology specification without model (Jiri Denemark),<br />
      Add debug messages for CPU incompatibility (Jiri Denemark),<br />
      Take disabled/forced CPU features into account (Jiri Denemark),<br />
      Enhance qemuParseCommandLineKeywords (Jiri Denemark),<br />
      Convert VirtIO balloon over to -device syntax (Daniel P. Berrange),<br />
      uto-assign PCI addresses (Daniel P. Berrange),<br />
      Pass -vga none if no video card specified (Daniel P. Berrange),<br />
      Add support for explicit -sdl flag to QEMU (Daniel P. Berrange),<br />
      Assign device aliases for all devices at startup (Daniel P. Berrange),<br />
      Add device info to serial, parallel, channel, input &amp; fs devices (Daniel P. Berrange),<br />
      Introduce device aliases (Daniel P. Berrange),<br />
      Clear assigned PCI devices at shutdown (Daniel P. Berrange),<br />
      Auto-add disk controllers based on defined disks (Daniel P. Berrange),<br />
      Remove restriction on duplicated sound devices in parser (Daniel P. Berrange),<br />
      Detect PCI addresses at QEMU startup (Daniel P. Berrange),<br />
      Properly support SCSI drive hotplug (Daniel P. Berrange),<br />
      build: update gnulib submodule to latest (Jim Meyering),<br />
      Use closest CPU model when decoding from CPUID (Jiri Denemark),<br />
      Change detection of xen so that it's actually automatic rather than forced. (Diego Elio Pettenò),<br />
      Standardise ./configure --help options reporting. (Diego Elio Pettenò),<br />
      qemu: Use log output for pty assignment if 'info chardev' is unavailable (Matthias Bolte),<br />
      esx: Add VNC support (Matthias Bolte),<br />
      esx: Make the domain part of the hostname optional (Matthias Bolte),<br />
      esx: Add stubs for secondary driver types (Matthias Bolte),<br />
      Specify bus/unit instead of index for disks with QEMU (Daniel P. Berrange),<br />
      Split code for building QEMU -drive arg in separate method (Daniel P. Berrange),<br />
      Convert monitor over to use virDomainDeviceAddress (Daniel P. Berrange),<br />
      Add new domain device: "controller" (Wolfgang Mauerer),<br />
      Set default disk controller/bus/unit props (Daniel P. Berrange),<br />
      Add address info to sound, video and watchdog devices (Daniel P. Berrange),<br />
      Extend the virDomainDeviceAddress struture to allow disk controller addresses (Daniel P. Berrange),<br />
      Introduce a standardized data structure for device addresses (Daniel P. Berrange),<br />
      util: Make sure virExec hook failures are raised (Cole Robinson),<br />
      Implement path lookup for USB by vendor:product (Cole Robinson),<br />
      events: Report errors on failure (Cole Robinson),<br />
      node_device: udev: Enumerate floppy devices (Cole Robinson),<br />
      node_device: udev: Use base 16 for product/vendor (Cole Robinson),<br />
      libvirt.c: Preserve MigratePerform failure (Cole Robinson),<br />
      qemu: migrate: Save MigratePerform error in MigrateFinish. (Cole Robinson),<br />
      virterror: Add virSetError (Cole Robinson),<br />
      Also look for dmi information in /sys/class (Guido Günther),<br />
      proxy_internal.c: mark "request" parameter as nonnull (Jim Meyering),<br />
      esx: Dump the raw response in case of an SOAP fault (Matthias Bolte),<br />
      esx: Warn if the ESX server is in maintenance mode (Matthias Bolte),<br />
      xen hypervisor: xen domctl version 6 (Jim Fehlig),<br />
      virsh: Add persistent history using libreadline (Matthias Bolte),<br />
      esx: Fix 'vpx' MAC address range and allow arbitrary MAC addresses (Matthias Bolte),<br />
      esx: Fix deserialization for VI API calls CancelTask and UnregisterVM (Matthias Bolte),<br />
      esx: Fix and improve the libcurl debug callback (Matthias Bolte),<br />
      esx: Also allow virtualHW version 4 for ESX 4.0 (Matthias Bolte),<br />
      qemu: Always enable the virtio balloon driver (Adam Litke),<br />
      Disable building of static Python module (Diego Elio Pettenò),<br />
      Fix parsing of 'info chardev' line endings (Matthew Booth)
      </li><li>Cleanups:<br />
      xen_hypervisor.c: remove all "domain == NULL" tests, ... (Jim Meyering),<br />
      xen_hypervisor.c: avoid NULL deref for NULL domain argument (Jim Meyering),<br />
      libvirtd.c: avoid closing a negative socket file descriptor (Jim Meyering),<br />
      storage_backend.c: avoid closing a negative file descriptor (Jim Meyering),<br />
      avoid a probable EINVAL from lseek (Jim Meyering),<br />
      util.c (two more): don't use a negative value as allocation size (Jim Meyering),<br />
      avoid format-related warnings (Jim Meyering),<br />
      maint: avoid excess parens in STREQ (Eric Blake),<br />
      Move models/nmodels mismatch checking one level up (Jiri Denemark),<br />
      Fix up a comment in virHashUpdateEntry (Chris Lalancette),<br />
      maint: fix spelling error in hacking (Eric Blake),<br />
      pci.c: correct an erroneous expression (Jim Meyering),<br />
      Remove undefined symbols from libvirt_private.syms (Matthias Bolte),<br />
      Don't call disabled timer callbacks in event-test.c (Matthias Bolte),<br />
      hostusb: closedir only if non-NULL; rename labels: s/error/cleanup/ (Jim Meyering),<br />
      Cleanup of large buffer on stack in virFileMakePath (Laine Stump),<br />
      esx: Stop passing around virConnectPtr for error reporting (Matthias Bolte),<br />
      Revert "Fix libvirtd restart for domains with PCI passthrough devices" (Chris Lalancette),<br />
      Fix two instances of misspelled 'pseudo' (Chris Lalancette),<br />
      Use virFileResolveLink instead of readlink in AppArmor (Chris Lalancette),<br />
      Fix a compile warning in parthelper.c (Chris Lalancette),<br />
      Remove unused PROC_MOUNT_BUF_LEN #define (Chris Lalancette),<br />
      fix "make distcheck" failure (Jim Meyering),<br />
      avoid format-related warnings (Jim Meyering),<br />
      Refactor setup &amp; cleanup of security labels in security driver (Daniel P. Berrange),<br />
      Let make fail when XHTML validation fails (Jiri Denemark),<br />
      Fix uses of virFileMakePath (Laine Stump),<br />
      remove unnecessary closedir call (Jim Meyering),<br />
      Make all bitfields unsigned ints to avoid unexpected values in casts (Daniel P. Berrange),<br />
      logging: confirm that we want to ignore a write error (Jim Meyering),<br />
      Remove superfluous new lines from messages (Jiri Denemark),<br />
      vbox_tmpl.c: remove useless array-is-non-NULL comparisons (Jim Meyering),<br />
      lxc_driver: remove useless comparison (Jim Meyering),<br />
      gnulib added a new syntax-check test: use $(VAR), not @VAR@ (Jim Meyering),<br />
      storage_backend.h: include required headers (Jim Meyering),<br />
      esx_vi_types.c: include required headers (Jim Meyering),<br />
      vbox: include required headers (Jim Meyering),<br />
      cpu_x86_data.h: include required header (Jim Meyering),<br />
      util.c: include required header, no longer masked by gnulib (Jim Meyering),<br />
      Fix validation of news.html (Matthias Bolte),<br />
      Remove obsolete comment in QEMU JSON code (Daniel P. Berrange),<br />
      Make test suite output less verbose (Daniel P. Berrange),<br />
      daemon: Fix various error reporting issues (Cole Robinson),<br />
      util: Remove logging handlers in virExec (Cole Robinson),<br />
      Commit bootstrap .gitignore additions (Cole Robinson),<br />
      qemu: Disable errors in qemudShutdownVMDaemon (Cole Robinson),<br />
      avoid another "make distcheck" failure (Jim Meyering),<br />
      avoid newly-introduced test failure (Jim Meyering),<br />
      don't test "res == NULL" after we've already dereferenced "res" (Jim Meyering),<br />
      fix 7 "make check" test failures in non-srcdir build (Jim Meyering),<br />
      virsh: Use VIR_FREE instead of free (Matthias Bolte),<br />
      esx: Don't warn about an empty URI path (Matthias Bolte),<br />
      qemu_driver.c: remove useless, warning-provoking test (Jim Meyering)
      </li></ul>
        <h3>0.7.5: Dec 23 2009</h3>
        <ul><li>Features:<br />
      Add new API virDomainMemoryStats to header and drivers (Adam Litke),<br />
      Public API and domain extension for CPU flags (Jiri Denemark),<br />
      expose SR IOV physical/virtual function relationships (Dave Allan),<br />
      Support for JSON mode monitor [deactivated] (Daniel P. Berrange),<br />
      Support for interface model='netfront' (Jiri Denemark),<br />
      vbox: Add support for version 3.1 (Pritesh Kothari),<br />
      Support QEMU's virtual FAT block device driver (Daniel P. Berrange)
      </li><li>Documentation:<br />
      Document the dommemstat command in the virsh man page (Adam Litke),<br />
      esx: Add more links to external documentation (Matthias Bolte),<br />
      esx: Extend documentation about 'vcenter' and add some about 'auto_answer' (Matthias Bolte),<br />
      Fix and improve domain xml video element description (Matthias Bolte),<br />
      Fix owner and group in example volume XML (Matthew Booth),<br />
      add missing doc for device &lt;shareable/&gt; option (Daniel Veillard),<br />
      add AppArmor test and examples to dist (Jamie Strandboge),<br />
      Update location of C# bindings. (Richard Jones),<br />
      Fix typo in QEMU driver webpage (Daniel P. Berrange),<br />
      Clarify documentation for private symbols (Wolfgang Mauerer),<br />
      Fix news.html validation (Dan Kenigsberg)
      </li><li>Portability:<br />
      Define ATTRIBUTE_SENTINEL for GCC &lt; 4.0 too (Matthias Bolte),<br />
      Fix compilation  with configure --disable-nls (Matthias Bolte),<br />
      Fix configure check for SASL (Matthias Bolte),<br />
      Fix GnuTLS pkg-config check (Matthias Bolte),<br />
      Report an error if no XDR library can be found (Matthias Bolte),<br />
      Fix compilation with gcrypt &lt; 1.4.2 (Matthias Bolte),<br />
      Don't mix LDFLAGS and LIBS in the configure script (Diego Elio Pettenò),<br />
      Don't make it possible to define HAVE_HAL but not enable it in automake (Diego Elio Pettenò),<br />
      Fix install location for Python bindings (Matthias Bolte),<br />
      Use AM_PATH_PYTHON and python-config to detect Python configuration (Matthias Bolte),<br />
      Fix a compilation failure if yajl not avail (Daniel Veillard),<br />
      Fix compilation for configure --disable-nls (Matthias Bolte)
      </li><li>Bug fixes:<br />
      cpu: Fix memory leaks in x86FeatureLoad and x86ModelLoad (Matthias Bolte),<br />
      Make Xen VT-d PCI attach/detach work (Chris Lalancette),<br />
      Fix detection of JSON when restarting libvirtd (Daniel P. Berrange),<br />
      Fix reporting of TLS connection errors (Daniel P. Berrange),<br />
      Fix typo in qemudDomainAttachHostPciDevice() (Daniel Veillard),<br />
      esx: Destroy virtual machine on a vCenter if available (Matthias Bolte),<br />
      esx: Undefine virtual machine on a vCenter if available (Matthias Bolte),<br />
      Initialize gcrypt threading (Daniel P. Berrange),<br />
      Fix bug in storage driver accessing wrong private data (Daniel P. Berrange),<br />
      esx_vi.c: do not call through NULL function pointer (Jim Meyering),<br />
      esx_util.c: avoid NULL deref for invalid inputs (Jim Meyering),<br />
      esx: Don't goto failure for invalid arguments in VMX code (Matthias Bolte),<br />
      Fix memory leak in qemudBuildCommandLine (Matthias Bolte),<br />
      avoid malfunction when virFileResolveLink is applied to non-POSIX FS (Jim Meyering),<br />
      libvirt.c: don't let a NULL "cpumaps" argument provoke a NULL-deref (Jim Meyering),<br />
      qemu migration: avoid NULL-deref given an invalid input (Jim Meyering),<br />
      qemu_driver.c: don't unlink(NULL) on OOM error path (Jim Meyering),<br />
      remote_driver.c: also zero out -&gt;saslDecodedOffset member (Jim Meyering),<br />
      qemu_driver.c: avoid double free on error path (Jim Meyering),<br />
      libvirtd: avoid a NULL dereference on error path (Jim Meyering),<br />
      virsh: avoid double-free (Jim Meyering),<br />
      node_device_driver.c: don't write beyond EOB for 4K-byte symlink (Jim Meyering),<br />
      Eliminate failure to delete empty storage pools (Laine Stump),<br />
      Fix use of virEventAddHandleImpl() (Jiri Denemark),<br />
      Fix possible NULL pointer dereference (Paolo Bonzini),<br />
      fix various breakages in qemu Dump command (Paolo Bonzini),<br />
      Fix reference leak in remoteDispatchStorageVolCreateXmlFrom (Matthias Bolte),<br />
      Fix memory leak in virStorageBackendCopyToFD (Matthias Bolte),<br />
      retrieve paused/running state at migration start (Paolo Bonzini),<br />
      fix migration of paused vms upon failure (Paolo Bonzini),<br />
      qemu driver: Fix segfault in libvirt/libvirtd when uri-&gt;path is NULL. (Richard Jones),<br />
      Fix a wellformedness problem in secret.rng (Diego Elio Pettenò),<br />
      Fix virDomainObj ref handling in QEMU driver (Daniel P. Berrange),<br />
      Pull code to start CPUs executing out of qemudInitCpuAffinity() (Daniel P. Berrange),<br />
      Fix migration cancellation for QEMU (Daniel P. Berrange),<br />
      Fix crash when deleting monitor while a command is in progress (Daniel P. Berrange),<br />
      udev_device_get_devpath might return NULL (Guido Günther),<br />
      Fix some locking issues (Matthias Bolte),<br />
      Fix event test timer checks on kernels with HZ=100 (Daniel P. Berrange),<br />
      Fix threading problems in python bindings (Daniel P. Berrange),<br />
      Suppress annoying libcap-ng errors from valgrind (Daniel P. Berrange),<br />
      Fix two leaks in test driver (Daniel P. Berrange),<br />
      Free cgroup device ACL list on driver shutdown (Daniel P. Berrange),<br />
      xen: Fix unconditional freeing in xenDaemonListDefinedDomains() (Matthias Bolte),<br />
      Fix default disk type when parsing QEMU argv (Daniel P. Berrange),<br />
      remove port filter when network device is detached (Gerhard Stenzel)
      </li><li>Improvements:<br />
      convert missing server entry points into unsupported errors (Daniel Veillard),<br />
      fix some error report when on remote access (Olivier Fourdan),<br />
      Disable JSON mode monitor until QEMU is more mature (Daniel P. Berrange),<br />
      Only probe for CPU models if required (Jiri Denemark),<br />
      Add cpu_map.xml to libvirt.spec (Jiri Denemark),<br />
      Install cpu_map.xml (Jiri Denemark),<br />
      esx: Don't warn about '/' paths (Matthias Bolte),<br />
      esx: Extend vCenter query parameter (Matthias Bolte),<br />
      esx: Improve domain lookup by UUID (Matthias Bolte),<br />
      build: update gnulib submodule to latest (Jim Meyering),<br />
      Relax the allowed values for machine type in schema (Daniel Veillard),<br />
      Implement --pool option for virsh vol-path (Dave Allan),<br />
      nodedev: Add removable storage 'media_label' prop (Cole Robinson),<br />
      add --live support to "virsh dump" (Paolo Bonzini),<br />
      add --crash support to "virsh dump" (Paolo Bonzini),<br />
      Get QEMU pty paths from the monitor (Matthew Booth),<br />
      Extract the assigned pty device for QEmu channels (Matthew Booth),<br />
      Make QEMU driver use -chardev everywhere if available (Matthew Booth),<br />
      add virsh --suspend arg to migrate command (Paolo Bonzini),<br />
      reload iptables rules on libvirtd restart (Mark McLoughlin),<br />
      reload iptables rules simply by re-adding them (Mark McLoughlin),<br />
      Plumb domain description tag in xend backend (Jim Fehlig),<br />
      Make QEMU text monitor parsing more robust (Daniel P. Berrange),<br />
      Hook up JSON monitor to emit basic lifecycle events (Daniel P. Berrange),<br />
      Add QEMU monitor callbacks for basic lifecycle events (Daniel P. Berrange),<br />
      Switch over to passing a callback table to QEMU monitor (Daniel P. Berrange),<br />
      Introduce callbacks for serializing domain object private data to XML (Daniel P. Berrange),<br />
      Switch LXC driver to use a private data blob for virDomainObj state (Daniel P. Berrange),<br />
      Switch UML driver to use a private data blob for virDomainObj state (Daniel P. Berrange),<br />
      Add a 'format' arg to qemuMonitorChangeMedia() since JSON will support it (Daniel P. Berrange),<br />
      Introduce a simple API for handling JSON data (Daniel P. Berrange),<br />
      Add --system flag to autogen.sh to make it easy to build with right prefix (Daniel P. Berrange),<br />
      Export all symbols from xml.h for internal use (Jiri Denemark),<br />
      vbox: Use virIndexToDiskName() in vboxGenerateMediumName() (Matthias Bolte),<br />
      Tests for interface type/model configuration (Jiri Denemark),<br />
      Add virIndexToDiskName and fix mapping gap (Matthias Bolte),<br />
      Add another SENTINEL attribute (Paolo Bonzini),<br />
      Fix help message (Wolfgang Mauerer),<br />
      Alternate CPU affinity impl to cope with NR_CPUS &gt; 1024 (Daniel P. Berrange)
      </li><li>Cleanups:<br />
      The secret driver is stateful, link it directly to libvirtd (Matthias Bolte),<br />
      Remove undefined symbols from libvirt_private.syms (Matthias Bolte),<br />
      boolean shadows a typedef in rpcndr.h when compiled with MinGW (Matthias Bolte),<br />
      Rename DATADIR to PKGDATADIR to fix win32 build (Jiri Denemark),<br />
      Move cpu_map.xml to -client RPM (Jiri Denemark),<br />
      Fix undefined reference to 'close_used_without_including_unistd_h' (Matthias Bolte),<br />
      Fix argument type of virProcessInfoSetAffinity dummy function (Matthias Bolte),<br />
      esx: Use occurrence enum to specify expected result of a SOAP call (Matthias Bolte),<br />
      esx: Fix occurence typo (Matthias Bolte),<br />
      esx: Removed unused inttypes.h include (Matthias Bolte),<br />
      esx: Replace libxml1 'xmlChildrenNode' with libxml2 'children' (Matthias Bolte),<br />
      esx: Use more suitable error code in esxVI_LookupVirtualMachineByUuid() (Matthias Bolte),<br />
      esx: Add automatic question handling (Matthias Bolte),<br />
      avoid calling exit with a constant; use EXIT_* instead (Jim Meyering),<br />
      maint: remove from VC two gnulib-provided files (Jim Meyering),<br />
      xm_internal.c: remove misleading dead code (Jim Meyering),<br />
      Cleanup temporary #define after use (Matthew Booth),<br />
      Suppress cgroup error message on success startup (Ryota Ozaki),<br />
      Small change of RNG syntax for domain (Diego Elio Pettenò),<br />
      remove iptablesReloadRules() and related code (Mark McLoughlin),<br />
      remove all traces of lokkit support (Mark McLoughlin),<br />
      Add virBufferFreeAndReset() and replace free() (Matthias Bolte),<br />
      Fix the news file non-ascii characters (Daniel Veillard),<br />
      Add missing commas to the 0.7.4 news section (Matthias Bolte),<br />
      Change generated HTML to UTF-8 encoding (Daniel Veillard),<br />
      Avoid an type-punned pointer aliasing pbm (Daniel Veillard),<br />
      Move qemuMonitorEscape + migrate status enum into shared monitor code (Daniel P. Berrange),<br />
      vbox: Update IIDs from version 3.1-beta2 to 3.1-final (Matthias Bolte),<br />
      Fix ReprotError vs ReportError typo in JSON code (Daniel P. Berrange),<br />
      Fix inverted conditional test in configure.ac check for yajl (Daniel P. Berrange),<br />
      Pull schedular affinity code out into a separate module (Daniel P. Berrange),<br />
      Ignore docs/ directory for strcmp() syntax check (Daniel P. Berrange)
      </li></ul>
        <h3>0.7.4: Nov 20 2009</h3>
        <ul><li>Features:<br />
      Implement a node device backend using libudev (David Allan),<br />
      New APIs for checking some object properties (Daniel P. Berrange),<br />
      Fully asynchronous monitor I/O processing (Daniel P. Berrange),<br />
      add MAC address based port filtering to qemu (Gerhard Stenzel),<br />
      Support for IPv6 / multiple addresses per interfaces (Laine Stump)
      </li><li>Documentation:<br />
      Document overriding domain interface target (Cole Robinson),<br />
      514532 Fix man page, most operation are synchronous (Daniel Veillard),<br />
      Fix typo in error message (Matthew Booth),<br />
      esx: Add documentation to the website (Matthias Bolte),<br />
      AppArmor updates of examples (Jamie Strandboge),<br />
      Add documentation for &lt;channel&gt; domain element (Matthew Booth),<br />
      Separate character device doc guest and host parts (Matthew Booth),<br />
      Add a Python example that lists active ESX domains (Matthias Bolte),<br />
      LXC fix wrong or out-of-date function descriptions (Ryota Ozaki),<br />
      docs: &lt;clock&gt; property is 'offset', not 'sync' (Cole Robinson),<br />
      Update the documentation for virDomainMigrateToURI (Chris Lalancette),<br />
      fix virDomainMigrateToURI doc (Dan Kenigsberg)
      </li><li>Bug fixes:<br />
      504262 Check for duplicated UUID in XM Xen defines (Daniel Veillard),<br />
      512069 fix domain XML schemas for backward compatibility (Daniel Veillard),<br />
      qemu-kvm needs -enable-kvm flag for VT optimization (Steve Yarmie),<br />
      fix deprecated iptables command syntax (Steve Yarmie),<br />
      Ensure driver lock is released when entering QEMU monitor (Daniel P. Berrange),<br />
      only remove masquerade roles for VIR_NETWORK_FORWARD_NAT (Guido Günther),<br />
      esx: Fix CPU clock Hz to MHz conversion (Matthias Bolte),<br />
      esx: Fix memory leak in esxVI_HostCpuIdInfo_Free() (Matthias Bolte),<br />
      esx: Fix MAC address formatting (Matthias Bolte),<br />
      Fix compilation of libvirt against xen-unstable (Jim Fehlig),<br />
      Fix probing for libpciaccess (Daniel P. Berrange),<br />
      Fix incorrect reference counting logic in qemu monitor open (Daniel P. Berrange),<br />
      Don't return fatal error in HAL driver init if HAL isn't running (Daniel P. Berrange),<br />
      Fix cleanup when state driver init fails (Daniel P. Berrange),<br />
      AppArmor handling of accesses to readonly files (Jamie Strandboge),<br />
      AppArmor require absolute paths (Jamie Strandboge),<br />
      Check that domain is running when starting console (Daniel P. Berrange),<br />
      Fix incorrect variable passed to LXC event callback (Daniel P. Berrange),<br />
      Fix race condition in HAL driver startup (Daniel P. Berrange),<br />
      Remove capng_lock() call when spawning LXC container init process (Daniel P. Berrange),<br />
      Fix initscript to check daemon pidfile (Daniel P. Berrange),<br />
      Filter out stale domains from xenstore listing (Daniel P. Berrange),<br />
      Fix logic in xenUnifiedNumOfDomains to match xenUnifiedListDomains (Jonas Eriksson),<br />
      Disable IPv6 socket auto-binding to IPv4 socket (Daniel P. Berrange),<br />
      Fix save and restore with non-privileged guests and SELinux (Daniel P. Berrange),<br />
      Prevent initializing ebtables if disabled in qemu.conf (Ryota Ozaki),<br />
      phyp: too much timeout when polling socket (Eduardo Otubo),<br />
      phyp: ssh authentication with public key fixed (Eduardo Otubo),<br />
      opennebula: Fix potential memory/mutex leak in state driver startup (Matthias Bolte),<br />
      phyp: Break potential infinite loops (Matthias Bolte),<br />
      phyp: Fix memory/session leaks and potential invalid frees (Matthias Bolte),<br />
      storage: conf: Fix memory leak in encryption parsing (Cole Robinson),<br />
      Fix improper error return in virInterfaceDefParseProtoIPvX (Laine Stump),<br />
      Fix virInterfaceIpDefPtr leak during virInterfaceIpDefFree (Laine Stump),<br />
      give up python interpreter lock before calling cb (Dan Kenigsberg),<br />
      ESX: Fix memory leak in list handling functions. (Matthias Bolte),<br />
      Fix --with-init-script configure option (Matthew Booth),<br />
      Don't let parent of daemon exit until basic initialization is done (Daniel P. Berrange),<br />
      Fix configure detection of device mapper (Pritesh Kothari),<br />
      Remote code caught EINTR making it ininterruptable (Daniel Veillard),<br />
      virterror: Add a missing 'break' for VIR_ERR_INVALID_SECRET (Cole Robinson),<br />
      Fix p2p migration without a passed uri. (Cole Robinson),<br />
      Fix problems in the Xen inotify driver. (Matthias Bolte),<br />
      Remove a completely bogus reference increment in the Xen driver. (Chris Lalancette),<br />
      528575 avoid libvirtd crash on LCX domain autostart (Daniel Veillard),<br />
      Fix SELinux linking issues (Jim Fehlig),<br />
      node device: Fix locking issue in virNodeDeviceDestroy (Cole Robinson),<br />
      LXC fix virCgroupGetValueStr problem with \n (Ryota Ozaki),<br />
      Avoid crash in virBufferEscapeString (Laine Stump),<br />
      LXC complement PATH environment variable (Ryota Ozaki)
      </li><li>Improvements:<br />
      Enable udev instead of hal on F12 / RHEL-6 or later (Daniel P. Berrange),<br />
      python: Actually implement list*Interfaces bindings (Cole Robinson),<br />
      esx: Handle 'vmxnet3' in esxVMX_FormatEthernet() (Matthias Bolte),<br />
      Fix check for existence of cgroups at creation (Daniel P. Berrange),<br />
      Fix virt-aa-helper when host and os.type arch differ (Jamie Strandboge),<br />
      Add translation of PCI vendor and product IDs (David Allan),<br />
      Add scsi_target device type (David Allan),<br />
      Add several fields to node device capabilities (David Allan),<br />
      Add virConnectGetLibvirtVersion API (Cole Robinson),<br />
      Implement finer grained migration control for Xen (Maximilian Wilhelm),<br />
      Support for SATA Disks in virDomainDiskBus (pritesh),<br />
      LXC implement missing DomainInterfaceStats API (Ryota Ozaki),<br />
      disable mac_filter config switch by default (Gerhard Stenzel),<br />
      phyp: Reorder keyboard_interactive label in openSSHSession() (Eduardo Otubo),<br />
      Implmentation of new APIs to checking state/persistence of objects (Daniel P. Berrange),<br />
      Allow timeouts waiting for QEMU job lock (Daniel P. Berrange),<br />
      Release driver and domain lock when running monitor commands (Daniel P. Berrange),<br />
      Add reference counting on virDomainObjPtr objects (Daniel P. Berrange),<br />
      Locking of the qemuMonitorPtr object (Daniel P. Berrange),<br />
      Wrap text mode monitor APIs, pass qemuMonitorPtr directly to APIs (Daniel P. Berrange),<br />
      Move encryption lookup back into qemu driver file (Daniel P. Berrange),<br />
      Make use of private data structure for monitor state (Daniel P. Berrange),<br />
      Add a new timed condition variable wait API (Daniel P. Berrange),<br />
      Fix errno handling for pthreads wrappers (Daniel P. Berrange),<br />
      524280 pass max lease option to dnsmasq (Daniel Veillard),<br />
      Store the range size when adding a DHCP range (Daniel Veillard),<br />
      qemu: Allow cpu pinning for all logical CPUs, not just physical (Cole Robinson),<br />
      qemu: Use same create/define overwrite logic for migration prepare. (Cole Robinson),<br />
      qemu: Break out function to check if we can create/define/restore (Cole Robinson),<br />
      Add sentinel attribute for NULL terminated arg lists (Paolo Bonzini),<br />
      test: Update inactive guest config on shutdown (Cole Robinson),<br />
      test: Add testDomainShutdownState helper (Cole Robinson),<br />
      Properly convert port numbers to/from network byte order (Matthew Booth),<br />
      phyp add create() and destroy() support (Eduardo Otubo),<br />
      Support for &lt;channel&gt; in domain and QEmu backend (Matthew Booth),<br />
      Detect availability of QEMU -chardev CLI option (Matthew Booth),<br />
      Allow character devices to have different target types (Matthew Booth),<br />
      LXC allow container to have ethN interfaces (Ryota Ozaki),<br />
      New ebtables module wrapper (Gerhard Stenzel),<br />
      test: Implement virDomainPinVcpu (Cole Robinson),<br />
      test: Implement virDomainGetVcpus (Cole Robinson),<br />
      test: Update vcpu runtime info in SetVcpus (Cole Robinson),<br />
      test: Use privateData to track running VM vcpu state (Cole Robinson),<br />
      test: Break out wrapper for setting up started domain state. (Cole Robinson),<br />
      test: Fixes for SetVcpus (Cole Robinson),<br />
      Make monitor type (miimon/arpmon) optional in bond xml (Laine Stump),<br />
      Support reporting live interface IP/netmask (Laine Stump),<br />
      Make startmode optional in toplevel interface definition (Laine Stump),<br />
      Move libvirtd event loop into background thread (Daniel P. Berrange),<br />
      Allow NULL mac address in virGetInterface (Laine Stump),<br />
      ESX: Don't automatically follow redirects. (Matthias Bolte),<br />
      ESX: Change disk selection for datastore detection. (Matthias Bolte),<br />
      ESX: Fallback to the preliminary name if the datastore cannot be found. (Matthias Bolte),<br />
      Set KMEMSIZE for OpenVZ domains being defined (Yuji NISHIDA),<br />
      Allow for a driver specific private data blob in virDomainObjPtr (Daniel P. Berrange),<br />
      More network utility functions (Matthew Booth),<br />
      Add symbols from new network.h module (Daniel Veillard),<br />
      Set of new network related utilities (Daniel Veillard),<br />
      Convert virDomainObjListPtr to use a hash of domain objects (Daniel P. Berrange),<br />
      qemu: migrate: Don't require manual URI to specify a port (Cole Robinson),<br />
      test: Support virStorageFindPoolSources (Cole Robinson),<br />
      storage: Add ParseSourceString function for use with FindPoolSources. (Cole Robinson),<br />
      Add support for an external TFTP boot server (Paolo Bonzini),<br />
      test: Support virNodeDeviceCreate and virNodeDeviceDestroy (Cole Robinson),<br />
      Consolidate virXPathNodeSet() (Daniel Veillard),<br />
      Support QEMU watchdog device. (Richard Jones),<br />
      Do not log rotate very small logs (Dan Kenigsberg),<br />
      LXC implement missing macaddr assignment feature (Ryota Ozaki),<br />
      tests: Initialize virRandom in for test suite. (Cole Robinson),<br />
      tests: Add storage volume XML 2 XML tests. (Cole Robinson),<br />
      tests: Add network XML to XML tests. (Cole Robinson),<br />
      schema: Update network schema. (Cole Robinson),<br />
      tests: Add XML 2 XML tests for storage pools. (Cole Robinson),<br />
      tests: Break out duplicate schema verification functionality. (Cole Robinson),<br />
      tests: Fix text output for interface XML 2 XML (Cole Robinson),<br />
      Add ocfs2 to list of fs pool types (Jim Fehlig),<br />
      Finer grained migration control (Chris Lalancette)
      </li><li>Cleanups:<br />
      remove sysfs_path and parent_sysfs_path from XML (Dave Allan),<br />
      Removing devicePath member from dev struct (Dave Allan),<br />
      report OOM in two places in node_device_driver.c (Dave Allan),<br />
      Whitespace cleanup for pre-tags on the website (Matthias Bolte),<br />
      Fix type in configure output summary (Daniel P. Berrange),<br />
      Remove a compilation warning on uninitialized var (Daniel Veillard),<br />
      Change DTD references to use public instead of system identifier (Matthias Bolte),<br />
      Remove obsolete devicekit checks (Daniel P. Berrange),<br />
      Small guestfwd code cleanup (Matthew Booth),<br />
      Small indentation cleanup of domain schema (Matthew Booth),<br />
      AppArmor code cleanups (Jamie Strandboge),<br />
      Fix formatting of XML for an inactive guest (Daniel P. Berrange),<br />
      Remove DevKit node device backend (David Allan),<br />
      Exclude numactl on s390[x] (Daniel P. Berrange),<br />
      Fix error handling in qemuMonitorOpen (Ryota Ozaki),<br />
      Fix warning on make due to missing cast (int) (Ryota Ozaki),<br />
      Various fixes following a code review part 2 (Daniel Veillard),<br />
      Various fixes following a code review (Daniel Veillard),<br />
      Move code for low level QEMU monitor interaction into separate file (Daniel P. Berrange),<br />
      Make pciDeviceList struct opaque (Daniel P. Berrange),<br />
      Add missing OOM error checks, reports and cleanups (Matthias Bolte),<br />
      Removes the ebtablesSaveRules() function (Gerhard Stenzel),<br />
      phyp: Use actual error code instead of 0 (Matthias Bolte),<br />
      phyp: Don't use VIR_ALLOC if a stack variable is good enough (Matthias Bolte),<br />
      phyp: Fix several UUID table related problems (Matthias Bolte),<br />
      phyp: Check for exit_status &lt; 0 before parsing the result (Matthias Bolte),<br />
      phyp: memcpy/memmove/memset can't fail, so don't check for error (Matthias Bolte),<br />
      phyp: Make generic domain listing functions return -1 in case of error (Matthias Bolte),<br />
      Fix configure check for libssh2 (Matthias Bolte),<br />
      Repair getIPv4Addr after the ntohl conversion (Daniel Veillard),<br />
      Cleanup whitespace in docs (Matthew Booth),<br />
      Use virBuffer when building QEMU char dev command line (Matthew Booth),<br />
      Cleanup virBuffer usage in qemdBuildCommandLine (Matthew Booth),<br />
      Fix some cut-and-paste error in migration code (Paolo Bonzini),<br />
      Ensure guestfwd address is IPv4 and various cleanups (Matthew Booth),<br />
      LXC cleanup deep indentation in lxcDomainSetAutostart (Ryota Ozaki),<br />
      LXC messages cleanup and fix lxcError (Ryota Ozaki),<br />
      qemu: Remove compiled out localhost migration support (Cole Robinson),<br />
      Various error reporting fixes (Cole Robinson),<br />
      Improve error reporting for virConnectGetHostname calls (Cole Robinson),<br />
      Fix up NLS warnings. (Chris Lalancette),<br />
      Remove redundant virFileDeletePID() call (Chris Lalancette),<br />
      Fix return value in virStateInitialize impl for LXC (Daniel P. Berrange),<br />
      ESX: Unify naming of VI API utility and convenience functions. (Matthias Bolte),<br />
      Rename internal APis (Daniel P. Berrange),<br />
      Pull signal setup code out into separate method (Daniel P. Berrange),<br />
      Fix duplicating logging of errors in libvirtd (Daniel P. Berrange),<br />
      Fix initialization order bugs (Daniel P. Berrange),<br />
      Misc cleanup to network socket init (Daniel P. Berrange),<br />
      Annotate many methods with ATTRIBUTE_RETURN_CHECK &amp; fix problems (Daniel P. Berrange),<br />
      Don't use private struct member names of in6_addr (Matthias Bolte),<br />
      Fix typo in network.c function comments (Matthew Booth),<br />
      libvirt-devel should only require libvirt-client (Mark McLoughlin),<br />
      qemu: Fix an error message in GetVcpus (Cole Robinson),<br />
      storage: Break out function to add pool source to a SourceList. (Cole Robinson),<br />
      storage: Break out pool source parsing to a separate function. (Cole Robinson),<br />
      Fix some typos in comments (Dan Kenigsberg),<br />
      Fix error message in qemudLoadDriverConfig() (Matthias Bolte),<br />
      Add a new syntax-check rule for gethostname. (Chris Lalancette),<br />
      Various syntax-check fixes. (Chris Lalancette),<br />
      Tighten up nonreentrant syntax-check. (Chris Lalancette),<br />
      Replace a gethostname by virGetHostname in libvirtd.c (Chris Lalancette),<br />
      Replace two strcmp() by STREQ() in qemu_driver.c (Chris Lalancette),<br />
      Replace gethostname by virGetHostname in xend_internal.c (Chris Lalancette),<br />
      Add a default log_level to qemudSetLogging to remove a build warning. (Chris Lalancette),<br />
      Better error message when libvirtd fails to start. (Chris Lalancette),<br />
      Fix potential false-positive OOM error reporting. (Matthias Bolte),<br />
      Fix virsh.c compilation warning (Jim Fehlig),<br />
      Fix a make dist error due to wrong EXTRA_DIST paths (Daniel Veillard),<br />
      node device: Break out get_wwns and get_parent_node helpers (Cole Robinson),<br />
      tests: Centralize VIR_TEST_DEBUG lookup, and document it (Cole Robinson),<br />
      Remove bogus const annotations to hash iterator (Daniel P. Berrange),<br />
      Remove bashisms from schema tests. (Matthias Bolte),<br />
      Don't copy old machines from a domain which has none (Mark McLoughlin)
      </li></ul>
        <h3>0.7.3: Nov 20 2009</h3>
        <p>Broken release use 0.7.4</p>
        <h3>0.7.2: Oct 14 2009</h3>
        <ul><li>Features:<br />
        sVirt AppArmor security driver (Jamie Strandboge),<br />
        Add public API definition for data stream handling (Daniel P. Berrange),<br />
        ESX add esxDomainDefineXML() (Matthias Bolte),<br />
        LXC: suspend/resume support (Ryota Ozaki),<br />
        Big code tree cleanup (Daniel P. Berrange)
        </li><li>Documentation:<br />
        Documentation and examples for SVirt Apparmor driver (Jamie Strandboge),<br />
        Fix documentation and comment typos (Paolo Bonzini),<br />
        Fix up a few typos in the tree. (Chris Lalancette),<br />
        Fix a typo in virNetHasValidPciAddr() too (Mark McLoughlin),<br />
        Fix a typo in virDiskHasValidPciAddr() (Jiri Denemark),<br />
        Fix a number of small typos (Dan Kenigsberg),<br />
        add doc for graphic and video elements (Florian Vichot),<br />
        Fix up 'neccessary -&gt; necessary' in a comment. (Chris Lalancette),<br />
        Fix up comments for domainXML{To,From}Native. (Chris Lalancette),<br />
        Simple fix of a comment in qemuStringToArgvEnv. (Chris Lalancette),<br />
        Add a README file to src/ explaining the directory structure (Daniel P. Berrange),<br />
        doc: don't emit trailing blanks into generated and VC'd NEWS file (Jim Meyering)
        </li><li>Portability:<br />
        Misc win32 build fixes (Daniel P. Berrange),<br />
        Don't require full daemon install for libvirt python bindings (Daniel P. Berrange),<br />
        Tweak specfile to fix RHEL6 rules &amp; ESX/PHYP enablement (Daniel P. Berrange),<br />
        Bug Fixes:,
        network: Fix printing XML 'delay' attribute (Cole Robinson),<br />
        Fix virFileReadLimFD/virFileReadAll to handle EINTR (Daniel P. Berrange),<br />
        storage: Fix generating iscsi 'auth' xml (Cole Robinson),<br />
        Fix QEMU restore from file in raw format (Daniel P. Berrange),<br />
        Take domain type into account when looking up default machine (Mark McLoughlin),<br />
        Fix schema to allow missing machine type (Mark McLoughlin),<br />
        Fix stream abort upon I/O failure during migration (Daniel P. Berrange),<br />
        Create /var/log/libvirt/{lxc,uml} dirs (Mark McLoughlin),<br />
        nodedev: Add locking in nodeNumOfDevices (Cole Robinson),<br />
        test: Throw a proper error in GetBridgeName (Cole Robinson),<br />
        526769 change logrotate config default to weekly (Daniel Veillard),<br />
        Fix emission of domain events messages (Daniel P. Berrange),<br />
        unbreak `make rpcgen' (Paolo Bonzini),<br />
        unbreak migration (Paolo Bonzini),<br />
        Fix USB device re-labelling (Mark McLoughlin),<br />
        Avoid a libvirtd crash on broken input 523418 (Daniel Veillard),<br />
        Re-label image file backing stores (Mark McLoughlin),<br />
        Fix memory leaks in libvirtd's message processing (Matthias Bolte),<br />
        Fix QEMU test suite with new VNC env variable (Daniel P. Berrange),<br />
        VBox vboxDomainDestroy forgot to wait for completion (Pritesh Kothari),<br />
        Vbox call OpenHardDisk with "" instead of NULL (Pritesh Kothari),<br />
        Avoid double free in errors in virsh (Jim Fehlig),<br />
        Fix crash in device hotplug cleanup code (Daniel P. Berrange),<br />
        Maintain value of ctxt-&gt;node in virInterfaceDefParseDhcp (Laine Stump),<br />
        Fix some XPath relative node resets (Daniel Veillard),<br />
        Fix unitialized variable in qemudDomainDetachHostPciDevice() (Charles Duffy),<br />
        ESX: Check if a datastore is accessible first (Matthias Bolte),<br />
        Fix handling of Xen(ner) detection (Daniel P. Berrange),<br />
        Fix xen driver refcounting. (Matthias Bolte),<br />
        prevent attempt to call cat -c during virDomainSave to raw (Charles Duffy),<br />
        Don't do virSetConnError when virDrvSupportsFeature is successful. (Chris Lalancette),<br />
        Fix a double-free in qemudRunLoop() (Chris Lalancette),<br />
        Fix leak in PCI hostdev hot-unplug (Mark McLoughlin),<br />
        Fix net/disk hot-unplug segfault (Mark McLoughlin)
        </li><li>Improvements:<br />
        schema: Update storage pool schema. (Cole Robinson),<br />
        test: Activate interfaces specified through driver config file. (Cole Robinson),<br />
        Rewrite example domain events program for python (Daniel P. Berrange),<br />
        Support a new peer-to-peer migration mode &amp; public API (Daniel P. Berrange),<br />
        LXC add augeas support for config file (Amy Griffis),<br />
        LXC add driver config file lxc.conf (Amy Griffis),<br />
        LXC do not truncate container log files on restart (Amy Griffis),<br />
        LXC initialize logging configuration (Amy Griffis),<br />
        Add debug for envp[] in virExecWithHook() (Amy Griffis),<br />
        Add accessors for logging filters and outputs (Amy Griffis),<br />
        Add virFileAbsPath() utility (Amy Griffis),<br />
        LXC implement memory control APIs (Ryota Ozaki),<br />
        Add a domain argument to SVirt *RestoreImageLabel (Jamie Strandboge),<br />
        test: Support loading node device info from file/XML (Cole Robinson),<br />
        test: Implement node device driver. (Cole Robinson),<br />
        configure: Add explicit --with-python option. (Cole Robinson),<br />
        Tunnelled migration. (Chris Lalancette),<br />
        Various monitor improvements for migration. (Chris Lalancette),<br />
        523639 Allows a &lt;description&gt; tag for domains (Daniel Veillard),<br />
        Add src/util/storage_file.c to the POTFILES.in. (Chris Lalancette),<br />
        Add a qemu feature flag for unix socket migration. (Chris Lalancette),<br />
        Let remoteClientStream only do RX if requested. (Chris Lalancette),<br />
        Introduce virStorageFileMetadata structure (Mark McLoughlin),<br />
        Allow control over QEMU audio backend (Daniel P. Berrange),<br />
        Handle data streams in remote client (Daniel P. Berrange),<br />
        Handle outgoing data streams in libvirtd (Daniel P. Berrange),<br />
        Handle incoming data streams in libvirtd (Daniel P. Berrange),<br />
        Lots of cleanups and improvement on QEmu monitor code (Daniel P. Berrange),<br />
        ESX add esxVI_Occurence enum to for occurences (Matthias Bolte),<br />
        ESX add x86_64 detection based on the CPUID (Matthias Bolte),<br />
        ESX add tests for the VMX to/from domain XML mapping (Matthias Bolte),<br />
        ESX Add esxDomainXMLToNative() (Matthias Bolte),<br />
        ESX Set challenge for auth callback to hostname (Matthias Bolte),<br />
        ESX Add esxNodeGetFreeMemory() (Matthias Bolte),<br />
        network: add 'bootp' and 'tftp' config (Paolo Bonzini),<br />
        OpenVZ Fix a restriction about domain names (Yuji NISHIDA),<br />
        Make pki_check.sh into an installed &amp; supported tool (Daniel P. Berrange),<br />
        ESX add support for vmxnet3 virtual device (Shahar Klein)
        </li><li>Cleanups:<br />
        remote: Don't print a warning every time a remote call fails (Cole Robinson),<br />
        storage: Report errors in FindPoolSources (Cole Robinson),<br />
        LXC fix return code handling in lxcVmStart (Ryota Ozaki),<br />
        Add a target for libvirt.devhelp (Daniel Veillard),<br />
        Remove some auto-generated files (Daniel P. Berrange),<br />
        Re-arrange doTunnelMigrate to simplify cleanup code (Daniel P. Berrange),<br />
        Separate out code for sending tunnelled data (Daniel P. Berrange),<br />
        Pull connection handling code out of doTunnelMigrate (Daniel P. Berrange),<br />
        Refactor native QEMU migration code (Daniel P. Berrange),<br />
        Don't force dconn to be NULL in virDomainMigrate (Daniel P. Berrange),<br />
        Remove unnecessary uri_in parameter from virMigratePrepareTunnel (Daniel P. Berrange),<br />
        Move the VIR_DRV_FEATURE* constants (Daniel P. Berrange),<br />
        Fix configure.ac message vertical alignment (Daniel P. Berrange),<br />
        cgroup: Fix -Werror breakage (Cole Robinson),<br />
        Fix handling return value of qemuMonitorSetBalloon (Ryota Ozaki),<br />
        Fix up "make check" (Chris Lalancette),<br />
        Fix rebuilding of devhelp files (Daniel P. Berrange),<br />
        Fix ordering of &lt;exports&gt; in API description file (Daniel P. Berrange),<br />
        node conf: Make parsing routines consistent with other drivers (Cole Robinson),<br />
        nodedev: Break out virNodeDeviceHasCap to node_conf (Cole Robinson),<br />
        python: Add a newline after custom classes (Cole Robinson),<br />
        python: Fix generated virInterface method names (Cole Robinson),<br />
        python: Use a pure python implementation of 'vir*GetConnect' (Cole Robinson),<br />
        python: Don't generate bindings for vir*Ref (Cole Robinson),<br />
        python: Don't generate conflicting conn.createXML functions. (Cole Robinson),<br />
        python: Remove use of xmllib in generator.py (Cole Robinson),<br />
        python: Remove FastParser from generator. (Cole Robinson),<br />
        Fix typo in Makefile.am breaking NEWS file generation (Daniel P. Berrange),<br />
        Fix build in separate build directory (Jiri Denemark),<br />
        Incorrect error message in virDomainNetDefParseXML (Florian Vichot),<br />
        Fix a few 'make rpm' breakages (Daniel Veillard),<br />
        Pass remote_message_header to the dispatch functions. (Chris Lalancette),<br />
        Fix up some warnings from stream DEBUG statements. (Chris Lalancette),<br />
        Fix apibuild.py warnings (Matthias Bolte),<br />
        Change signature of remoteSendStreamData() to fix compile warning (Matthias Bolte),<br />
        Add virStorageFileGetMetadata() helper (Mark McLoughlin),<br />
        Move virStorageGetMetadataFromFD() to libvirt_util (Mark McLoughlin),<br />
        Split virStorageGetMetadataFromFD() from virStorageBackendProbeTarget() (Mark McLoughlin),<br />
        Move file format enum to libvirt_util (Mark McLoughlin),<br />
        Remove hand-crafted UUID parsers (Daniel P. Berrange),<br />
        Helper functions for processing data streams in libvirtd (Daniel P. Berrange),<br />
        Standardize debugging messages in QEMU monitor code (Daniel P. Berrange),<br />
        Remove low level monitor APIs from header file (Daniel P. Berrange),<br />
        Rename qemudMonitorSendCont to qemuMonitorStartCPUs (Daniel P. Berrange),<br />
        Pull QEMU monitor interaction out to separate file (Daniel P. Berrange),<br />
        util.h needs libvirt.h for virConnectPtr (Mark McLoughlin),<br />
        Fix API doc extractor to stop munging comment formatting (Daniel P. Berrange),<br />
        Fix secret_driver compile warning, bug. (Charles Duffy),<br />
        ESX remove phantom mode (Matthias Bolte),<br />
        ESX replace esxUtil_EqualSuffix() with virFileHasSuffix() (Matthias Bolte),<br />
        ESX Whitespace cleanup (Matthias Bolte),<br />
        Fix up "make syntax-check" after the tree restructuring. (Chris Lalancette),<br />
        Introduce virStrncpy. (Chris Lalancette),<br />
        Ignore auto-generated header file (Daniel P. Berrange),<br />
        Remove an unnecessary variable from remoteIOReadMessage(). (Chris Lalancette),<br />
        Remove auto-generated header file from repo (Daniel P. Berrange),<br />
        Move example XML files into examples/xml (Daniel P. Berrange),<br />
        Remove all generated docs from source control (Daniel P. Berrange),<br />
        Fix missing data file in qemuhelpdata (Daniel P. Berrange),<br />
        Misc syntax-check fixes (Daniel P. Berrange),<br />
        Move remote protocol definition into src/remote/ (Daniel P. Berrange),<br />
        Move all shared utility files to src/util/ (Daniel P. Berrange),<br />
        Move all XML configuration handling to src/conf/ (Daniel P. Berrange),<br />
        Re-arrange python generator to make it clear what's auto-generated (Daniel P. Berrange),<br />
        Remove obsolete files (Daniel P. Berrange),<br />
        Move docs/examples into examples/ (Daniel P. Berrange),<br />
        Remove unused images from docs/ directory (Daniel P. Berrange),<br />
        Rename daemon main code (Daniel P. Berrange),<br />
        Move config files to align with driver sources (Daniel P. Berrange),<br />
        Move virsh into tools/ directory (Daniel P. Berrange),<br />
        Move security drivers to src/security/ (Daniel P. Berrange),<br />
        Move secret driver into src/secret/ (Daniel P. Berrange),<br />
        Move netcf interface driver into src/interface/ (Daniel P. Berrange),<br />
        Move network driver into src/network (Daniel P. Berrange),<br />
        Move remote driver to src/remote/ (Daniel P. Berrange),<br />
        Move test driver into src/test/ (Daniel P. Berrange),<br />
        Move node device drivers to src/node_device/ (Daniel P. Berrange),<br />
        Move storage drivers into src/storage/ (Daniel P. Berrange),<br />
        Move OpenVZ driver to src/openvz/ (Daniel P. Berrange),<br />
        Move UML driver to src/uml/ (Daniel P. Berrange),<br />
        Move QEMU driver to src/qemu/ (Daniel P. Berrange),<br />
        Move LXC driver into src/lxc/ (Daniel P. Berrange),<br />
        Move xen driver code into src/xen/ directory (Daniel P. Berrange),<br />
        Rename qemud/ directory to daemon/ (Daniel P. Berrange),<br />
        Refactor libvirt.spec to allow client-only builds (Daniel P. Berrange)
        </li></ul>
        <h3>0.7.1: Sep 15 2009</h3>
        <ul><li>New features:<br />
        Add support for encrypted (qcow) volume creation. (Miloslav Trmač),<br />
        Secret manipulation public API (Miloslav Trmač),<br />
        Multipath storage support module (Dave Allan),<br />
        VBox add Storage Volume support (Pritesh Kothari),<br />
        Support configuration of huge pages in guests (Daniel P. Berrange),<br />
        Support new PolicyKit 1.0 API (Daniel P. Berrange),<br />
        Compressed save image format for Qemu (Chris Lalancette, Charles Duffy
        and Jim Meyering),<br />
        QEmu add host PCI device hotplug support (Mark McLoughlin)
      </li><li>Documentation:<br />
        Minor comment changes (Laine Stump),<br />
        Fix up virNodeGetCellsFreeMemory (Chris Lalancette),<br />
        Fix some typos and remove unhelpful acronyms in QEMU docs (Daniel P. Berrange),<br />
        Add documentation about the QEMU driver security features (Daniel P. Berrange),<br />
        Remove 'the-the' typo in docs (Daniel P. Berrange),<br />
        Fix some URLs in virsh manpage (Mark McLoughlin),<br />
        Add link to AbiCloud web management system (Daniel P. Berrange),<br />
        Update logging documentation (Amy Griffis)
      </li><li>Portability:<br />
        Fix win32 platform build (Daniel P. Berrange)
      </li><li>Bug fixes:<br />
        VBox bug when starting machine from old versions (Pritesh Kothari),<br />
        ESX avoid potential leaks (Matthias Bolte),<br />
        Fix more OOM handling bugs (Daniel P. Berrange),<br />
        Fix logging buffer overrun read (Daniel P. Berrange),<br />
        Fix misc thread locking bugs / bogus warnings (Daniel P. Berrange),<br />
        Fix regression from "Avoid polling on FDs with no events" (Chris Lalancette),<br />
        Close logfile fd after spawning qemu (Ryota Ozaki),<br />
        Check for libssh2 &gt;= 1.0 for phy driver (Maximilian Wilhelm),<br />
        Avoid another leak in src/xend_internal.c (Matthias Bolte),<br />
        Avoid a leak in xenDaemonLookupByID (Matthias Bolte),<br />
        VBox fix minor bugs in display and added OOM checks (Pritesh Kothari),<br />
        Some close/fclose/closedir calls are missing (Matthias Bolte),<br />
        lxc_container.c: avoid a leak on error paths (Jim Meyering),<br />
        Fix several memory leaks (Ryota Ozaki),<br />
        Fix a memory leak in virsh (Laine Stump),<br />
        Fix ID field in virDomainPtr after starting Xen VM (Daniel P. Berrange),<br />
        Fix memory leak of monitor character device (Daniel P. Berrange),<br />
        Automatically set correct ownership of QEMU state directories (Daniel P. Berrange),<br />
        Avoid polling on FDs with no events enabled (Daniel P. Berrange),<br />
        esx_vi: return -1 upon failure, as intended (Matthias Bolte),<br />
        python: let libvirt_virConnectDomainEventCallback indicate success (Jim Meyering),<br />
        uml_conf.c: don't return an uninitialized pointer (Jim Meyering),<br />
        storage_backend.c: assure clang that inputvol can't be NULL (Jim Meyering),<br />
        libvir.c: avoid NULL dereference in virStoragePoolSetAutostart (Jim Meyering),<br />
        lxc: avoid NULL dereference upon getmntent failure (Jim Meyering),<br />
        storage_backend_fs: avoid NULL dereference on opendir failure (Jim Meyering),<br />
        Fix bugs in virDomainMigrate v2 code. (Chris Lalancette),<br />
        VMware ESX: Don't warn on some query parameter (Matthias Bolte),<br />
        Don't blindly reorder disk drives (Daniel P. Berrange),<br />
        Fix sexpr2string() to handle empty list. (Jim Fehlig),<br />
        Fix driver entry table for UML numa APIs (Daniel P. Berrange),<br />
        Fix crash in virsh vol-key command (Pritesh Kothari),<br />
        517157 fix selinux problem with images on NFS (Darryl L. Pierce),<br />
        Fix phypOpen() escape_specialcharacters (Mattias Bolte),<br />
        Power Hypervisor: fix potential segfault (Mattias Bolte),<br />
        Fix bridge/tap system error reporting (Mark McLoughlin),<br />
        Reset PCI host devices after hot-unplug (Mark McLoughlin),<br />
        Reset unmanaged PCI host devices before hotplug (Mark McLoughlin),<br />
        Fix up connection reference counting. (Chris Lalancette),<br />
        Fix LXC driver crash when kernel doesn't support clone (Daniel P. Berrange),<br />
        Make LXC / UML drivers robust against NUMA topology brokenness (Daniel P. Berrange),<br />
        Run 'cont' on successful migration finish. (Chris Lalancette),<br />
        Fix QEMU domain status after restore. (Chris Lalancette),<br />
        Handle kernels with no ipv6 support (Mark McLoughlin),<br />
        Set perms on /var/lib/libvirt/boot to 0711 (Mark McLoughlin),<br />
        chown kernel/initrd before spawning qemu (Mark McLoughlin),<br />
        Several fixes to libvirtd's log setup (Amy Griffis),<br />
        Fix memleak if esxOpen fails (Matthias Bolte)
      </li><li>Improvement:<br />
        support lzop save compression for qemu (Charles Duffy),<br />
        VBox 3.0.6 API change support (Pritesh Kothari),<br />
        Add UUID definition required by storage encryption import (Daniel P. Berrange),<br />
        Make secrets RNG more strict (Daniel P. Berrange),<br />
        Fill in secret UUID for qcow encryption (Daniel P. Berrange),<br />
        Add usage type/id as a public API property of virSecret (Daniel P. Berrange),<br />
        Fix UUID handling in secrets/storage encryption APIs (Daniel P. Berrange),<br />
        Save vcpuinfo in status file (Daniel P. Berrange),<br />
        Restart libvirtd upon RPM upgrade (Daniel P. Berrange),<br />
        Add support for qcow encrypted volumes to qemu. (Miloslav Trmač),<br />
        Provide missing passphrase when creating a volume. (Miloslav Trmač),<br />
        Add virsh commands for secrets APIs (Miloslav Trmač),<br />
        Local file implementation of secret driver API (Miloslav Trmač),<br />
        Mask out flags used internally for virSecretGetValue (Miloslav Trmač),<br />
        Add &lt;usage&gt; to &lt;secret&gt; docs (Miloslav Trmač),<br />
        also allow use of XZ for Qemu image compression (Jim Meyering),<br />
        Support relabelling of USB and PCI devices (Daniel P. Berrange),<br />
        Add helper APIs for iterating over PCI device resource files (Daniel P. Berrange),<br />
        Add helper module for dealing with USB host devices (Daniel P. Berrange),<br />
        Test that domain-specific qemu machine types are used correctly (Mark McLoughlin),<br />
        Probe machine types from kvm binary too (Mark McLoughlin),<br />
        Look up machine types from all domains in qemudGetOldMachines() (Mark McLoughlin),<br />
        Test qemu machine aliases (Mark McLoughlin),<br />
        Add qemu -help test data for qemu-kvm-0.11.0-rc2 (Mark McLoughlin),<br />
        Add a more featureful qemu capabilities test data (Mark McLoughlin),<br />
        Add arm arch to capabilities schema (Mark McLoughlin),<br />
        Update capabilities schema to allow multiple machines per domain (Mark McLoughlin),<br />
        Add esx and tcp migration uri transports to capabilities schema (Mark McLoughlin),<br />
        Reintroduce support for lzop compression (Charles Duffy),<br />
        build: update gnulib submodule to latest (Jim Meyering),<br />
        Add flags and requires for Multipath storage (Daniel Veillard),<br />
        ESX raise error if UUID parse failed (Matthias Bolte),<br />
        ESX add domain undefine based on esxVI_UnregisterVM (Matthias Bolte),<br />
        ESX add esxGetCapabilities() with basic defaults (Matthias Bolte),<br />
        Switch Power Hypervisor to libssh2 (Eduardo Otubo),<br />
        Allow libvirtd to RPC to external libvirtd (Chris Lalancette),<br />
        Add support for setting disk drive serial numbers (Daniel P. Berrange),<br />
        VBox support for defining/dumping video devices (Pritesh Kothari),<br />
        Generic parsing support for video acceleration (Pritesh Kothari),<br />
        VMware ESX: Allow ethernet address type 'vpx' (Matthias Bolte),<br />
        Support for getting/setting number of cpus in VBox (Pritesh Kothari),<br />
        Make handling of monitor prompts more general. (Miloslav Trmač),<br />
        Attach encryption information to virDomainDiskDef. (Miloslav Trmač),<br />
        Recognize encryption format of qcow volumes. (Miloslav Trmač),<br />
        Attach encryption information to virStorageVolDef. (Miloslav Trmač),<br />
        Add volume encryption information handling. (Miloslav Trmač),<br />
        Secret manipulation API docs refresh and wire up python generator (Miloslav Trmač),<br />
        Secret manipulation remote client (Miloslav Trmač),<br />
        Secret manipulation libvirtd wire protocol and remote dispatcher (Miloslav Trmač),<br />
        Secret manipulation public API implementation (Miloslav Trmač),<br />
        Secret manipulation internal API (Miloslav Trmač),<br />
        Add test for recently fixed crash with latest XenD (Daniel P. Berrange),<br />
        Don't expose 'vnet%d' to the user (Mark McLoughlin),<br />
        Maintain a list of active PCI hostdevs and use it in pciResetDevice() (Mark McLoughlin),<br />
        Simplify PCI hostdev prepare/re-attach using a pciDeviceList type (Mark McLoughlin),<br />
        Use pci_addr=auto with QEMU's pci_add monitor command (Mark McLoughlin),<br />
        Check active domain hostdevs before allowing PCI reset (Mark McLoughlin),<br />
        Allow pciResetDevice() to reset multiple devices (Mark McLoughlin),<br />
        Improve PCI host device reset error message (Mark McLoughlin),<br />
        Reset and re-attach PCI host devices on guest shutdown (Mark McLoughlin),<br />
        Allow PM reset on multi-function PCI devices (Mark McLoughlin),<br />
        Detect KVM's PCI device assignment support (Mark McLoughlin),<br />
        Split virDomainMigrate into functions. (Chris Lalancette),<br />
        Consolidate code for parsing the logging env (Amy Griffis)
      </li><li>Cleanups:<br />
        Remove accidentally added UUID re-definition in storage schema (Daniel P. Berrange),<br />
        ESX cleanup of CPU model strings (Matthias Bolte),<br />
        Fix use of dlopen modules (Daniel P. Berrange),<br />
        Consolidate "cont" into qemudMonitorSendCont() (Miloslav Trmač),<br />
        Cleanup sec driver error reporting to use virReportSystemError (Daniel P. Berrange),<br />
        Port QEMU driver to use USB/PCI device helpers (Daniel P. Berrange),<br />
        Simplify and fix qemudCanonicalizeMachine() (Mark McLoughlin),<br />
        Split up qemudGetOldMachines() (Mark McLoughlin),<br />
        Re-factor qemu test machine allocation code (Mark McLoughlin),<br />
        Canonicalize the qemu machine type in qemuxml2argvtest (Mark McLoughlin),<br />
        Dump qemu driver capabilities if test debugging enabled (Mark McLoughlin),<br />
        Fix formatting of machine types in capabilities XML (Mark McLoughlin),<br />
        qemu_driver.c: factor out more duplication (Jim Meyering),<br />
        Deprecate lzma and lzop in favor of xz, add dep (Daniel Veillard),<br />
        qemu_driver.c: factor out duplication in compression-type handling (Jim Meyering),<br />
        openvz_conf.c: remove dead store to "p"; use strchrnul (Jim Meyering),<br />
        Remove some tabs used for indent (Daniel Veillard),<br />
        Updated a number of localizations and regenerated (Daniel Veillard),<br />
        Add a missing comment (Miloslav Trmač),<br />
        Fix a pasto in storage_encryption_conf.c (Miloslav Trmač),<br />
        xm_internal.c: remove four useless comparisons after strchr (Jim Meyering),<br />
        xm_internal.c: remove dead increment of "data" (Jim Meyering),<br />
        network_driver.c: remove dead store to "err" (Jim Meyering),<br />
        iptables.c: remove dead store to "s" (Jim Meyering),<br />
        util.c: avoid dead store to "flag" (Jim Meyering),<br />
        domain_conf.c: remove two dead stores (Jim Meyering),<br />
        xm_internal.c: remove two ret=... dead stores (Jim Meyering),<br />
        xm_internal.c: remove dead stores of local, "type" (Jim Meyering),<br />
        network_conf.c: remove dead store to "err" (Jim Meyering),<br />
        openvz_driver.c: avoid dead store to "err" (Jim Meyering),<br />
        xend_internal.c: Remove two dead stores to "ret" (Jim Meyering),<br />
        storage_driver.c: remove two dead stores to "backend" (Jim Meyering),<br />
        qemu_conf.c: add a comment suggesting why we leave a dead-store (Jim Meyering),<br />
        hash.c: remove a dead store (Jim Meyering),<br />
        interface_conf.c: remove a dead-store and declaration (Jim Meyering),<br />
        eventtest.c: detect write failure and avoid dead stores (Jim Meyering),<br />
        openvz_conf.c: Remove dead store to copy_fd (Jim Meyering),<br />
        storage_backend_logical.c: appease clang: remove useless increment (Jim Meyering),<br />
        ESX simplify SOAP request and response handling (Matthias Bolte),<br />
        ESX use virXPathNode*() to simplify XPath handling (Matthias Bolte),<br />
        ESX: make esxVI_GetVirtualMachineIdentity() robust (Matthias Bolte),<br />
        ESX: Fix VMX path parsing and URL encoding (Matthias Bolte),<br />
        VBox driver cleanups (Pritesh Kothari),<br />
        PHYP driver cleanups (Daniel Veillard),<br />
        Move QEMU monitor socket in /var/lib/libvirt/qemu (Daniel P. Berrange),<br />
        xen_internal.c: remove two unused local variables (Jim Meyering),<br />
        mdns.c: remove dead initialization (Jim Meyering),<br />
        node_device_conf.c: remove dead initialization (Jim Meyering),<br />
        openvz_conf.c: don't use undefined local, "net" (Jim Meyering),<br />
        test.c: don't use undefined local, "def" (Jim Meyering),<br />
        remote_internal.c: appease clang (Jim Meyering),<br />
        infra: define ATTRIBUTE_NONNULL to mark non-NULL parameters (Jim Meyering),<br />
        lxc: don't unlink(NULL) in main (Jim Meyering),<br />
        storage_conf.c: avoid overflow upon use of "z" or "Z" (zebi) suffix (Jim Meyering),<br />
        VBox cleanup and update of networking shutdown (Pritesh Kothari),<br />
        Box cleanup and update of networking XML functions (Pritesh Kothari),<br />
        Fix misc OOM bugs (Daniel P. Berrange),<br />
        Misc fixes to secrets API code (Daniel P. Berrange),<br />
        Only add glusterfs dep for Fedora &gt;= 11 (Daniel P. Berrange),<br />
        Remove redundant base64 include file (Daniel P. Berrange),<br />
        Don't assume buffered output echoes the command. (Miloslav Trmač),<br />
        Update chinese, polish and spanish localizations (Daniel Veillard),<br />
        OpenVZ: accept NULL as type for GetMaxVCPUs. (Chris Lalancette),<br />
        Remove use of strncpy in qemudExtractMonitorPath. (Chris Lalancette),<br />
        Refactor policycode auth code to avoid compiler warnings (Daniel P. Berrange),<br />
        spec file: add URL to Source tag (Mark McLoughlin),<br />
        Small fixes for qemu save compression. (Chris Lalancette),<br />
        Fix thinko in PCI hostdev detach (Mark McLoughlin),<br />
        Revert changes to allow pciResetDevice() reset multiple devices (Mark McLoughlin),<br />
        Fix list updating after disk/network/hostdev hot-unplug (Mark McLoughlin),<br />
        Re-name remote_internal.c:driver to remote_driver (Mark McLoughlin),<br />
        Cosmetic change to 'virsh nodedev-list --tree' output (Mark McLoughlin),<br />
        Re-factor hostdev hotplug (Mark McLoughlin),<br />
        Remove a duplicated assignment in Xen PCI parsing. (Chris Lalancette),<br />
        Fix up a few minor indentation issues. (Chris Lalancette),<br />
        Fix phyp escape_specialcharacters. (Chris Lalancette),<br />
        Make openvzGetVPSUUID take a len. (Chris Lalancette),<br />
        Minor cleanup of error path for c_oneVmInfo. (Chris Lalancette),<br />
        Fix up a whitespace in comments in src/console.c (Chris Lalancette),<br />
        Fix up a stray whitespace in virHashGrow. (Chris Lalancette),<br />
        Remove unsafe strncpy from esx_vmx.c (Chris Lalancette),<br />
        Cleanup VIR_LOG_DEBUG parsing in eventtest (Amy Griffis),<br />
        Tighten libvirt's parsing of logging env (Amy Griffis),<br />
        Cleanup structure name naming (Matthias Bolte),<br />
        Add proper OOM reporting for esxDomainGetOSType (Matthias Bolte)
      </li></ul>
        <h3>0.7.0: Aug  5 2009</h3>
        <ul><li>New features: Interface implementation based on netcf (Laine Stump,
      Daniel Veillard), Add new net filesystem glusterfs (Harshavardhana),
      Initial VMWare ESX driver (Matthias Bolte), Add support for VBox
      3 and event callbacks on vbox (Pritesh Kothari), First version
      of the Power Hypervisor driver (Eduardo Otubo), Run QEMU guests
      as an unprivileged user (Daniel P. Berrange), Support cgroups
      in QEMU driver (Daniel P. Berrange), QEmu hotplug NIC support
      (Mark McLoughlin), Storage cloning for LVM and Disk backends(Cole
      Robinson), Switching to GIT (Jim Meyering)</li><li>Documentation: Typo and comment fixes (Aron Griffis),
      Fix virCapabilitiesDefaultGuestMachine documentation. (Chris
      Lalancette), ESX Scheduler documentation and cleanup (Matthias
      Bolte), Update the java bindings page (Bryan Kearney), Added
      Matthias Bolte to AUTHORS list (Daniel Veillard), doc: clone+build
      instructions (Jim Meyering), docs: say that the old repository
      is deprecated... (Jim Meyering), document tcp listen and raw
      wire option (Guido Günther), Fix docs and code disagreements
      for character devices. (Cole Robinson), Fix documentation of
      virStoragePoolUndefine return (Thomas Treutner), Fix gitweb link on
      download page. (Cole Robinson), update download informations after
      switch to git (Daniel Veillard), Update links to bugzilla (Garry
      Dolley), Update the links for RHEL libvirt bugzillas (Garry Dolley)</li><li>Portability: Xen Inotify support needs sys/inotify.h
      (Maximilian Wilhelm), Workaround for broken GCC in Debian Etch
      (Maximilian Wilhelm), LXC driver requires sched.h and unshare()
      (Maximilian Wilhelm), Configure UML support only if sys/inotify.h
      present (Maximilian Wilhelm), Fix libcurl automatic check and ESX
      status (Maximilian Wilhelm), Enable ESX driver build on Mingw32
      (Daniel P. Berrange), Fix build on mingw32 by disabling netcf
      (Daniel P. Berrange), Reduce glusterfs dependency to 2.0.1
      (Mark McLoughlin), Desactivate phyp build and indicate libssh
      builreq (Daniel Veillard), Fix misc Win32 compile warnings
      (Daniel P. Berrange), Rename variable for compilation in Mingw32
      (end) (Laine Stump), Rename variable for compilation in Mingw32
      (Laine Stump), rpm spec cleanup and split off client only package
      (Daniel Veillard)</li><li>Bug fixes: Add uniqueness checking for LXC define/create methods
      (Daniel P. Berrange), Fix removal of transient VMs when LXC aborts
      (Daniel P. Berrange), Don't try to activate cgroups if not present
      for LXC (Daniel P. Berrange), Refresh /etc/xen if inotify wasn't
      (Cole Robinson), Don't loose id on xen domain redefine (Cole
      Robinson), Fix memory leak in openvz driver (Daniel P. Berrange),
      Protected against potential crash scenarios (Daniel P. Berrange),
      Fix crash when attempting to shutdown inactive QEMU vm (Daniel
      P. Berrange), Fix PCIe FLR detection (Mark McLoughlin), Set perms
      on /var/lib/libvirt/images to 0711 (Mark McLoughlin), Fix problem
      writing QEMU pidfile (Daniel P. Berrange), Fix vcpupin on Xen
      problem (Henrik Persson), Fix RPM upgrades from F11 to F12 (Daniel
      P. Berrange), Fix deadlock in remote driver domain events (Daniel
      P. Berrange), qemu: fix monitor socket reconnection (Ryota Ozaki),
      Fix polkit/netcf disabling on older fedoras (Mark McLoughlin),
      Fix crashes in Xen capabilities code (Daniel P. Berrange),
      Always add -no-kvm and -no-kqemu, for qemu domains (Jim Paris),
      Avoid raising an internal error (Paolo Bonzini), Don't allow NULL
      paths for BlockStats and InterfaceStats (Cole Robinson), Don't
      leak vm-monitorpath on re-connect (Mark McLoughlin), Don't restore
      labels on shared/readonly disks (Daniel P. Berrange), Ensure spawned
      children have a stderr/out set to /dev/null if requested (Daniel
      P. Berrange), Ensure test:/// URIs get routed to the non-privileged
      libvirtd (Daniel P. Berrange), fix another failing "make distcheck"
      (qemuhelptest) (Jim Meyering), Fix an uninitialized variable
      in Unix socket open (Jun Koi), Fix configure flags in spec file
      (Daniel Veillard), Fix error reporting for security driver over
      remote protocol (Daniel P. Berrange), fix failing "make distcheck"
      (Jim Meyering), Fix free of unitialized data upon PCI open fail
      (Daniel P. Berrange), Fix informations about previous git server
      (Daniel Veillard), Fix memory leaks in esxDomainDumpXML (Matthias
      Bolte), Fix multiple memory leaks in virsh (Laine Stump), Fix PCI
      device hotplug/unplug with newer QEMU (Daniel P. Berrange), Fix
      problem with QEMU monitor welcome prompt confusing libvirt after a
      libvirtd daemon restart with active guests (Daniel P. Berrange),
      Fix python examples to use read-write conn (Dan Kenigsberg), Fix
      reconnect bug for VBox (Pritesh Kothari), Fix SELinux denial during
      hotplug (Daniel P. Berrange), Fix typo in check for glusterfs format
      pools (Daniel P. Berrange), Fix typo in storage cloning (Daniel
      P. Berrange), qemu: Check driver is initialized up front, to avoid
      segfault. (Cole Robinson), qemu: Try multiple times to open unix
      monitor socket (Cole Robinson), Release conn lock before reporting
      errors (end) (Laine Stump), Release conn lock before reporting
      interface errors (Laine Stump), Remove the network backend if NIC
      hotplug fails (Mark McLoughlin), Set specific flags for glusterfs
      fs mounts (Harshavardhana), storage: disk: Default to 'ext2' for
      new volumes. (Cole Robinson), storage: disk: Fix parthelper '-g'
      option handling. (Cole Robinson), storage: disk: Fix segfault
      creating volume without target path (Cole Robinson), storage:
      Fix deadlock when cloning across pools. (Cole Robinson), Update
      modified mac address in place in virGetInterface (Laine Stump)</li><li>Improvements: Add an allocation unit when calling qemu-img
      (Ryota Ozaki), Improve diagnostics when pidfile writing fails
      (Daniel P. Berrange), Disable IPv6 on virtual networks (Daniel
      P. Berrange), Allow dnsmasq to provide DNS without DHCP (Daniel
      P. Berrange), Fix an initialization problem in previous patch
      (Aron Griffis), Remove MAX_TAP_ID and let kernel do numbering
      (Aron Griffis), Kernel command line support for UML (Ron Yorston),
      Activate the interface drivers, and cleanups (Daniel Veillard),
      Add an error code for conflicting mac addresses (Laine Stump),
      Add a test interface driver (Laine Stump), Add canonical machine
      name to capabilities output (Mark McLoughlin), add cd and pwd
      commands to virsh (Paolo Bonzini), Add checks for some NIC hotplug
      related features added in qemu-0.10.0 (Mark McLoughlin), Add
      domain autostart for LXC driver (Daniel P. Berrange), Add domain
      events support to LXC driver (Daniel P. Berrange), Add interface
      object list manipulation functions (Laine Stump), Add internal XML
      parsing/formatting flag (Mark McLoughlin), Add netcf XML schemas
      and test data (Daniel Veillard), Add new net filesystem glusterfs
      (Harshavardhana), Add NIC and hostnet names to domain state XML
      (Mark McLoughlin), Add no_verify query parameter to ESX URIs
      (Matthias Bolte), Add SCM_RIGHTS support to QEMU monitor code
      (Mark McLoughlin), Add support for attaching network/bridge NICs
      in QEMU driver (Mark McLoughlin), add support for netcf XML import
      and export (Daniel Veillard), Add support for network device detach
      (Mark McLoughlin), Add support for physical memory access for QEmu
      (Nguyen Anh Quynh), Add support for VBox 3 and event callbacks on
      vbox (Pritesh Kothari), Add the monitor type to the domain state
      XML (Mark McLoughlin), Add virCapsGuestMachine structure (Mark
      McLoughlin), Add virsh commands for network interface management
      (Laine Stump), Allow autostart of libvirtd to be disabled with
      LIBVIRT_AUTOSTART=0 (Daniel P. Berrange), Allow leading dots in VMX
      config entry names (Matthias Bolte), Assign names to qemu NICs and
      network backends (Mark McLoughlin), Basic qemu NIC hotplug support
      (Mark McLoughlin), build: adjust aclocal's search patch to prefer
      gnulib's m4 files. (Jim Meyering), build: automatically rerun
      ./bootstrap when needed (Jim Meyering), build: make autogen.sh use
      autoreconf -if (Jim Meyering), build: submodule machinery now works
      also when no tag is reachable (Jim Meyering), Canonicalize qemu
      machine types (Mark McLoughlin), Change code generator to give async
      event messages their own postfix (Daniel P. Berrange), Change the
      way client event loop watches are managed (Daniel P. Berrange),
      Decode incoming request header before invoking dispatch code
      (Daniel P. Berrange), Define an API for registering incoming message
      dispatch filters (Daniel P. Berrange), ESX driver accept VI API
      version 4.0 (Matthias Bolte), Fill in vCPU - pCPU current mapping,
      and vCPU cpuTime for QEMU (Daniel P. Berrange), generate ChangeLog
      from git logs into distribution tarball (Jim Meyering), Implement
      qemu dump capabilities (Paolo Bonzini), Implement schedular
      tunables API using cgroups (Daniel P. Berrange), Implement the
      new virinterface functions (Laine Stump), Make cgroups a little
      more efficient (Daniel P. Berrange), Make it easier to debug tests
      running programs (Daniel P. Berrange), Make qemuBuildHostNetStr()
      take tapfd as a string (Mark McLoughlin), Make QEMU cgroups use
      configurable (Daniel P. Berrange), Make qemuCmdFlags available in
      qemudDomainAttachDevice() (Mark McLoughlin), Move queuing of RPC
      replies into dispatch code (Daniel P. Berrange), Move vnet_hdr logic
      into qemudNetworkIfaceConnect() and export it (Mark McLoughlin),
      Netcf based interface driver implementation (Laine Stump), netcf
      XML validation and input and output tests (Daniel Veillard), Only
      probe qemu for machine types when binary changes (Mark McLoughlin),
      Place every QEMU guest in a private cgroup (Daniel P. Berrange),
      Probe for QEMU machine types (Mark McLoughlin), Probe QEMU directly
      for machine aliases if not found in capabilties (Mark McLoughlin),
      Public API for new virInterface functions (Laine Stump), python:
      Raise exceptions if virDomain*Stats fail. (Cole Robinson), Refactor
      cgroups to allow a group per driver to be managed directly (Daniel
      P. Berrange), Re-factor pci_add reply parsing and parse domain/bus
      numbers (Mark McLoughlin), Retain disk PCI address across libvirtd
      restarts (Mark McLoughlin), Retain PCI address from NIC attach
      (Mark McLoughlin), Run QEMU guests as an unprivileged user (Daniel
      P. Berrange), Separate code for encoding outgoing remote message
      headers (Daniel P. Berrange), Split generic RPC message dispatch
      code out from remote protocol API handlers (Daniel P. Berrange),
      Split out code for handling incoming method call messages
      (Daniel P. Berrange), storage: Break out actual raw cloning to
      separate function. (Cole Robinson), storage: cleanup: do away with
      'createFile' (Cole Robinson), storage: disk: Use capacity, not
      allocation, when creating volume. (Cole Robinson), storage: Don't
      try sparse detection if writing to block device. (Cole Robinson),
      storage: Implement 'CreateBlockFrom' helper. (Cole Robinson),
      storage: Implement CreateVolFrom for logical and disk backend. (Cole
      Robinson), storage: Move most of the FS creation functions to
      common backend. (Cole Robinson), storage: Refactor FS backend
      'create' function choosing. (Cole Robinson), Store the interface
      vlan number in the domain state (Mark McLoughlin), Support video
      element for QEMU guests (Daniel P. Berrange), Support video tag
      for defining VGA card properties (Daniel P. Berrange), Switch to
      using a unix socket for the qemu monitor (Mark McLoughlin), test:
      Generate net interface names when assigning XML. (Cole Robinson),
      test: Implement BlockStats and InterfaceStats (Cole Robinson),
      Use cgroups for block device whitelisting in QEMU guests (Daniel
      P. Berrange), Use enums for cgroup controller types / labels
      (Daniel P. Berrange), Use sendmsg() on QEMU monitor socket (Mark
      McLoughlin), Use virDomainChrTypeFromString() instead of open
      coding (Mark McLoughlin), Use virFileReadAll/virFileWriteStr for
      key cgroup read/write helpers (Daniel P. Berrange), virGetinterface
      matching of MAC and interface name (Laine Stump)</li><li>Cleanups: Fix configure checks from previous commits (Daniel
      P. Berrange), Avoid a warning if compiling without inotify
      (Daniel P. Berrange), Remove a stray semicolon (Daniel Veillard),
      Extend the ESX URL to habdle ports and GSX (Matthias Bolte), Fix
      escaping of 8-bit high characters (Daniel P. Berrange), , Remove
      ATTRIBUTE_UNUSED from flags to qemudDomainMigratePerform. (Chris
      Lalancette), Add a comment about setting errors after
      qemudStartVMDaemon(). (Chris Lalancette), Fix an erroneous
      debug error to KVM; it should read QEMU/KVM. (Chris Lalancette),
      Remove a stray semicolon in qemudDomainMigratePrepare2. (Chris
      Lalancette), Convert a few stray users of free() in libvirt.c
      to VIR_FREE(). (Chris Lalancette), Use virGetHostname instead
      of gethostname. (Chris Lalancette), Fix up a minor indentation
      issue with virDomainMigratePrepare. (Chris Lalancette), Fix up a
      silly typo in apibuild.py. (Chris Lalancette), Avoid warning when
      compiling without IFF_VNET_HDR (Maximilian Wilhelm), Capilize
      libvirt-client summary (Mark McLoughlin), Move ldconfig calls
      to libvirt-client %post/%postun (Mark McLoughlin), Convert NEWS
      to UTF-8 (Mark McLoughlin), Fix trailing whitespace in NEWS
      (Mark McLoughlin), No need to build require both python-devel
      and python (Mark McLoughlin), Remove executable perms from
      /etc/sysconfig/libvirtd (Mark McLoughlin), Use a %postun -p for
      one line scriptlet (Mark McLoughlin), Don't explicitly require
      libxml2 (Mark McLoughlin), Fix some unowned directories (Mark
      McLoughlin), Kill qemu BuildRequires (Mark McLoughlin), Enable
      netcf by default (Mark McLoughlin), Default to with_polkit
      (Mark McLoughlin), Make vbox support configurable (Mark
      McLoughlin), Build with --without-capng if capng is disabled
      (Mark McLoughlin), BuildRequires libcap-ng-devel not capng-devel
      (Mark McLoughlin), Drop curl host check when using ESX without
      check (Shahar Klein), Fix typo in xen capabilities code (Daniel
      P. Berrange), Add bare format string to printf-derivatives troubles
      (Laine Stump), Add phyp files to POTFILES, to make syntax-check
      happy. (Cole Robinson), avoid a make distcheck failure: distribute
      docs/schemas/interface.rng (Jim Meyering), avoid a make distcheck
      failure: distribute tests/interfaceschemadata/ (Jim Meyering), avoid
      a "make syntax-check" failure (Jim Meyering), build: do not emit
      a trailing blank line into VC'd file, NEWS (Jim Meyering), build:
      update from gnulib, for latest maint.mk (Jim Meyering), Clean up
      error handling in qemudDomainAttachNetDevice() (Mark McLoughlin),
      Cleanup qemu binary detection logic in qemudCapsInitGuest() (Mark
      McLoughlin), Commit newly generated docs, after changes from
      commit 2348cf. (Cole Robinson), Factor qemuBuildHostNetStr()
      out from qemuBuildCommandLine() (Mark McLoughlin), Factor
      qemuBuildNicStr() out from qemuBuildCommandLine() (Mark McLoughlin),
      Factor qemudMonitorSend() out of qemudMonitorCommandExtra() (Mark
      McLoughlin), Fix cgroup compile warnings (Daniel P. Berrange),
      Fix misc build problems due to new drivers (Daniel P. Berrange),
      Fix weird build problems due to autopoint overwriting gnulib m4
      (Daniel P. Berrange), Makefile.cfg: Rename to... (Jim Meyering),
      make .gnulib a submodule (Jim Meyering), make "make syntax-check"
      consistent with "git diff --check" (Jim Meyering), Minor qemu
      monitor coding style fixes (Mark McLoughlin), Prepare to use
      maint.mk from gnulib (Jim Meyering), Refactor incoming message
      handling to prepare for data stream support (Daniel P. Berrange),
      Refactor message sending to allow code reuse for data streams
      (Daniel P. Berrange), remove all .cvsignore files (Jim Meyering),
      remove all trailing blank lines (Jim Meyering), Remove some unused
      variables and cut long lines (Daniel Veillard), Remove trailing
      blank lines (Daniel Veillard), Rename a bunch of internal methods
      to clarify their meaning (Daniel P. Berrange), Rename 'direction'
      to 'type' in remote_message_header (Daniel P. Berrange), Report
      the object name on lookup error (Daniel Veillard), Simplify remote
      driver error reporting (Daniel P. Berrange), skip some of gnulib's
      new rules (Jim Meyering), use automake-1.11's silent-rules
      option, when possible (Jim Meyering), use gnumakefile and
      maintainer-makefile modules from gnulib (Jim Meyering)</li></ul>
        <h3>0.6.5: Jul  3 2009</h3>
        <ul><li>New features: create storage columes on disk backend (Henrik Persson),
          drop of capabilities based on libcap-ng when possible (Daniel
          Berrange)</li><li>Portability: fix build on non-Linux targets (Daniel Berrange)</li><li>Documentation: typo and english fixes (Runa Bhattacharjee and
          Garry Dolley), Docs on extending APIs (Dave Allan), cleanup
          of debug and logging documentation (Amy Griffis), add
          HACKING doc to the website (Daniel Berrange),
          documentation for OpenNebula driver (Abel Miguez Rodriguez)</li><li>Bug fixes: forbid autostart on transcient networks,
          xen device removal crash (Daniel Berrange), re-detection of
          transient VMs after libvirtd restart(Daniel Berrange),
          bug in virFindFileInPath (Daniel Berrange), handle new
          availheap sysctl in Xen (Daniel Berrange), allow USB hostdev
          product 0 (Cole Robinson), cleanup when creating a storage pool
          fails (Henrik Persson), domain id fix on redefinition in
          test driver (Cole Robinson), fix raw storage allocation (Cole
          Robinson), memory reporting for inactive qemu drivers (Cole
          Robinson), segfault if storage pool has no type attribute (Cole
          Robinson), OpenNebula compilation issues (Javier Fontan),
          dominfo command without security driver (Daniel Berrange),
          domain state problems after migration or destroy (Federico
          Simoncelli), leak in node device parsing (Dave Allan),
          storage pool definitions reading at startup (Cole Robinson),
          bogus WWN in NPIV support (David Allan), avoid a segfault with
          recent Xen (Sascha), cope with libnuma failures on weird
          topologies (Dan Berrange), crash in QEMU driver with bad capabilities
          data (Dan Berrange), trying to re-create a pool should not destroy
          it (Dave Allan), endless loop in node device XML dump (Cole Robinson),
          Re-label shared and readonly images (Dan Berrange)</li><li>Improvements: create and destroy NPIV support (David Allan),
          networking in UML driver (Daniel Berrange), HAL driver restart
          thread safety (Daniel Berrange), capabilities and nodeinfo
          APIs for LXC (Daniel Berrange), iNUMA API for VBox (Daniel Berrange),
          dynamically search and use kvm-img qemu-img or qcow-create (Doug
          Goldstein), fix qemu and kvm version parsing (Mark McLoughlin),
          serial number for HAL storage (Dave Allan), improve error reporting
          for virConnectOpen URIs (Daniel Berrange), include OS driver name
          in device XML (Daniel Berrange), fix qemu command flags fetching
          (Cole Robinson), check that qemu support -drive format= (Cole
          Robinson), improve emulator detection (Cole Robinson), changes
          to config parser to accommodate VMX syntax (Matthias Bolte),
          update network schemas and driver for missing elements (Satoru SATOH),
          avoid changing file context if not needed (Tim Waugh),
          skip labelling if no src path (Cole Robinson), add arm emulation
          if qemu-system-arm is present (C.J. Adams-Collier)</li><li>Cleanups: daemon check logging env variables (Daniel Berrange),
          User Mode Linux start and stop cleanups (Daniel Berrange),
          share the NUMA api implementations (Daniel Berrange), storage
          module dependancies (Dave Allan), refactor storage XML parsing
          (Cole Robinson), big cleanup of logging code (Amy Griffis),
          superfluous % on format (Matthias Bolte), cleanups and updates
          on OpenNebula driver (Daniel Berrange and Abel Miguez Rodriguez)</li></ul>
        <h3>0.6.4: May 29 2009</h3>
        <ul><li>New features: new API virStorageVolCreateXMLFrom (Cole Robinson),
          full VBox graphic capabilities (Pritesh Kothari), Interface config
          APIs (Laine Stump), APIs for domain XML conversions (Daniel
          Berrange), initial version of OpenNebula driver (Abel Miguez
          Rodriguez)</li><li>Portability: better compiler warning selection (Daniel Berrange),
          Win32 portability fixes (Daniel Berrange)</li><li>Documentation: documentation for &lt;sound&gt; device XML format (Cole
          Robinson), storage format documentation fixes (Ryota Ozaki),
          docs for XML conversion APIs (Daniel Berrange), inconsistencies
          in storage volume docs and schemas (Ryota Ozaki)</li><li>Bug fixes: fix hostdev managed handling (Mark McLoughlin),
          lxc_controller should not cash without args (Guido Gunther),
          bug fixes in I/O routines (Guido Gunther), fix migrationsave/restore
          for QEmu 0.10.0 (Daniel Berrange), avoid crash on VBox init
          (Guido Gunther), fix dev and cgroup init in LXC (Ryota Ozaki),
          QEmu startup fix (Cole Robinson), block node reboots from LXCs (Ryota
          Ozaki), QEmu argv detection fix for recent kvm (Daniel Berrange),
          fix watch/timer event deletion (Daniel Berrange), fix XML escaping
          bug, various locking bugs (Daniel Berrange), avoid a deadlock in
          HAL nodedev driver (Cole Robinson), detection of node device media
          insert/eject (Cole Robinson), broken networking with new QEMU/KVM
          &gt;= 86 (Daniel Berrange), various fixes in domain and network
          startup error report (Cole Robinson), double free on unexpected
          client disconnect (Daniel Berrange)</li><li>Improvements: cleanups and doc on virExec (Cole Robinson), error
          reporting in QEmu migrations (Cole Robinson), better path and driver
          detection in VBox (Pritesh Kothari), avoid caching QEMU driver
          capabilities(Cole Robinson), multiple graphics elements definitions
          (Pritesh Kothari), LSB init header init.d improvements (Frederik
          Himpe), special erro code for invalid operations (Daniel Berrange),
          dlopen error logging (Daniel Berrange), fix UUID and name uniqueness
          (Daniel Berrange), improvement on VBox initialization (Pritesh
          Kothari and Dan Berrange), "Host only" and "Internal" network in VBox
          (Pritesh Kothari), add utility virExecDaemonize (Cole Robinson),
          enable bridges without IP (Ludwig Nussel), 'make -s' silencing
          (Daniel Berrange), test case for exercising the event loop (Daniel
          Berrange), virsh commands vol-clone and vol-create-from (Cole
          Robinson), new xend don't use [] around cpumaps (Tatsuro Enokura),
          add the CIL mutex lock checker (Daniel Berrange), fix some LXC
          error code (Amy Griffis), virInterface python bindings (Daniel
          Berrange), fix to the example code for event handling (Pritesh
          Kothari), always add location informations to logging (Daniel
          Berrange), python domain events example and binding (Daniel
          Berrange), PPC Qemu Machine Type update (Thomas Baker)</li><li>Cleanups: strings bug in virsh (Daniel Berrange), various cleanups
          in storage code (Cole Robinson), rpm spec cleanups, destructors
          data cleanups (Laine Stump), some QEmu code refactoring (Daniel
          Berrange), avoid dependancy on libcap (Daniel Berrange), python
          import cleanup (Cole Robinson), virAsprintf based cleanups in
          storage code (Cole Robinson), fix some direct stderr logging,
          OpenNebula driver cleanups (Daniel Berrange)</li></ul>
        <h3>0.6.3: Apr 24 2009</h3>
        <ul><li>New features: VirtualBox driver support (Pritesh Kothari),
          virt-xml-validate new command (Daniel Berrange)</li><li>Portability: patch to build on Centos (Joseph Shraibman),
          build breakage (Anton Protopopov), </li><li>Documentation: Linux Containers documentation (Serge Hallyn),
          improvement and updates of architecture pages, fix
          virNodeGetFreeMemory documentation to reflect reality,
          man page cleanups (Daniel Berrange), man page typo
          (Robert P. J. Day), VirtualBox Documentation (Pritesh Kothari),
          </li><li>Bug fixes: veth off-by-one error (Dan Smith), vcpupin to inactive
          Xen crash (Takahashi Tomohiro), virsh ttyconsole return value,
          use format= not fmt= on QEmu commandline (Mark McLoughlin),
          use UUID for internal domain lookups (Daniel Berrange), remote
          domain ID related bugs (Daniel Berrange), QEmu pidfile handling
          bugs (Daniel Berrange), network config handling on old Xen (Daniel
          Berrange)</li><li>Improvements: add SCSI storage rescan (David Allan), rootless
          LXC containers support improvements (Serge Hallyn), getHostname
          support for LXC (Dan Smith), cleanup and logging output of some
          domain functions (Guido Günther), drop pool lock when allocating
          volumes (Cole Robinson), LXC handle kernel without CLONE_NEWUSER
          support (Serge Hallyn), cpu pinning on defined Xen domains (Takahashi
          Tomohiro), dynamic bridge names support (Soren Hansen), LXC use
          of private /dev/pts when available (Daniel Berrange),
          virNodeDeviceCreateXML and virNodeDeviceDestroy entry points
          (Dave Allan)</li><li>Cleanups: don't hardcode getgrnam_r buffer to 1024 bytes (Guido
          Günther), qemudBuildCommandLine API cleanup (Daniel Berrange),
          </li></ul>
        <h3>0.6.2: Apr  3 2009</h3>
        <ul><li>New features: support SASL auth for VNC server (Daniel Berrange),
          memory ballooning in QEMU (Daniel Berrange), SCSI HBA storage pool
          support (Dave Allan), PCI passthrough in Xen driver (Daniel
          Berrange)</li><li>Portability: be more flexible in QEmu binaries paths (Daniel
          Berrange), Mingw portability fixes (Daniel Berrange),</li><li>Documentation: add security attributes in RNG schemas, cleanup
          of architecture docs, missing disk bus values in RNG schemas,</li><li>Bug fixes: tap vs vbd type on block detach (Cole Robinson and
          Takahashi Tomohiro), bad free on storage volume error (Daniel
          Berrange), maplenght computations in remote driver (Daniel Berrange),
          event dispatching in the daemon (Daniel Berrange), virDomainSetVcpus
          deadlock (Daniel Berrange), save deadlock in test driver (Cole
          Robinson), fix timing of security driver init (Cole Robinson),
          forbid readonly connections from dumping the XML safe info (Cole
          Robinson), file descriptor leak on remote access,
          fix labelling of shared/readonly devices (Dan Walsh),
          virsh missing auth on shell commands (Matthias Bolte),
          avoid zombie on exec pipe errors (Ryota Ozaki),
          memory leak in virNodeDeviceGetParent (Daniel Berrange),
          URI check in migration (Daniel Berrange), various memory bug fixes
          (Daniel Berrange), python bindings generator fix (Daniel Berrange),
          NUMA memory fixes (Daniel Berrange), various svirt fixes (Daniel
          Berrange), fix sparse volume allocation reporting (Cole Robinson),
          test driver domain restore return value (Cole Robinson),
          do not lose file format info on volume refresh (Cole Robinson)</li><li>Improvements: get CPU usage info for LXC (Ryota Ozaki), fix domain
          RNG to add ac97 and tests (Pritesh Kothari), OpenVZ support for
          non-template filesystem root (Florian Vichot), improve arch
          capabilities generation (Daniel Berrange), modularization of spec
          file (Ryota Ozaki), better error reports in SEXPR generation (Daniel
          Berrange), support for vifname parameter in VIF config (Daniel
          Berrange), localtime handling for new xen (Daniel Berrange),
          error reporting/ verification of security labels (Dan Walsh),
          add --console arg for create and start virsh commands (Daniel
          Berrange), refresh volume alloc/capacity when dumping XML (Cole
          Robinson)</li><li>Cleanups: FILE * leaks removal, unused parameters flagging
          (Maximilian Wilhelm), switch to pre-C99 struct initialization
           for drivers (Chris Lalancette), symlinks resolving cleanup (Daniel
           Berrange)</li></ul>
        <h3>0.6.1: Mar  3 2009</h3>
        <ul><li>New features: new APIs for Node device detach reattach and reset
          (Mark McLoughlin), sVirt mandatory access control support (James
          Morris and Dan Walsh)</li><li>Portability: non gcc toolchain (John Levon), gcc-4.4 warnings fixes
          (Mark McLoughlin), fix build without LXC and QEmu (Jim Meyering)</li><li>Documentation: man page bugzilla URL (Mark McLoughlin), typo
          in domain format (Jesse Farinacci), clock offset fix (Mark
          McLoughlin), hostdev description typo (Mark McLoughlin), static
          host IP (Charles Duffy), new example program (David Allan)</li><li>Bug fixes: NULL dereference in LXC (Jim Meyering), fix domain
          error reporting (John Levon), fix loop of libvirtd --timeout
          (Daniel Berrange), limit history to 500 to restrict virsh memory
          (Daniel Berrange), wrong lvm volume format check (Cole Robinson),
          I/O error in daemon and associated remote acces crash (Daniel
          Berrange), fix autostart of session daemon (Daniel Berrange),
          restart guest on qemu migration failures (Chris Lalancette),
          config parsing leaks (Ryota Ozaki), DBus multithreading activation
          to avoid crashes (Daniel Berrange), mark defined network descriptions
          as persistent (Cole Robinson), qemu+tls handshake negotiation hang
          (Chris Lalancette)</li><li>Improvements: don't hardcode ssh port (Guido Günther), new test
          cases and testing infrastructure (Jim Meyering), improve the
          SExpr parser (John Levon), proper error reporting on xend
          shutdown command (John Levon), proper handling of errors when
          saving QEmu domains state (Guido Günther), revamp of the internal
          error memory APIs (John Levon), better virsh error reporting (John
          Levon), more daemon options to allow running multiple daemons (Jim
          Meyering), error handling when creating a QEmu domain (Guido Günther),
          fix timeouts in QEmu log reading (Guido Günther), migration with
          xend 3.3 fixes (John Levon), virsh XML dump flags cleanup (Cole
          Robinson), fix build with loadable drivers (Maximilian Wilhelm),
          internal XML APIs to read long long and hexa values (Mark
          McLoughlin), function to parse node device XML descriptions and
          associated test (Mark McLoughlin), generate network bridge names if
          not provided (Cole Robinson), recognize ejectable media in hostdev
          hal driver (Cole Robinson), integration of sVirt (Daniel Berrange)</li><li>Cleanups: printf NULL string checks (John Levon), remove uses of
          strerror and use virStrerror (Jim Meyering), remove redundant NULL
          assignments (Jim Meyering), QEmu driver logging and exec cleanups
          (Jim Meyering), many error handling cleanups (Jim Meyering), XML
          module cleanups (Mark McLoughlin), compiler warning (Maximilian
          Wilhelm), daemon TCP listen cleanup (Cole Robinson), size_t type
          cleanup (Guido Günther), parallel make fix (Michael Marineau),
          storage error diagnostic fix (Ryota Ozaki), remove redundant monitor
          watch variable (Cole Robinson), qemu AttachDevice error report
          improvement (Cole Robinson), virsh output cleanup (Jim Meyering),
          various tests cleanups and improvements (Jim Meyering), fix the
          internal export list with new APIs (Daniel Berrange), cleanups on
          new APIs for Node device (Daniel Berrange)</li></ul>
        <h3>0.6.0: Jan 31 2009</h3>
        <ul><li>New features: thread safety of the API and event handling (Daniel
          Berrange), allow QEmu domains to survive daemon restart (Guido
          Günther), extended logging capabilities, support copy-on-write
          storage volumes (Daniel Berrange), support of storage cache
          control options for QEmu/KVM (Daniel Berrange)</li><li>Portability: fix old DBus API problem, Debian portability fix
          (Daniel Berrange), fix distcheck (Jim Meyering), build in
          debug mode (Jim Meyering), libnuma API portability (Jim Meyering),
          many portability fixes pointed by Solaris (John Levon), non-gcc
          portability fixes (John Levon), various include fixes (Jim Meyering),
          various Windows and Mingw portability fixes (Daniel Berrange),
          solaris Xen fixes (John Levon), RPC portability to Solaris (Daniel
          Berrange)</li><li>Documentation: typo fixes (Richard Jones), logging support,
          vnc keymap attributes (Guido Günther), HACKING file updates
         (Jim Meyering), new PCI passthrough format, libvirt-qpid and
         UML driver documentation (Daniel Berrange), provide RNG schemas
         for all XML formats used in libvirt APIs (Daniel Berrange), </li><li>Bug fixes: segfault on virtual network without bridge name (Cole
          Robinson), various locking fixes (Cole Robinson), fix serial
          and parallel devices on tcp/unix/telnet (Guido Günther), leak
          in daemon (Jim Meyering), storage driver segfault (Miloslav TrmaC),
          missing check in read-only connections (Daniel Berrange),
          OpenVZ crash and mutex fixes (Anton Protopopov), couple of
          daemon bug fixes (John Levon), OpenVZ MAC addresses generation
          (Evgeniy Sokolov), poll call initialization fix (Daniel Berrange),
          various Xen driver fixes (John Levon), segfault on device
          back compat (Cole Robinson), couple Xen bug fixes coming from
          RHEL (Markus Armbruster), buffer overflow in libvirt proxy
          (rasputin@email.ru), vnc port report (John Levon), repair save
          and restore on recent KVM versions (Daniel Berrange), Xen
          cpu pinning XML fix (John Levon), various xen driver fixes
          (Daniel Berrange), some memory leak fixes (Daniel Berrange)</li><li>Improvements: driver infrastructure and locking (Daniel Berrange),
          Test driver infrastructure (Daniel Berrange), parallelism in the
          daemon and associated config (Daniel Berrange), virsh help cleanups
          (Jim Meyering), logrotate daemon logs (Guido Günther), more
          regression tests (Jim Meyering), QEmu SDL graphics (Itamar Heim),
          add --version flag to daemon (Dave Allan), memory consumption
          cleanup (Dave Allan), QEmu pid file and XML states for daemon
          restart (Guido Günther), gnulib updates (Jim Meyering and
          Dan Berrange), PCI passthrough for KVM (Jason Krieg), generic
          internal thread API (Daniel Berrange), RHEL-5 specific Xen
          configure option and code (Markus Armbruster), save domain
          state as string in status file (Guido Günther), add locking
          to all API entry points (Daniel Berrange), new ref counting APIs
          (Daniel Berrange), IP address for Xen bridges (John Levon),
          driver format for disk file types (Daniel Berrange), improve
          QEmu/KVM tun/tap performances (Mark McLoughlin), enable floppies
          for Xen fully virt (John Levon), support VNC password settings
          for QEmu/KVM (Daniel Berrange), qemu driver version reporting
          (Daniel Berrange) </li><li>Cleanups: converting linked lists to arrays (Daniel Berrange),
          daemon RPC handling refactoring (Daniel Berrange), strings cleanups
          (Jim Meyering), gethostby* cleanup and test (Jim Meyering), some
           code fixes (Dave Allan), various code cleanup (Jim Meyering),
           virsh argument handling cleanup (Jim Meyering), virAsprintf
           cleanup replacement (Guido Günther), QEmu monitor reads (Cole
           Robinson), Makefile cleanups (Guido Günther), Xen code cleanups
           (John Levon), revamp of ELF export scripts (John Levon), domain
           event callback args (John Levon), enforce use of pid_t (John Levon),
           virsh pool-*-as XML code merge (Cole Robinson), xgettext warnings
           (Jim Meyering), add virKillProcess (Guido Günther), add
           virGetHostname (David Lutterkort), add flags argument to the full
           XML parsing stack (Guido Günther), various daemon code cleanups
           (Guido Günther), handling of daemon missing config file (Jim
           Meyering), rpcgen invocation cleanup (Richard Jones), devhelp
           builkd makefile cleanups (John Levon), update error handling for
           threading (Daniel Berrange), remove all non-rentrant POSIX calls
           usage (Daniel Berrange), many small cleanups (Jim Meyering and
           Daniel Berrange), examples Makefile generator (John Levon),
           mis-use of PF_UNIX as a protocol (John Levon), cleanup OOM
           error paths (Jim Meyering), temporary fix fro valgrind on lxc
           (Daniel Berrange), QEmu driver init cleanups (Daniel Berrange)</li></ul>
        <h3>0.5.1: Dec  4 2008</h3>
        <ul><li>Portability: fix missing dep in spec file, fix compilation with new
          NUMA libraries (Daniel Berrange), udev compatibility for RHEL (Chris
          Lalancette), </li><li>Documentation: documentation copy and paste errors and typo (Cole
          Robinson)</li><li>Bug fixes: add a delay in storage backend for disks to show up
          (Chris Lalancette), fix parsing for CDRom device with no source
          (Daniel Berrange), use xenstore to list domains to avoid some
          bugs (Guido Günther), remove a leak in xen inotify code (Daniel
          Berrange), UML driver freeing of uninitialialized variable (Ron
          Yorston), fix UML inotify code (Daniel Berrange), crash when
          adding storage without a format (Cole Robinson)</li><li>Improvements: use xend preferably to hypervisor call to set Xen
          max memory (Jim Fehlig), allow remote://hostname/ URI for automatic
          probe of hypervisors (Daniel Berrange), fix daemon configuration
          regression testing (Jim Meyering ), check /usr/bin/kvm for QEmu
          driver init (Guido Günther), proper active vs. inactive
          differentiation (Guido Günther), improve MTU setting on tap
          interfaces (Eduardo Habkost), increase timeout for initial QEmu
          monitor poll (Cole Robinson)</li><li>Cleanups:fix improper initialisations (Jim Meyering)</li></ul>
        <h3>0.5.0: Nov 25 2008</h3>
        <ul><li>New features: CPU and scheduler support for LXC (Dan Smith), SDL display configuration (Daniel Berrange), domain lifecycle event support for QEmu and Xen with python bindings (Ben Guthro and Daniel Berrange), KVM/QEmu migration support (Rich Jones and Chris Lalancette), User Mode Linux driver (Daniel Berrange), API for node device enumeration using HAL and DeviceKit with python bindings (David Lively), </li><li>Portability: RHEL build fixes, VPATH build (Guido Gunther), many MinGW related cleanups and fixes (Richard Jones), compilation without libvirtd (Richard Jones), Add a Windows icon (Richard Jones), sys/poll.h portability fixes (Daniel Berrange), gnulib and mingw cleanups (Jim Meyering), </li><li>Documentation: virsh man page cleanups (Mark McLoughlin), doc for NIC model selection (Richard Jones), monitoring section, link to AMQP bindings, inew APIs, UML driver docs (Daniel Berrange), </li><li>Bug fixes: Xen interfaces ordering (Jim Fehlig), startup timeout with multiple pty (Cole Robinson), segfault if QEmu without active virtual network (Cole Robinson), qemu small leak (Eduardo Habkost), index creation for more than 26 disks (Sanjay Rao and Chris Wright), virRealloc handling of 0 (Daniel Berrange), missing pointer initialization (Chris Lalancette), bus device index bug (Guido Günther), avoid crash in some error patch (Chris Lalancette), fix a problem in storage back-end (Chris Lalancette), minimum domain memory size check for Xen (Shigeki Sakamoto), switch off QEmu cache if device is shared (Charles Duffy), logical volume definition before scan bug (Chris Lalancette), a couple of memory leaks on QEmu vnc (Jim Meyering), lvs parsing fixes (Cole Robinson),</li><li>Improvements: LXC resources control and internal cgroup API (Dan Smith), virDomainCreateLinux renamed virDomainDefineXML, network driver modularization (Daniel Berrange), change the way domain and net are reported in errors (Jim Meyering), partition table scan on iSCSI (Chris Lalancette), qemudDiskDeviceName to handle normal disks (Guido Günther), qemudDomainBlockStats improvement (Guido Günther), scsi/virtio hotplug support for KVM (Guido Günther), USB hot addition in QEmu (Guido Günther), logical pool and storage backend XML dump improvement (Chris Lalancette), MAC addresses prefix per driver (Daniel Berrange), OpenVZ getVersion support (Daniel Berrange), hot removal of scsi/virtio disks for KVM (Guido Günther), test storage driver (Cole Robinson), iSCSI and disk storage driver improvement on path handling (Chris Lalancette), UUID and ID support for Xenner (Daniel Berrange), better logging when when executing commands (Cole Robinson), bridged network for OpenVZ (Daniel Berrange), OpenVZ config file params (Evgeniy Sokolov), allow to build drivers as libtool convenience libs (Daniel Berrange), fully versioned linker script for exported ABI (Daniel Berrange), Push URI probing down into drivers open (Daniel Berrange), move all stateful drivers into the daemon binary (Daniel Berrange), improve domain event with a detail field (Daniel Berrange), domain events for QEMU driver (Daniel Berrange), event unregister callback crash (David Lively), plug a few leaks (Daniel Berrange), internal APIs for handling node device XML config (David Lively), tweaks to node device implementation (Daniel Berrange), OpenVZ vCPUs values init (Evgeniy Sokolov)</li><li>Cleanups: C99 initializers (Guido Gunther), test output (Cole Robinson), debug macro centralization (Cole Robinson), various error handling (Guido Günther), safewrite use cleanup (Jim Meyering), centralize error reporting logic (Cole Robinson), avoid printf warnings (Daniel Berrange), use arrays instead of list for internal APIs (Daniel Berrange), remove many format string warnings Jim Meyering), avoid syntax check warnings (Chris Lalancette), improve po-check and list generation (Jim Meyering), .gitignore generation and handling (Jim Meyering), use ARRAY_CARDINALITY (Jim Meyering), gnulib updates and switch to use netdb.h (Jim Meyering), drop usage of socket_errno (Jim Meyering), remove socketcompat.h (Jim Meyering), more tests (Jim Meyering), drop virStringList (Daniel Berrange), reformatting and isolation of the error APIs (Daniel Berrange), cleanup internal.h and move internal APIs in specific headers (Daniel Berrange), move domain events helpers into domain_events.c (Daniel Berrange), cleanup the way optional modules are compiled (Daniel Berrange), add new logging module, optional dlopen of drivers (Daniel Berrange), various new tests (Jim Meyering), cleanups when Xen is not configured in (Daniel Berrange), add some missing functions comments (Jim Meyering),</li></ul>
        <h3>0.4.6: Sep 23 2008</h3>
        <ul><li>Documentation: fix some comments in API (Anton Protopopov),
          cleanup and extension of bindings and windows pages (Richard Jones)</li><li>Portability: missing include file (Richard Jones)</li><li>Bug fixes: avoid a segfault if missing qemu emulator (Cole Robinson),
          reading vncdisplay from xend domain (Cole Robinson), segfault in
          OpenVZ (Evgeniy Sokolov), fix parsing of pool without a source
          (Chris Lalancette and Daniel Berrange)</li><li>Improvements: add storage disk volume delete (Cole Robinson),
          KVM dynamic max CPU detection (Guido Günther), spec file improvement
          for minimal builds (Ben Guthro), improved error message in XM
          configuration module (Richard Jones), network config in OpenVZ
          support (Evgeniy Sokolov), enable stopping a pool in logical
          storage backend and cleanup deletion of pool (Chris Lalancette)</li><li>Cleanups: deadcode removal (Nguyen Anh Quynh), fix one test
          case (Daniel Berrange), various strings and space cleanups (Daniel
          Berrange), structure initialization cleanup (Chris Lalancette)</li></ul>
        <h3>0.4.5: Sep 8 2008</h3>
        <ul><li>New features: NETNS support for Linux containers (Dan Smith),
          unified XML domain and network parsing for all drivers (Daniel
          Berrange), OpenVZ features improvements (Evgeniy Sokolov),
          OpenVZ and Linux containers support now default, USB device
          passthrough for QEmu/KVM (Guido Günther), storage pool source
          discovery (David Lively)</li><li>Portability: fixes for MinGW (Atsushi SAKAI and Daniel Berrange),
          detection of xen lib improvement (David Lively),
          storage backend portability for SLES (David Lively),
          fix make distclean and distcheck (Jim Meyering),
          fix build failures on RHEL4, lot of MinGW portability fixes (Atsushi
          SAKAI and Daniel Berrange), HTML generation fix, -lpthread explicit
          linking when needed (Jim Meyering)</li><li>Documentation: various typo fixes (Anton Protopopov, Toth
          István, Atsushi SAKAI, Nguyen Anh Quynh),
          Java bindings docs, remove Xen centric
          comments (Guido Günther), various typo in comments (Chris
          Lalancette), docs and API comments fixes (Charles Duffy),
          how to contribute to open source link (Richard Jones),
          memory unit fixups (matthew chan)</li><li>Bug fixes: memory leaks and testing for OOM (Daniel Berrange),
          do_open driver bug(Evgeniy Sokolov), don't use polkit auth when
          running as non-root (Daniel Berrange), boot of CDRom devices
          in QEmu/KVM (Daniel Berrange), fix OpenVZ probe function (Evgeniy
          Sokolov), ID related lookup fixes in OpenVZ (Evgeniy Sokolov),
          pool cration for netfs (Cole Robinson), check for migrate support
          with QEmu (Guido Günther), check against double create with QEmu
          (Guido Günther), broken open failure detection in QEmu (Guido
          Günther), UUID string conversions in QEmu (Guido Günther),
          various small cleanup and bug fixes (Daniel Berrange), ID
          related fixes in the test driver (Daniel Berrange), better error
          reporting on XML parsing (Daniel Berrange), empty CD-ROM source
          device section (Chris Lalancette), avoid crashes for interface
          without a name in QEmu (Guido Günther), provide the real
          vncport (Charles Duffy), fix forward delay (Daniel Berrange),
          new VM state is initialized to be SHUTOFF (Daniel Berrange),
          virsh attach-disk bug fixes (Chris Lalancette), veth clash
          of device names (Dan Smith), connection lookup fixes on
          storage creation (Cole Robinson), parted call fix (Cole Robinson),
          use "server" option when using serial/telnet with QEmu (Mark
          McLoughlin), duplicate virInitialize calls (Nguyen Anh Quynh),
          many fixes to virExec and related functions (Daniel Berrange),
          size of disk without partitions (Cole Robinson), creating and
          cleaning up logical volumes with target path (Cole Robinson),
          fix reporting of virConnectOpen problems (Daniel Berrange),
          veth cleanup at shutdown (Dan Smith), lookup of Xen VMs after define
          (Cole Robinson), fix emulator reported capabilities (Cole Robinson),
          avoid segfault on KVM CD eject (Cole Robinson), fix disk ordering
          and avoid duplicate in QEmu XML parsing (Cole Robinson), update
          domain XML after device hotplug (Cole Robinson), use poweroff instead
          of halt when shutting down a Xen domain (John Levon), don't dump core
          of Xen domain live by default (John Levon), vgcreate command line
          size bug (Jim Fehlig),  signed/unsigned issue in probing file
          (Cole Robinson), Fix Xen domains without PVFB console (Daniel
          Berrange), OpenVZ config read bug fix (Evgeniy Sokolov).
          </li><li>Improvements: improved failure diagnostic for TAP (Jim Meyering),
          better exec and error diagnostic for OpenVZ commands (Evgeniy
          Sokolov), OpenVZ auto start and stop of domains (Evgeniy Sokolov),
          OpenVZ domain cpu time consumption (Evgeniy Sokolov), virsh
          shutdown improvements and test (Jim Meyering), better report of
          XML well formedness errors (Richard Jones), new XML elements
          (Daniel Berrange), virsh "edit" command (Richard Jones), save
          UUID of OpenVZ domains (Evgeniy Sokolov), improve xen blocks
          statistics (Chris Lalancette), gnulib updates (Jim Meyering),
          allow to add disk as USB devices (Guido Günther), LXC container
          process should survive libvirtd restarts (Daniel Berrange), allow
          to define static host domain configs, number of CPU used by
          OpenVZ domains (Evgeniy Sokolov), private root fs for LXC (Daniel
          Berrange), storage source information in storage pools (David Lively),
          virsh reports attach and detach success (Cole Robinson), detect
          failure in QEmu eject command (Cole Robinson), add support for
          eect on floppy and SCSI cdroms for QEmu (Cole Robinson), LXC
          hypervisor version extraction (Dan Smith), Augeas config file support
          (Daniel Berrange), support for a domain name in network
          config (JJ Reynolds).</li><li>Cleanups: Python verbosity cleanup (Ryan Scott),
          space and tabs cleanups (Atsushi SAKAI), OpenVZ and LXC drivers
          cleanup and unification of XML handling (Daniel Berrange), updates
          to Relax-NG XML schemas (John Levon and Daniel Berrange), more
          printf format checkings (Jim Meyering), VIR_FREE related cleanups
          (Jim Meyering), integer string parsing cleanup (Evgeniy Sokolov),
          initial OpenVZ xml refactoring (Evgeniy Sokolov), better error
          message on domain redefine (Charles Duffy), check XML files against
          the RNG Schemas (Daniel Berrange), const-correctness in virsh
          (Richard Jones and Jim Meyering), const-correctness and cleanups
          in LXC and OpenVZ drivers (Daniel Berrange), virFileLinkPointsTo
          rewrite (Jim Meyering), cleanup of the conditional compilation
          of C files (Daniel Berrange), shell quoting fixes (Jim Meyering),
          parallel build support (James Morris and Jim Meyering), new
          convenience virFileReadLimFD function (Jim Meyering).  </li></ul>
        <h3>0.4.4: Jun 25 2008</h3>
        <ul><li>Bug fixes: QEmu network serialization (Kaitlin Rupert), internal
          memory allocation fixes (Chris Lalancette Jim Meyering), virsh
          large file config problem (Jim Meyering), xen list APIs when
          max is zero, string escape problems in the xm driver </li><li>Improvements: add autogen to tarballs, improve iSCSI support
          (Chris Lalancette), localization updates </li><li>Cleanups: const-ness fixed (Daniel P. Berrange), string helpers
          for enumerations (Daniel P. Berrange)</li></ul>
        <h3>0.4.3: Jun 12 2008</h3>
        <ul><li>New features: Linux Container start and stop (Dave Leskovec),
          Network interface model settings (Daniel Berrange),serial and parallel
          device support for QEmu and Xen (Daniel Berrange),
          Sound support for QEmu and Xen (Cole Robinson), vCPU settings for
          QEmu (Cole Robinson), support for NUMA and vCPU pinning in QEmu
          (Daniel Berrange), new virDomainBlockPeek API (Richard Jones)</li><li>Documentation: coding guidelines (Jim Meyering and Richard Jones),
          small man page missing entries and cleanup,
          Web site revamp (Daniel Berrange),
          typo fixes (Atsushi SAKAI), more docs on network XML format
          (Daniel Berrange), libvirt Wiki (Daniel Berrange),
          policykit config docs (Cole Robinson), XML domain docs revamp
          (Daniel Berrange), docs for remote listen-tls/tcp fixes (Kenneth
          Nagin),  </li><li>Bug fixes: save change to config file for Xen (Ryan Scott),
          fix /var/run/libvirt/ group ownership (Anton Protopopov),
          ancient libparted workaround (Soren Hansen), out of bount
          array access (Daniel Berrange), remote check bug (Dave Leskovec),
          LXC signal and daemon restart problems (Dave Leskovec), bus selection
          logic fix in the daemon config (Daniel Berrange), 2 memory leaks
          in the daemon (Jim Meyering), daemon pid file logic bug fix
          (Daniel Berrange), python generator fixes (Daniel Berrange),
          ivarious leaks and memory problem pointed by valgrind (Daniel
          Berrange), iptables forwarding cleanup (Daniel Berrange),
          Xen cpuset value checking (Hiroyuki Kaguchi), container process
          checks for LXC (Dave Leskovec), let xend check block device syntax
          (Hiroyuki Kaguchi), UUIDString for python fixes (Cole Robinson)</li><li>Improvements: fixes for MinGW compilation (Richard Jones),
          autostart for running Xen domains (Cole Robinson),
          control of listening IP for daemon (Stefan de Konink),
          various Xenner related fixes and improvements (Daniel Berrange)
          autostart status printed in virsh domainfo (Shigeki Sakamoto),
          better error messages for xend driver (Richard Jones)</li><li>Code cleanups: OpenVZ compilation (Richard Jones), conn dom and
          net fields deprecation in error structures (Richard Jones),
          Xen-ism on UUID (Richard Jones), add missing .pod to dist (Richard
          Jones), tab cleanup from sources (Jim Meyering), remove unused field
          in virsh control structure (Richard Jones), compilation without
          pthread.h (Jim Meyering), cleanup of tests (Daniel Berrange),
          syntax-check improvements (Jim Meyering), python cleanup,
          remove dependancy on libc is_* character tests (Jim Meyering),
          format related cleanups (Jim Meyering), cleanup of the buffer
          internal APIs (Daniel Berrange), conversion to the new memory
          allocation API (Daniel Berrange), lcov coverage testing
          (Daniel Berrange), gnulib updates (Jim Meyering), compatibility
          fix with RHEL 5 (Daniel Berrange), SuSE compatibility fix (Jim
          Fehlig), const'ification of a number of structures (Jim Meyering),
          string comparison macro cleanups (Daniel Berrange), character
          range testing cleanups and assorted bug fixes (Jim Meyering),
          QEmu test fixes (Daniel Berrange), configure macro cleanup (Daniel
          Berrange), refactor QEmu command line building code (Daniel Berrange),
          type punning warning in remote code (Richard Jones), refactoring
          of internal headers (Richard Jones), generic out of memory
          testing and associated bug fixes (Daniel Berrange), don't raise
          internal error for unsupported features (Kaitlin Rupert),
          missing driver entry points (Daniel Berrange)</li></ul>
        <h3>0.4.2: Apr 8 2008</h3>
        <ul><li>New features: memory operation for QEmu/KVM driver (Cole Robinson),
      new routed networking schemas (Mads Olesen)</li><li>Documentation: storage documentation fixes (Atsushi Sakai), many
      typo cleanups (Atsushi Sakai), string fixes (Francesco Tombolini)</li><li>Bug fixes: pointer errors in qemu (Jim Meyering), iSCSI login fix
      (Chris Lalancette), well formedness error in test driver capabilities
      (Cole Robinson), fixes cleanup code when daemon exits (Daniel Berrange),
      CD Rom change on live QEmu/KVM domains (Cole Robinson), setting scheduler
      parameter is forbidden for read-only (Saori Fukuta)i, fixes for TAP
      devices (Daniel Berrange), assorted storage driver fixes (Daniel
      Berrange), Makefile fixes (Jim Meyering), Xen-3.2 hypercall fix,
      fix iptables rules to avoid blocking traffic within virtual network
      (Daniel Berrange), XML output fix for directory pools (Daniel Berrange),
      remove dandling domain/net/conn pointers from error data, do not
      ask polkit auth when root (Daniel Berrange), handling of fork and
      pipe errors when starting the daemon (Richard Jones)</li><li>Improvements: better validation of MAC addresses (Jim Meyering and
      Hiroyuki Kaguchi),
      virsh vcpupin error report (Shigeki Sakamoto), keep boot tag on
      HVM domains (Cole Robinson), virsh non-root should not be limited to read
      only anymore (Daniel Berrange), switch to polkit-auth from polkit-grant
      (Daniel Berrange), better handling of missing SElinux data (Daniel
      Berrange and Jim Meyering), cleanup of the connection opening logic
      (Daniel Berrange), first bits of Linux Containers support (Dave Leskovec),
      scheduler API support via xend (Saori Fukuta), improvement of the
      testing framework and first tests (Jim Meyering), missing error
      messages from virsh parameters validation (Shigeki Sakamoto),
      improve support of older iscsiadm command (Chris Lalancette),
      move linux container support in the daemon (Dan Berrange), older
      awk implementation support (Mike Gerdts), NUMA support in test
      driver (Cole Robinson), xen and hvm added to test driver capabilities
      (Cole Robinson)</li><li>Code cleanup: remove unused getopt header (Jim Meyering), mark more
      strings as translatable (Guido Günther and Jim Meyering), convert
      error strings to something meaningful and translatable (Jim Meyering),
      Linux Containers code cleanup, last error initializer (Guido Günther)</li></ul>
        <h3>0.4.1: Mar 3 2008</h3>
        <ul><li>New features: build on MacOSX (Richard Jones), storage management
      (Daniel Berrange), Xenner - Xen on KVM - support (Daniel Berrange)</li><li>Documentation: Fix of various typos (Atsushi SAKAI), memory and
      vcpu settings details (Richard Jones), ethernet bridging typo
      (Maxwell Bottiger), add storage APIs documentation (Daniel Berrange)</li><li>Bug fixes: OpenVZ code compilation (Mikhail Pokidko), crash in
      policykit auth handling (Daniel Berrange), large config files
      (Daniel Berrange), cpumap hypercall size (Saori Fukuta), crash
      in remote auth (Daniel Berrange), ssh args error (Daniel Berrange),
      preserve vif order from config files (Hiroyuki Kaguchi), invalid
      pointer access (Jim Meyering), virDomainGetXMLDesc flag handling,
      device name conversion on stats (Daniel Berrange), double mutex lock
      (Daniel Berrange), config file reading crashes (Guido Guenther),
      xenUnifiedDomainSuspend bug (Marcus Meissner), do not crash if
      /sys/hypervisor/capabilities is missing (Mark McLoughlin),
      virHashRemoveSet bug (Hiroyuki Kaguchi), close-on-exec flag for
      qemud signal pipe (Daniel Berrange), double free in OpenVZ
      (Anton Protopopov), handle mac without addresses (Shigeki Sakamoto),
      MAC addresses checks (Shigeki Sakamoto and Richard Jones),
      allow to read non-seekable files (Jim Meyering)</li><li>Improvements: Windows build (Richard Jones), KVM/QEmu shutdown
      (Guido Guenther), catch virExec output on debug (Mark McLoughlin),
      integration of iptables and lokkit (Mark McLoughlin), keymap
      parameter for VNC servers (Daniel Hokka Zakrisson), enable debug
      by default using VIR_DEBUG (Daniel Berrange), xen 3.2 fixes
      (Daniel Berrange), Python bindings for VCPU and scheduling
      (Daniel Berrange), framework for automatic code syntax checks
      (Jim Meyering), allow kernel+initrd setup in Xen PV (Daniel Berrange),
      allow change of Disk/NIC of an inactive domains (Shigeki Sakamoto),
      virsh commands to manipulate and create storage(Daniel Berrange),
      update use of PolicyKit APIs, better detection of fedault hypervisor,
      block device statistics for QEmu/KVM (Richard Jones), various improvements
      for Xenner (Daniel Berrange)</li><li>Code cleanups: avoid warnings (Daniel Berrange), virRun helper
      function (Dan Berrange), iptable code fixes (Mark McLoughlin),
      static and const cleanups (Jim Meyering), malloc and python cleanups
      (Jim Meyering), xstrtol_ull and xstrtol_ll functions (Daniel Berrange),
      remove no-op networking from OpenVZ (Daniel Berrange), python generator
      cleanups (Daniel Berrange), cleanup ref counting (Daniel Berrange),
      remove uninitialized warnings (Jim Meyering), cleanup configure
      for RHEL4 (Daniel Berrange), CR/LF cleanups (Richard Jones),
      various automatic code check and associated cleanups (Jim Meyering),
      various memory leaks (Jim Meyering), fix compilation when building
      without Xen (Guido Guenther), mark translatables strings (Jim Meyering),
      use virBufferAddLit for constant strings (Jim Meyering), fix
      make distcheck (Jim Meyering), return values for python bindings (Cole
      Robinson), trailing blanks fixes (Jim Meyering), gcc-4.3.0 fixes
      (Mark McLoughlin), use safe read and write routines (Jim Meyering),
      refactoring of code dealing with hypervisor capabilities (Daniel
      Berrange), qemudReportError to use virErrorMsg (Cole Robinson),
      intemediate library and Makefiles for compiling static and coverage
      rule support (Jim Meyering), cleanup of various leaks (Jim Meyering)</li></ul>
        <h3>0.4.0: Dec 18 2007</h3>
        <ul><li>New features: Compilation on Windows cygwin/mingw (Richard Jones),
      Ruby bindings (David Lutterkort), SASL based authentication for
      libvirt remote support (Daniel Berrange), PolicyKit authentication
      (Daniel Berrange)</li><li>Documentation: example files for QEMU and libvirtd configuations
      (Daniel Berrange), english cleanups (Jim Paris), CIM and OpenVZ
      references, document &lt;shareable/&gt;, daemon startup when using
      QEMU/KVM, document HV support for new NUMA calls (Richard Jones),
      various english fixes (Bruce Montague), OCaml docs links (Richard Jones),
      describe the various bindings add Ruby link, Windows support page
      (Richard Jones), authentication documentation updates (Daniel Berrange)
      </li><li>Bug fixes: NUMA topology error handling (Beth Kon), NUMA topology
      cells without CPU (Beth Kon), XML to/from XM bridge config (Daniel
      Berrange), XM processing of vnc parameters (Daniel Berrange), Reset
      migration source after failure (Jim Paris), negative integer in config
      (Tatsuro Enokura), zero terminating string buffer, detect integer
      overflow (Jim Meyering), QEmu command line ending fixes (Daniel Berrange),
      recursion problem in the daemon (Daniel Berrange), HVM domain with CDRom
      (Masayuki Sunou), off by one error in NUMA cpu count (Beth Kon),
      avoid xend errors when adding disks (Masayuki Sunou), compile error
      (Chris Lalancette), transposed fwrite args (Jim Meyering), compile
      without xen and on solaris (Jim Paris), parsing of interface names
      (Richard Jones), overflow for starts on 32bits (Daniel Berrange),
      fix problems in error reporting (Saori Fukuta), wrong call to
      brSetForwardDelay changed to brSetEnableSTP (Richard Jones),
      allow shareable disk in old Xen, fix wrong certificate file (Jim
      Meyering), avoid some startup error when non-root, off-by-1 buffer
      NULL termination (Daniel Berrange), various string allocation fixes
      (Daniel Berrange), avoid problems with vnetXXX interfaces in domain dumps
      (Daniel Berrange), build fixes for RHEL (Daniel Berrange), virsh prompt
      should not depend on uid (Richard Jones), fix scaping of '&lt;' (Richard
      Jones), fix detach-disk on Xen tap devices (Saori Fukuta), CPU
      parameter setting in XM config (Saori Fukuta), credential handling
      fixes (Daniel Berrange), fix compatibility with Xen 3.2.0 (Daniel
      Berrange)
      </li><li>Improvements: /etc/libvirt/qemu.conf configuration for QEMU driver
      (Daniel Berrange), NUMA cpu pinning in config files (DV and Saori Fukuta),
      CDRom media change in KVM/QEMU (Daniel Berrange), tests for
      &lt;shareable/&gt; in configs, pinning inactive domains for Xen 3.0.3
      (Saori Fukuta), use gnulib for portability enhancement (Jim Meyering),
      --without-libvirtd config option (Richard Jones), Python bindings for
      NUMA, add extra utility functions to buffer (Richard Jones),
      separate qparams module for handling query parameters (Richard Jones)
      </li><li>Code cleanups: remove virDomainRestart from API as it was never used
      (Richard Jones), constify params for attach/detach APIs (Daniel Berrange),
      gcc printf attribute checkings (Jim Meyering), refactoring of device
      parsing code and shell escaping (Daniel Berrange), virsh schedinfo
      parameters validation (Masayuki Sunou), Avoid risk of format string abuse
      (Jim Meyering), integer parsing cleanups (Jim Meyering), build out
      of the source tree (Jim Meyering), URI parsing refactoring (Richard
      Jones), failed strdup/malloc handling (Jim Meyering), Make "make
      distcheck" work (Jim Meyering), improve xen internall error reports
      (Richard Jones), cleanup of the daemon remote code (Daniel Berrange),
      rename error VIR_FROM_LINUX to VIR_FROM_STATS_LINUX (Richard Jones),
      don't compile the proxy if without Xen (Richard Jones), fix paths when
      configuring for /usr prefix, improve error reporting code (Jim Meyering),
      detect heap allocation failure (Jim Meyering), disable xen sexpr parsing
      code if Xen is disabled (Daniel Berrange), cleanup of the GetType
      entry point for Xen drivers, move some QEmu path handling to generic
      module (Daniel Berrange), many code cleanups related to the Windows
      port (Richard Jones), disable the proxy if using PolicyKit, readline
      availability detection, test libvirtd's config-processing code (Jim
      Meyering), use a variable name as sizeof argument (Jim Meyering)
      </li></ul>
        <h3>0.3.3: Sep 30 2007</h3>
        <ul><li>New features: Avahi mDNS daemon export (Daniel Berrange),
      NUMA support (Beth Kan) </li><li>Documentation: cleanups (Toth Istvan), typos (Eduardo Pereira), </li><li>Bug fixes: memory corruption on large dumps (Masayuki Sunou), fix
      virsh vncdisplay command exit (Masayuki Sunou), Fix network stats
      TX/RX result (Richard Jones), warning on Xen 3.0.3 (Richard Jones),
      missing buffer check in virDomainXMLDevID (Hugh Brock), avoid zombies
      when using remote (Daniel Berrange), xend connection error message
      (Richard Jones), avoid ssh tty prompt (Daniel Berrange), username
      handling for remote URIs (Fabian Deutsch), fix potential crash
      on multiple input XML tags (Daniel Berrange), Solaris Xen hypercalls
      fixup (Mark Johnson)</li><li>Improvements: OpenVZ support (Shuveb Hussain and Anoop Cyriac),
      CD-Rom reload on XEn (Hugh Brock), PXE boot got QEmu/KVM (Daniel
      Berrange), QEmu socket permissions customization (Daniel Berrange),
      more QEmu support (Richard Jones), better path detection for qemu and
      dnsmasq (Richard Jones), QEmu flags are per-Domain (Daniel Berrange),
      virsh freecell command, Solaris portability fixes (Mark Johnson),
      default bootloader support (Daniel Berrange), new virNodeGetFreeMemory
      API, vncpasswd extraction in configuration files if secure (Mark
      Johnson and Daniel Berrange), Python bindings for block and interface
      statistics</li><li>Code cleanups: virDrvOpenRemoteFlags definition (Richard Jones),
      configure tests and output (Daniel Berrange)</li></ul>
        <h3>0.3.2: Aug 21 2007</h3>
        <ul><li>New features: KVM migration and save/restore (Jim Paris),
      added API for migration (Richard Jones), added APIs for block device and
      interface statistic (Richard Jones).</li><li>Documentation: examples for XML network APIs,
      fix typo and schedinfo synopsis in man page (Atsushi SAKAI),
      hypervisor support page update (Richard Jones).</li><li>Bug fixes: remove a couple of leaks in QEmu/KVM backend(Daniel berrange),
      fix GnuTLS 1.0 compatibility (Richard Jones), --config/-f option
      mistake for libvirtd (Richard Jones), remove leak in QEmu backend
      (Jim Paris), fix some QEmu communication bugs (Jim Paris), UUID
      lookup though proxy fix, setvcpus checking bugs (with Atsushi SAKAI),
      int checking in virsh parameters (with Masayuki Sunou), deny devices
      attach/detach for &lt; Xen 3.0.4 (Masayuki Sunou), XenStore query
      memory leak (Masayuki Sunou), virsh schedinfo cleanup (Saori Fukuta).</li><li>Improvement: virsh new ttyconsole command, networking API implementation
      for test driver (Daniel berrange), qemu/kvm feature reporting of
      ACPI/APIC (David Lutterkort), checking of QEmu architectures (Daniel
      berrange), improve devices XML errors reporting (Masayuki Sunou),
      speedup of domain queries on Xen (Daniel berrange), augment XML dumps
      with interface devices names (Richard Jones), internal API to query
      drivers for features (Richard Jones).
      </li><li>Cleanups: Improve virNodeGetInfo implentation (Daniel berrange),
      general UUID code cleanup (Daniel berrange), fix API generator
      file selection. </li></ul>
        <h3>0.3.1: Jul 24 2007</h3>
        <ul><li>Documentation: index to remote page, script to test certificates,
      IPv6 remote support docs (Daniel Berrange), document
      VIRSH_DEFAULT_CONNECT_URI in virsh man page (David Lutterkort),
      Relax-NG early grammar for the network XML (David Lutterkort)</li><li>Bug fixes: leaks in disk XML parsing (Masayuki Sunou), hypervisor
      alignment call problems on PPC64 (Christian Ehrhardt), dead client
      registration in daemon event loop (Daniel Berrange), double free
      in error handling (Daniel Berrange), close on exec for log file
      descriptors in the daemon (Daniel Berrange), avoid caching problem
      in remote daemon (Daniel Berrange), avoid crash after QEmu domain
      failure (Daniel Berrange)</li><li>Improvements: checks of x509 certificates and keys (Daniel Berrange),
      error reports in the daemon (Daniel Berrange), checking of Ethernet MAC
      addresses in XML configs (Masayuki Sunou), support for a new
      clock switch between UTC and localtime (Daniel Berrange), early
      version of OpenVZ support (Shuveb Hussain), support for input devices
      on PS/2 and USB buses (Daniel Berrange), more tests especially
      the QEmu support (Daniel Berrange), range check in credit scheduler
      (with Saori Fukuta and Atsushi Sakai), add support for listen VNC
      parameter un QEmu and fix command line arg (Daniel Berrange)</li><li>Cleanups: debug tracing (Richard Jones), removal of --with-qemud-pid-file
      (Richard Jones), remove unused virDeviceMode, new util module for
      code shared between drivers (Shuveb Hussain), xen header location
      detection (Richard Jones)</li></ul>
        <h3>0.3.0: Jul 9 2007</h3>
        <ul><li>Secure Remote support (Richard Jones).
      See <a href="http://libvirt.org/remote.html" shape="rect">the remote page</a>
      of the documentation
  </li><li>Documentation: remote support (Richard Jones), description of
      the URI connection strings (Richard Jones), update of virsh man
      page, matrix of libvirt API/hypervisor support with version
      information (Richard Jones)</li><li>Bug fixes: examples Makefile.am generation (Richard Jones),
      SetMem fix (Mark Johnson), URI handling and ordering of
      drivers (Daniel Berrange), fix virsh help without hypervisor (Richard
      Jones), id marshalling fix (Daniel Berrange), fix virConnectGetMaxVcpus
      on remote (Richard Jones), avoid a realloc leak (Jim Meyering), scheduler
      parameters handling for Xen (Richard Jones), various early remote
      bug fixes (Richard Jones), remove virsh leaks of domains references
      (Masayuki Sunou), configCache refill bug (Richard Jones), fix
      XML serialization bugs</li><li>Improvements: QEmu switch to XDR-based protocol (Dan Berrange),
      device attach/detach commands (Masayuki Sunou), OCaml bindings
      (Richard Jones), new entry points virDomainGetConnect and
      virNetworkGetConnect useful for bindings (Richard Jones),
      reunitifaction of remote and qemu daemon under a single libvirtd
      with a config file (Daniel Berrange)</li><li>Cleanups: parsing of connection URIs (Richard Jones), messages
      from virsh (Saori Fukuta), Coverage files (Daniel Berrange),
      Solaris fixes (Mark Johnson), avoid [r]index calls (Richard Jones),
      release information in Xen backend, virsh cpupin command cleanups
      (Masayuki Sunou), xen:/// support as standard Xen URI (Richard Jones and
      Daniel Berrange), improve driver selection/decline mechanism (Richard
      Jones), error reporting on XML dump (Richard Jones), Remove unused
      virDomainKernel structure (Richard Jones), daemon event loop event
      handling (Daniel Berrange), various unifications cleanup in the daemon
      merging (Daniel Berrange), internal file and timer monitoring API
      (Daniel Berrange), remove libsysfs dependancy, call brctl program
      directly (Daniel Berrange), virBuffer functions cleanups (Richard Jones),
      make init script LSB compliant, error handling on lookup functions
      (Richard Jones), remove internal virGetDomainByID (Richard Jones),
      revamp of xen subdrivers interfaces (Richard Jones)</li><li>Localization updates</li></ul>
        <h3>0.2.3: Jun 8 2007</h3>
        <ul><li>Documentation: documentation for upcoming remote access (Richard Jones),
      virConnectNumOfDefinedDomains doc (Jan Michael), virsh help messages
      for dumpxml and net-dumpxml (Chris Wright), </li><li>Bug fixes: RelaxNG schemas regexp fix (Robin Green), RelaxNG arch bug
      (Mark McLoughlin), large buffers bug fixes (Shigeki Sakamoto), error
      on out of memory condition (Shigeki Sakamoto), virshStrdup fix, non-root
      driver when using Xen bug (Richard Jones), use --strict-order when
      running dnsmasq (Daniel Berrange), virbr0 weirdness on restart (Mark
      McLoughlin), keep connection error messages (Richard Jones), increase
      QEmu read buffer on help (Daniel Berrange), rpm dependance on
      dnsmasq (Daniel Berrange), fix XML boot device syntax (Daniel Berrange),
      QEmu memory bug (Daniel Berrange), memory leak fix (Masayuki Sunou),
      fix compiler flags (Richard Jones), remove type ioemu on recent Xen
      HVM for paravirt drivers (Saori Fukuta), uninitialized string bug
      (Masayuki Sunou), allow init even if the daemon is not running,
      XML to config fix (Daniel Berrange)</li><li>Improvements: add a special error class for the test module (Richard
      Jones), virConnectGetCapabilities on proxy (Richard Jones), allow
      network driver to decline usage (Richard Jones), extend error messages
      for upcoming remote access (Richard Jones), on_reboot support for QEmu
      (Daniel Berrange), save daemon output in a log file (Daniel Berrange),
      xenXMDomainDefineXML can override guest config (Hugh Brock),
      add attach-device and detach-device commands to virsh (Masayuki Sunou
      and Mark McLoughlin and Richard Jones), make virGetVersion case
      insensitive and Python bindings (Richard Jones), new scheduler API
      (Atsushi SAKAI), localizations updates, add logging option for virsh
      (Nobuhiro Itou), allow arguments to be passed to bootloader (Hugh Brock),
      increase the test suite (Daniel Berrange and Hugh Brock)</li><li>Cleanups: Remove VIR_DRV_OPEN_QUIET (Richard Jones), disable xm_internal.c
      for Xen &gt; 3.0.3 (Daniel Berrange), unused fields in _virDomain (Richard
      Jones), export __virGetDomain and __virGetNetwork for libvirtd only
      (Richard Jones), ignore old VNC config for HVM on recent Xen (Daniel
      Berrange), various code cleanups, -Werror cleanup (Hugh Brock)</li></ul>
        <h3>0.2.2: Apr 17 2007</h3>
        <ul><li>Documentation: fix errors due to Amaya (with Simon Hernandez),
      virsh uses kB not bytes (Atsushi SAKAI), add command line help to
      qemud (Richard Jones), xenUnifiedRegister docs (Atsushi SAKAI),
      strings typos (Nikolay Sivov), ilocalization problem raised by
      Thomas Canniot</li><li>Bug fixes: virsh memory values test (Masayuki Sunou), operations without
      libvirt_qemud (Atsushi SAKAI), fix spec file (Florian La Roche, Jeremy
      Katz, Michael Schwendt),
      direct hypervisor call (Atsushi SAKAI), buffer overflow on qemu
      networking command (Daniel Berrange), buffer overflow in quemud (Daniel
      Berrange), virsh vcpupin bug (Masayuki Sunou), host PAE detections
      and strcuctures size (Richard Jones), Xen PAE flag handling (Daniel
      Berrange), bridged config configuration (Daniel Berrange), erroneous
      XEN_V2_OP_SETMAXMEM value (Masayuki Sunou), memory free error (Mark
      McLoughlin), set VIR_CONNECT_RO on read-only connections (S.Sakamoto),
      avoid memory explosion bug (Daniel Berrange), integer overflow
      for qemu CPU time (Daniel Berrange), QEMU binary path check (Daniel
      Berrange)</li><li>Cleanups: remove some global variables (Jim Meyering), printf-style
      functions checks (Jim Meyering), better virsh error messages, increase
      compiler checkings and security (Daniel Berrange), virBufferGrow usage
      and docs, use calloc instead of malloc/memset, replace all sprintf by
      snprintf, avoid configure clobbering user's CTAGS (Jim Meyering),
      signal handler error cleanup (Richard Jones), iptables internal code
      claenup (Mark McLoughlin), unified Xen driver (Richard Jones),
      cleanup XPath libxml2 calls, IPTables rules tightening (Daniel
      Berrange), </li><li>Improvements: more regression tests on XML (Daniel Berrange), Python
      bindings now generate exception in error cases (Richard Jones),
      Python bindings for vir*GetAutoStart (Daniel Berrange),
      handling of CD-Rom device without device name (Nobuhiro Itou),
      fix hypervisor call to work with Xen 3.0.5 (Daniel Berrange),
      DomainGetOSType for inactive domains (Daniel Berrange), multiple boot
      devices for HVM (Daniel Berrange),
      </li></ul>
        <h3>0.2.1: Mar 16 2007</h3>
        <ul><li>Various internal cleanups (Richard Jones,Daniel Berrange,Mark McLoughlin)</li><li>Bug fixes: libvirt_qemud daemon path (Daniel Berrange), libvirt
      config directory (Daniel Berrange and Mark McLoughlin), memory leak
      in qemud (Mark), various fixes on network support (Mark), avoid Xen
      domain zombies on device hotplug errors (Daniel Berrange), various
      fixes on qemud (Mark), args parsing (Richard Jones), virsh -t argument
      (Saori Fukuta), avoid virsh crash on TAB key (Daniel Berrange), detect
      xend operation failures (Kazuki Mizushima), don't listen on null socket
      (Rich Jones), read-only socket cleanup (Rich Jones), use of vnc port 5900
      (Nobuhiro Itou), assorted networking fixes (Daniel Berrange), shutoff and
      shutdown mismatches (Kazuki Mizushima), unlimited memory handling
      (Atsushi SAKAI), python binding fixes (Tatsuro Enokura)</li><li>Build and portability fixes: IA64 fixes (Atsushi SAKAI), dependancies
      and build (Daniel Berrange), fix xend port detection (Daniel
      Berrange), icompile time warnings (Mark), avoid const related
      compiler warnings (Daniel Berrange), automated builds (Daniel
      Berrange), pointer/int mismatch (Richard Jones), configure time
      selection of drivers, libvirt spec hacking (Daniel Berrange)</li><li>Add support for network autostart and init scripts (Mark McLoughlin)</li><li>New API virConnectGetCapabilities() to detect the virtualization
    capabilities of a host (Richard Jones)</li><li>Minor improvements: qemud signal handling (Mark), don't shutdown or reboot
    domain0 (Kazuki Mizushima), QEmu version autodetection (Daniel Berrange),
    network UUIDs (Mark), speed up UUID domain lookups (Tatsuro Enokura and
    Daniel Berrange), support for paused QEmu CPU (Daniel Berrange), keymap
    VNC attribute support (Takahashi Tomohiro and Daniel Berrange), maximum
    number of virtual CPU (Masayuki Sunou), virtsh --readonly option (Rich
    Jones), python bindings for new functions (Daniel Berrange)</li><li>Documentation updates especially on the XML formats</li></ul>
        <h3>0.2.0: Feb 14 2007</h3>
        <ul><li>Various internal cleanups (Mark McLoughlin, Richard Jones,
      Daniel Berrange, Karel Zak)</li><li>Bug fixes: avoid a crash in connect (Daniel Berrange), virsh args
      parsing (Richard Jones)</li><li>Add support for QEmu and KVM virtualization (Daniel Berrange)</li><li>Add support for network configuration (Mark McLoughlin)</li><li>Minor improvements: regression testing (Daniel Berrange),
      localization string updates</li></ul>
        <h3>0.1.11: Jan 22 2007</h3>
        <ul><li>Finish XML &lt;-&gt; XM config files support</li><li>Remove memory leak when freeing virConf objects</li><li>Finishing inactive domain support (Daniel Berrange)</li><li>Added a Relax-NG schemas to check XML instances</li></ul>
        <h3>0.1.10: Dec 20 2006</h3>
        <ul><li>more localizations</li><li>bug fixes: VCPU info breakages on xen 3.0.3, xenDaemonListDomains buffer overflow (Daniel Berrange), reference count bug when creating Xen domains (Daniel Berrange).</li><li>improvements: support graphic framebuffer for Xen paravirt (Daniel Berrange), VNC listen IP range support (Daniel Berrange), support for default Xen config files and inactive domains of 3.0.4 (Daniel Berrange).</li></ul>
        <h3>0.1.9: Nov 29 2006</h3>
        <ul><li>python bindings: release interpeter lock when calling C (Daniel Berrange)</li><li>don't raise HTTP error when looking information for a domain</li><li>some refactoring to use the driver for all entry points</li><li>better error reporting (Daniel Berrange)</li><li>fix OS reporting when running as non-root</li><li>provide XML parsing errors</li><li>extension of the test framework (Daniel Berrange)</li><li>fix the reconnect regression test</li><li>python bindings: Domain instances now link to the Connect to avoid garbage collection and disconnect</li><li>separate the notion of maximum memory and current use at the XML level</li><li>Fix a memory leak (Daniel Berrange)</li><li>add support for shareable drives</li><li>add support for non-bridge style networking configs for guests(Daniel Berrange)</li><li>python bindings: fix unsigned long marshalling (Daniel Berrange)</li><li>new config APIs virConfNew() and virConfSetValue() to build configs from scratch</li><li>hot plug device support based on Michel Ponceau patch</li><li>added support for inactive domains, new APIs, various associated cleanup (Daniel Berrange)</li><li>special device model for HVM guests (Daniel Berrange)</li><li>add API to dump core of domains (but requires a patched xend)</li><li>pygrub bootloader information take over &lt;os&gt; information</li><li>updated the localization strings</li></ul>
        <h3>0.1.8: Oct 16 2006</h3>
        <ul><li> Bug for system with page size != 4k</li><li> vcpu number initialization (Philippe Berthault)</li><li> don't label crashed domains as shut off (Peter Vetere)</li><li> fix virsh man page (Noriko Mizumoto)</li><li> blktapdd support for alternate drivers like blktap (Daniel Berrange)</li><li> memory leak fixes (xend interface and XML parsing) (Daniel Berrange)</li><li> compile fix</li><li> mlock/munlock size fixes (Daniel Berrange)</li><li> improve error reporting</li></ul>
        <h3>0.1.7: Sep 29 2006</h3>
        <ul><li> fix a memory bug on getting vcpu information from xend (Daniel Berrange)</li><li> fix another problem in the hypercalls change in Xen changeset
       86d26e6ec89b when getting domain information (Daniel Berrange)</li></ul>
        <h3>0.1.6: Sep 22 2006</h3>
        <ul><li>Support for localization of strings using gettext (Daniel Berrange)</li><li>Support for new Xen-3.0.3 cdrom and disk configuration (Daniel Berrange)</li><li>Support for setting VNC port when creating domains with new
      xend config files (Daniel Berrange) </li><li>Fix bug when running against xen-3.0.2 hypercalls (Jim Fehlig)</li><li>Fix reconnection problem when talking directly to http xend</li></ul>
        <h3>0.1.5: Sep 5 2006</h3>
        <ul><li>Support for new hypercalls change in Xen changeset 86d26e6ec89b</li><li>bug fixes: virParseUUID() was wrong, networking for paravirt guests
      (Daniel Berrange), virsh on non-existent domains (Daniel Berrange),
      string cast bug when handling error in python (Pete Vetere), HTTP
      500 xend error code handling (Pete Vetere and Daniel Berrange)</li><li>improvements: test suite for SEXPR &lt;-&gt; XML format conversions (Daniel
      Berrange), virsh output regression suite (Daniel Berrange), new environ
      variable VIRSH_DEFAULT_CONNECT_URI for the default URI when connecting
      (Daniel Berrange), graphical console support for paravirt guests
      (Jeremy Katz), parsing of simple Xen config files (with Daniel Berrange),
      early work on defined (not running) domains (Daniel Berrange),
      virsh output improvement (Daniel Berrange</li></ul>
        <h3>0.1.4: Aug 16 2006</h3>
        <ul><li>bug fixes: spec file fix (Mark McLoughlin), error report problem (with
    Hugh Brock), long integer in Python bindings (with Daniel Berrange), XML
    generation bug for CDRom (Daniel Berrange), bug whem using number() XPath
    function (Mark McLoughlin), fix python detection code, remove duplicate
    initialization errors (Daniel Berrange)</li><li>improvements: UUID in XML description (Peter Vetere), proxy code
    cleanup, virtual CPU and affinity support + virsh support (Michel
    Ponceau, Philippe Berthault, Daniel Berrange), port and tty information
    for console in XML (Daniel Berrange), added XML dump to driver and proxy
    support (Daniel Berrange), extension of boot options with support for
    floppy and cdrom (Daniel Berrange), features block in XML to report/ask
    PAE, ACPI, APIC for HVM domains (Daniel Berrange), fail saide-effect
    operations when using read-only connection, large improvements to test
    driver (Daniel Berrange) </li><li>documentation: spelling (Daniel Berrange), test driver examples.</li></ul>
        <h3>0.1.3: Jul 11 2006</h3>
        <ul><li>bugfixes: build as non-root, fix xend access when root, handling of
    empty XML elements (Mark McLoughlin), XML serialization and parsing fixes
    (Mark McLoughlin), allow to create domains without disk (Mark
  McLoughlin),</li><li>improvement: xenDaemonLookupByID from O(n^2) to O(n) (Daniel Berrange),
    support for fully virtualized guest (Jim Fehlig, DV, Mark McLoughlin)</li><li>documentation: augmented to cover hvm domains</li></ul>
        <h3>0.1.2: Jul 3 2006</h3>
        <ul><li>headers include paths fixup</li><li>proxy mechanism for unprivileged read-only access by httpu</li></ul>
        <h3>0.1.1: Jun 21 2006</h3>
        <ul><li>building fixes: ncurses fallback (Jim Fehlig), VPATH builds (Daniel P.
    Berrange)</li><li>driver cleanups: new entry points, cleanup of libvirt.c (with Daniel P.
    Berrange)</li><li>Cope with API change introduced in Xen changeset 10277</li><li>new test driver for regression checks (Daniel P. Berrange)</li><li>improvements: added UUID to XML serialization, buffer usage (Karel
    Zak), --connect argument to virsh (Daniel P. Berrange),</li><li>bug fixes: uninitialized memory access in error reporting, S-Expr
    parsing (Jim Fehlig, Jeremy Katz), virConnectOpen bug, remove a TODO in
    xs_internal.c</li><li>documentation: Python examples (David Lutterkort), new Perl binding
    URL, man page update (Karel Zak)</li></ul>
        <h3>0.1.0: Apr 10 2006</h3>
        <ul><li>building fixes: --with-xen-distdir option (Ronald Aigner), out of tree
    build and pkginfo cflag fix (Daniel Berrange)</li><li>enhancement and fixes of the XML description format (David Lutterkort
    and Jim Fehlig)</li><li>new APIs: for Node information and Reboot</li><li>internal code cleanup: refactoring internals into a driver model, more
    error handling, structure sharing, thread safety and ref counting</li><li>bug fixes: error message (Jim Meyering), error allocation in virsh (Jim
    Meyering), virDomainLookupByID (Jim Fehlig),</li><li>documentation: updates on architecture, and format, typo fix (Jim
    Meyering)</li><li>bindings: exception handling in examples (Jim Meyering), perl ones out
    of tree (Daniel Berrange)</li><li>virsh: more options, create, nodeinfo (Karel Zak), renaming of some
    options (Karel Zak), use stderr only for errors (Karel Zak), man page
    (Andrew Puch)</li></ul>
        <h3>0.0.6: Feb 28 2006</h3>
        <ul><li>add UUID lookup and extract API</li><li>add error handling APIs both synchronous and asynchronous</li><li>added minimal hook for error handling at the python level, improved the
    python bindings</li><li>augment the documentation and tests to cover error handling</li></ul>
        <h3>0.0.5: Feb 23 2006</h3>
        <ul><li>Added XML description parsing, dependance to libxml2, implemented the
    creation API virDomainCreateLinux()</li><li>new APIs to lookup and name domain by UUID</li><li>fixed the XML dump when using the Xend access</li><li>Fixed a few more problem related to the name change</li><li>Adding regression tests in python and examples in C</li><li>web site improvement, extended the documentation to cover the XML
    format and Python API</li><li>Added devhelp help for Gnome/Gtk programmers</li></ul>
        <h3>0.0.4: Feb 10 2006</h3>
        <ul><li>Fix various bugs introduced in the name change</li></ul>
        <h3>0.0.3: Feb 9 2006</h3>
        <ul><li>Switch name from 'libvir' to libvirt</li><li>Starting infrastructure to add code examples</li><li>Update of python bindings for completeness</li></ul>
        <h3>0.0.2: Jan 29 2006</h3>
        <ul><li>Update of the documentation, web site redesign (Diana Fong)</li><li>integration of HTTP xend RPC based on libxend by Anthony Liquori for
    most operations</li><li>Adding Save and Restore APIs</li><li>extended the virsh command line tool (Karel Zak)</li><li>remove xenstore transactions (Anthony Liguori)</li><li>fix the Python bindings bug when domain and connections where freed</li></ul>
        <h3>0.0.1: Dec 19 2005</h3>
        <ul><li>First release</li><li>Basic management of existing Xen domains</li><li>Minimal autogenerated Python bindings</li></ul>
      </div>
    </div>
    <div id="footer">
      <p id="sponsor">
	    Sponsored by:<br /><a href="http://et.redhat.com/"><img src="et.png" alt="Project sponsored by Red Hat Emerging Technology" /></a></p>
    </div>
  </body>
</html>