|
Lines 365-376
Link Here
|
| 365 |
return (0); |
365 |
return (0); |
| 366 |
error = 0; |
366 |
error = 0; |
| 367 |
do { |
367 |
do { |
|
|
368 |
char* tmp; |
| 368 |
dmodname = (char *)md->md_data; |
369 |
dmodname = (char *)md->md_data; |
| 369 |
if (mod_findmodule(NULL, dmodname) == NULL) { |
370 |
tmp = malloc(strlen(dmodname) + 3 + 1); |
|
|
371 |
strcpy(tmp, dmodname); |
| 372 |
strcat(tmp, ".ko"); |
| 373 |
if (mod_findmodule(tmp, NULL) == NULL) { |
| 374 |
free(tmp); |
| 370 |
printf("loading required module '%s'\n", dmodname); |
375 |
printf("loading required module '%s'\n", dmodname); |
| 371 |
error = mod_load(dmodname, 0, NULL); |
376 |
error = mod_load(dmodname, 0, NULL); |
| 372 |
if (error && error != EEXIST) |
377 |
if (error && error != EEXIST) |
| 373 |
break; |
378 |
break; |
|
|
379 |
error = 0; |
| 380 |
} else { |
| 381 |
free(tmp); |
| 374 |
} |
382 |
} |
| 375 |
md = metadata_next(md, MODINFOMD_DEPLIST); |
383 |
md = metadata_next(md, MODINFOMD_DEPLIST); |
| 376 |
} while (md); |
384 |
} while (md); |