safechown.c revision 2
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf/* Solaris Kerberos: this file is unique to Solaris. */
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf * safechown changes the owner ship of src to uid. If the mode parameter
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf * does not equal -1 changes the mode of src as well.
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf * return -1 on failure and 0 on success.
ab0d082f1ff5e05e86ea99a5672d8c466563280dMark Logansafechown(const char *src, uid_t uid, gid_t gid, int mode)
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf return (-1);
2038334ab26baaa43c9083f35def041511c3cc1fUnknown return (-1);
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf /* Make sure non directories are not hard links */
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf return (-1);
f76ee27a7c2e4dbe22aec6ce187c04e980f90349pawelw return (-1);
7a1efdfee8cbdecea34d3d866bbfb46e39b06e0apawelw /* Make sure file is not a symlink */
3852f6739b148db36d43cd6e758a0855fd49f24cPawel Wojcik if (fdbuf.st_ino != lbuf.st_ino || fdbuf.st_dev != lbuf.st_dev ||
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf return (-1);
8aa6aadbbfba50077655c6a46a5e269c880e4ab4Xiao-Yu Zhang /* we should probably get the primary group id for uid here */
63aa537723d4883425b44d96b6316b7ad14053fcAlan Perry return (-1);
ab0d082f1ff5e05e86ea99a5672d8c466563280dMark Logan return (-1);
ae8faf9c0cd738ab78a672de5bf7e7f7d004ebb2ls return (0);
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf fprintf(stderr, "Usage %s [-u uid] [-m mode] source\n", prg);
66f9d5cb3cc0652e2d9d1366fb950efbe4ca2f24mlf return (0);
2038334ab26baaa43c9083f35def041511c3cc1fUnknown#endif /* TEST */