- Fix a potential buffer overflow in RChangeServiceConfigA

- Make sure that returned buffers are zero terminated in RQueryServiceConfigA

svn path=/trunk/; revision=39424
This commit is contained in:
Johannes Anderwald 2009-02-05 22:23:43 +00:00
parent 693252f753
commit f1011d8bb5

View file

@ -2984,7 +2984,7 @@ DWORD RChangeServiceConfigA(
lpDisplayName,
-1,
lpDisplayNameW,
wcslen(lpDisplayNameW) + 1);
strlen(lpDisplayName) + 1);
RegSetValueExW(hServiceKey,
L"DisplayName",
@ -3620,7 +3620,7 @@ DWORD RQueryServiceConfigA(
lpImagePath,
-1,
lpStr,
wcslen(lpImagePath),
wcslen(lpImagePath)+1,
0,
0);
}
@ -3639,7 +3639,7 @@ DWORD RQueryServiceConfigA(
lpService->lpGroup->lpGroupName,
-1,
lpStr,
wcslen(lpService->lpGroup->lpGroupName),
wcslen(lpService->lpGroup->lpGroupName)+1,
0,
0);
}
@ -3664,7 +3664,7 @@ DWORD RQueryServiceConfigA(
lpServiceStartName,
-1,
lpStr,
wcslen(lpServiceStartName),
wcslen(lpServiceStartName)+1,
0,
0);
}
@ -3683,7 +3683,7 @@ DWORD RQueryServiceConfigA(
lpService->lpDisplayName,
-1,
lpStr,
wcslen(lpService->lpDisplayName),
wcslen(lpService->lpDisplayName)+1,
0,
0);
}