The following is a diff that would solve smbd panic on HPUX. It is an issue on platforms such as HPUX when buf begins in odd number of bytes. Other dispatcher registered functions are fine since most of them memcpy or fstrcpy data out of "buf" to a local buffer. 1204c1204 < struct print_queue_update_context *ctx; --- > struct print_queue_update_context ctx; 1211,1214c1211,1214 < ctx = (struct print_queue_update_context*)buf; < print_queue_update_internal(ctx->sharename, < get_printer_fns_from_type(ctx->printing_type), < ctx->lpqcommand ); --- > strncpy(&ctx, buf, len); > print_queue_update_internal(ctx.sharename, > get_printer_fns_from_type(ctx.printing_type), > ctx.lpqcommand );
Applied, thanks. Jeremy.
sorry for the same, cleaning up the database to prevent unecessary reopens of bugs.