X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=extras%2Fscsi_id%2Fscsi_id.h;h=f6c269fc5912df7da2b7177101a565518f9d3e29;hb=1e47c28bc575cfed063be7df6bbb822422e2db75;hp=680c39d9ef8cfc90900779339bc209aa770e65e8;hpb=78d9ecfd4f1e37f7453e55e71f2909a58706ae10;p=elogind.git diff --git a/extras/scsi_id/scsi_id.h b/extras/scsi_id/scsi_id.h index 680c39d9e..f6c269fc5 100644 --- a/extras/scsi_id/scsi_id.h +++ b/extras/scsi_id/scsi_id.h @@ -1,13 +1,18 @@ /* - * scsi_id.h + * Copyright (C) IBM Corp. 2003 * - * General defines and such for scsi_id + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. * - * Copyright (C) IBM Corp. 2003 + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation version 2 of the License. + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . */ #define MAX_PATH_LEN 512 @@ -37,12 +42,25 @@ struct scsi_id_device { char type[33]; char kernel[64]; char serial[MAX_SERIAL_LEN]; + char serial_short[MAX_SERIAL_LEN]; int use_sg; + + /* Always from page 0x80 e.g. 'B3G1P8500RWT' - may not be unique */ + char unit_serial_number[MAX_SERIAL_LEN]; + + /* NULs if not set - otherwise hex encoding using lower-case e.g. '50014ee0016eb572' */ + char wwn[17]; + + /* NULs if not set - otherwise hex encoding using lower-case e.g. '0xe00000d80000' */ + char wwn_vendor_extension[17]; + + /* NULs if not set - otherwise decimal number */ + char tgpt_group[8]; }; -extern int scsi_std_inquiry(struct scsi_id_device *dev_scsi, const char *devname); -extern int scsi_get_serial (struct scsi_id_device *dev_scsi, const char *devname, - int page_code, char *serial_short, int len); +extern int scsi_std_inquiry(struct udev *udev, struct scsi_id_device *dev_scsi, const char *devname); +extern int scsi_get_serial (struct udev *udev, struct scsi_id_device *dev_scsi, const char *devname, + int page_code, int len); /* * Page code values.