The XTSOLgetResAttributes() routine returns security-related attributes for a window. You supply the following:
Flag to indicate that the object for which you want security attributes is a window
XtsolResAttributes structure to receive the returned attributes
Because the client is obtaining the security attributes for a window that the client created, no privileges are required.
Note that the example programs in this book focus on the APIs being shown and do not perform error checking. Your applications should perform the appropriate error checking.
/* Retrieve underlying window and display IDs with Xlib calls */ window = XtWindow(topLevel); display = XtDisplay(topLevel); /* Retrieve window security attributes */ retval = XTSOLgetResAttributes(display, window, IsWindow, &winattrs); /* Translate labels to strings */ retval = label_to_str(&winattrs.sl, &plabel, M_LABEL, LONG_NAMES); /* Print security attribute information */ printf(“Workstation Owner ID = %d\nUser ID = %d\nLabel = %s\n”, winattrs.ouid, winattrs.uid, string1);
The printf statement prints the following:
Workstation Owner ID = 29378 User ID = 29378 Label = CONFIDENTIAL