Deleted Added
full compact
devicename.c (146697) devicename.c (163897)
1/*-
2 * Copyright (c) 1998 Michael Smith <msmith@freebsd.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 1998 Michael Smith <msmith@freebsd.org>
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 11 unchanged lines hidden (view full) ---

20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26
27#include <sys/cdefs.h>
28__FBSDID("$FreeBSD: head/sys/boot/i386/libi386/devicename.c 146697 2005-05-27 19:28:04Z jhb $");
28__FBSDID("$FreeBSD: head/sys/boot/i386/libi386/devicename.c 163897 2006-11-02 01:23:18Z marcel $");
29
30#include <stand.h>
31#include <string.h>
32#include <sys/disklabel.h>
33#include "bootstrap.h"
34#include "libi386.h"
35
36static int i386_parsedev(struct i386_devdesc **dev, const char *devspec, const char **path);

--- 100 unchanged lines hidden (view full) ---

137 cp++;
138 }
139 }
140 if (*cp && (*cp != ':')) {
141 err = EINVAL;
142 goto fail;
143 }
144
29
30#include <stand.h>
31#include <string.h>
32#include <sys/disklabel.h>
33#include "bootstrap.h"
34#include "libi386.h"
35
36static int i386_parsedev(struct i386_devdesc **dev, const char *devspec, const char **path);

--- 100 unchanged lines hidden (view full) ---

137 cp++;
138 }
139 }
140 if (*cp && (*cp != ':')) {
141 err = EINVAL;
142 goto fail;
143 }
144
145 idev->d_kind.biosdisk.unit = unit;
145 idev->d_unit = unit;
146 idev->d_kind.biosdisk.slice = slice;
147 idev->d_kind.biosdisk.partition = partition;
148 if (path != NULL)
149 *path = (*cp == 0) ? cp : cp + 1;
150 break;
151
152 case DEVT_CD:
153 case DEVT_NET:

--- 6 unchanged lines hidden (view full) ---

160 goto fail;
161 }
162 }
163 if (*cp && (*cp != ':')) {
164 err = EINVAL;
165 goto fail;
166 }
167
146 idev->d_kind.biosdisk.slice = slice;
147 idev->d_kind.biosdisk.partition = partition;
148 if (path != NULL)
149 *path = (*cp == 0) ? cp : cp + 1;
150 break;
151
152 case DEVT_CD:
153 case DEVT_NET:

--- 6 unchanged lines hidden (view full) ---

160 goto fail;
161 }
162 }
163 if (*cp && (*cp != ':')) {
164 err = EINVAL;
165 goto fail;
166 }
167
168 if (dv->dv_type == DEVT_NET)
169 idev->d_kind.netif.unit = unit;
170 else
171 idev->d_kind.bioscd.unit = unit;
168 idev->d_unit = unit;
172 if (path != NULL)
173 *path = (*cp == 0) ? cp : cp + 1;
174 break;
175
176 default:
177 err = EINVAL;
178 goto fail;
179 }

--- 20 unchanged lines hidden (view full) ---

200 char *cp;
201
202 switch(dev->d_type) {
203 case DEVT_NONE:
204 strcpy(buf, "(no device)");
205 break;
206
207 case DEVT_CD:
169 if (path != NULL)
170 *path = (*cp == 0) ? cp : cp + 1;
171 break;
172
173 default:
174 err = EINVAL;
175 goto fail;
176 }

--- 20 unchanged lines hidden (view full) ---

197 char *cp;
198
199 switch(dev->d_type) {
200 case DEVT_NONE:
201 strcpy(buf, "(no device)");
202 break;
203
204 case DEVT_CD:
208 sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_kind.bioscd.unit);
205 sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit);
209 break;
210
211 case DEVT_DISK:
212 cp = buf;
206 break;
207
208 case DEVT_DISK:
209 cp = buf;
213 cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_kind.biosdisk.unit);
210 cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_unit);
214 if (dev->d_kind.biosdisk.slice > 0)
215 cp += sprintf(cp, "s%d", dev->d_kind.biosdisk.slice);
216 if (dev->d_kind.biosdisk.partition >= 0)
217 cp += sprintf(cp, "%c", dev->d_kind.biosdisk.partition + 'a');
218 strcat(cp, ":");
219 break;
220
221 case DEVT_NET:
211 if (dev->d_kind.biosdisk.slice > 0)
212 cp += sprintf(cp, "s%d", dev->d_kind.biosdisk.slice);
213 if (dev->d_kind.biosdisk.partition >= 0)
214 cp += sprintf(cp, "%c", dev->d_kind.biosdisk.partition + 'a');
215 strcat(cp, ":");
216 break;
217
218 case DEVT_NET:
222 sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_kind.netif.unit);
219 sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit);
223 break;
224 }
225 return(buf);
226}
227
228
229/*
230 * Set currdev to suit the value being supplied in (value)

--- 14 unchanged lines hidden ---
220 break;
221 }
222 return(buf);
223}
224
225
226/*
227 * Set currdev to suit the value being supplied in (value)

--- 14 unchanged lines hidden ---