- (*argv)[optind - 1] = (*argv)[0];
- (*argc) -= (optind - 1);
- (*argv) += (optind - 1);
+
+ /* Pass remaining arguments to user program */
+ params->argc = argc - (optind - 1);
+ params->argv = argv + (optind - 1);
+
+ /* Reset program name */
+ params->argv[0] = argv[0];
+
+ /* Reset (global) optind for potential use by user program */