source: trunk/guitools/shared/usercredmem.vrs@ 660

Last change on this file since 660 was 660, checked in by Herwig Bauernfeind, 14 years ago

GUI-Tools: EVFSGUI 2.5.x: Support WINS, store credentials

File size: 1.5 KB
Line 
1/* Provide routines to store/check/access user credentials
2 stored in a shared memory object */
3
4_ucInitObj: procedure expose ucMem
5 /* Initialize shared memory object */
6 /* Not implemented as we use only an existing object */
7 ucMem = '\SHAREMEM\INETXXX'
8return ucMem
9
10_ucChkObj: procedure expose ucMem ucPtr
11 /* Check if appropriate memory object is available */
12 Success = 0
13 getrc = RxGetNamedSharedMem('ucPtr', ucMem , 'rw')
14 if getrc = 0 then Success = 1
15return Success
16
17_ucChkUc: procedure expose ucMem ucPtr
18 /* Check whether credentials are stored in memory object */
19 rawMem = RxStorage( ucPtr , 4096 )
20 ucPos = lastpos('--user=',rawMem)
21 Success = (ucPos > 0)
22return Success
23
24_ucSetUc: procedure expose ucMem ucPtr UserCred
25 /* Set/Store credentials in memory object */
26 Success = 0
27 rawMem = RxStorage( ucPtr , 4096 )
28 ucL = length(UserCred)
29 rawMem = overlay(UserCred, rawMem, 4096-ucL)
30 rawMem = RxStorage( ucPtr , 4096, rawMem )
31 Success = 1
32return Success
33
34_ucDelUc: procedure expose ucMem ucPtr UserCred
35 /* Delete credentials from memory object */
36 rawMem = RxStorage( ucPtr , 4096 )
37 cPos = lastpos('--user=',rawMem)
38 rawMem = overlay(copies('00'x,4096-cPos), rawMem, cPos)
39 rawMem = RxStorage( ucPtr , 4096, rawMem )
40return 1
41
42_ucGetUc: procedure expose ucMem ucPtr
43 /* Read credentials from memory object */
44 rawMem = RxStorage( ucPtr , 4096 )
45 ucPos = lastpos('--user=',rawMem)
46 UserCred = strip(substr(rawMem,ucPos),,'00'x)
47return UserCred
Note: See TracBrowser for help on using the repository browser.